目录
1 Fortify
1.1 Fortify安装教程
解压安装包
进入bin目录,点击 auditworkbench.cmd
选择No
1.2 Fortify修改为中文
打开bin目录下的scapostinstall.cmd
输入2,1,1,最后执行zh_CN按下回车
点击options
继续点击options,点击Update
2 漏洞扫描PHP
2.1 PHP系列漏洞扫描
系统:Windows10
靶场:DVMA
代码审计工具:fortify
打开phpstudy,启动Apache和Msql,打开DVMA主页
打开fortify使用advanced Scan(第一个是JAVA项目,第二个为自动检测代码)
选择DVMA代码,并选择输出项目设置为自己熟悉的路径与文件名。
点击next
点击back
点击scan
出现如下界面
2.2 SQL注入
左上方有各种颜色的小方块,代表着漏洞的危害程度,从高到低,可以看出各类漏洞
Sql注入从getid开始,传值给$id。在get id处使用了mysqli_query,造成了sql注入。
构造payload,输入1’ or’1’=’1
尝试万能密码:1’ and ‘1’=’5,出来不了,因为1不等于5,说明存在sql注入漏洞。
然后在order by 1和2 可以看到不报错
查看数据库和用户
2.3 命令注入
分析命令执行流程,从$request出发shellexec
detail中介绍了问题出处
low.php 的第 10 行会利用由不可信赖的数据构建的命令来调用 shell_exec()。这种调用会导致程序以攻击者的名义执行恶意命令。
命令注入
&同时执行,执行右边、&&先左后右(左边成功执行右边)、||先左后右(左边失败执行右边)、|只执行右边、;第一个无法执行才能执行右边
点击导出报告 选择tools-reports-Generate BIRT report...
查看报告