最近准备入代码审计的坑,拿Metinfo来练练手,先找了下以前的版本整理下思路。
看了下大神的文章,代码审计的方法总体上分为两种:
1. 跟踪用户的输入数据,判断数据进入的每一个代码逻辑是否有可利用的点,此处的代码逻辑可以是一个函数,或者是条小小的条件判断语句。
2. 根据不同编程语言的特性,及其历史上经常产生漏洞的一些函数,功能,把这些点找出来,在分析函数调用时的参数,如果参数是用户可控,就很有可能引发安全漏洞
针对Metinfo 5.3的该漏洞利用后种方法进行,现在本地搭上Metinfo 5.3.1,利用Seay大神的代码审计工具自动审计下,发现大约在60行发现存在漏洞的函数
具体函数如下: