网站结构
浏览源码文件夹了解程序大致目录
入口文件
index.php,admin.php文件一般是整个程序的入口
配置文件
一般类似config.php等文件。保存一些数据库相关的信息以及程序。先看数据库编码,如果是GBK可能存在宽字节注入,如果变量值用双引号则可能从在双引号解析代码执行问题
过滤功能
通过详读公共函数文件和安全过滤文件。清晰掌握用户输入的数据,哪些被过滤,哪些无过滤,在哪里过滤,如果过滤,以及能否绕过过滤的数据,过滤方式是替换还是正则,有没有GPC?以及有没有使用addslasher()函数处理 此函数是用来再双引号前加\的
运行之前<?php
$str = addslashes('Shanghai is the "biggest" city in China.');
echo($str);
?>
运行后是
Shanghai is the \"biggest\" city in China.
重要文件夹
admin 后台配置
sys 公共文件
user 用户操作
install 安装
审计方法
通读全文法:全面的审计方法,了解整个应用的业务逻辑才能挖掘到有价值的漏洞。
把握大局============》根据入口文件进入各个模块审计
敏感函数参数回溯法:这个方法高效且常用,因为大多数漏洞是因为函数使用不当导致的。我们只要
找到这些使用不恰当的函数就可以挖掘到我们想要的漏洞。(Seay源代码审计系统神器)尝试控制可控的参数变量
定向功能分析法:根据程序业务逻辑来审计。
常见的漏洞:
初始安装
站点信息泄露
文件上传 管理
登录认证 权限管理
数据库备份恢复
找回密码
验证码
套路方法
把握大局
功能定向
敏感函数,参数回溯