DAST+SAST+IAST项目介绍
DAST:
动态应用程序安全测试(Dynamic Application Security Testing)技术在测试或运行阶段分析应用程序的动态运行状态。它模拟黑客行为对应用程序进行动态攻击,分析应用程序的反应,从而确定该Web应用是否易受攻击。
SAST:
静态应用程序安全测试(Static Application Security Testing)技术通常在编码阶段分析应用程序的源代码或二进制文件的语法、结构、过程、接口等来发现程序代码存在的安全漏洞。
IAST:
交互式应用程序安全测试(Interactive Application Security Testing)是2012年Gartner公司提出的一种新的应用程序安全测试方案,通过代理、VPN或者在服务端部署Agent程序,收集、监控Web应用程序运行时函数执行、数据传输,并与扫描器端进行实时交互,高效、准确的识别安全缺陷及漏洞,同时可准确确定漏洞所在的代码文件、行数、函数及参数。IAST相当于是DAST和SAST结合的一种互相关联运行时安全检测技术。
各类语言审计工具
PHP:Seay RIPS CheckMarx Fortify VCG Kunlun-M
NET:VCG Fortify CheckMarx
Java:Fortify CheckMarx VCG
Python:Bandit Fortify CheckMarx
JS:Kunlun-M NodeJsScan Fortify CheckMarx
Go:Gosec CheckMarx
演示:SAST各类语言审计工具详细介绍
工具:Seay源代码审计系统(还可以当phpstorm查看代码)
语言:php
下载:https://github.com/f1tz/cnseay
使用:启动工具,选择 新建项目 导入源码——点击 自动审计 就会自动将可能存在漏洞的代码点列出来。
工具:KunLun-M (推荐使用-非常香)
介绍:KunLun-M是一个完全开源的静态白盒扫描工具,支持PHP、JavaScript的语义扫描,基础安全、组件安全扫描,Chrome Ext\Solidity的基础扫描。
语言:PHP,JS
下载:https://github.com/LoRexxar/Kunlun-M
安装:
1、安装依赖库:pip install -r requirements.txt
2、配置文件启用(修改文件后缀):Kunlun_M/settings.py.bak ——> Kunlun_M/settings.py
3、初始化数据库:python kunlun.py init initialize
4、加载规则数据库:python kunlun.py config load
命令行模式使用(python3):python kunlun.py scan -t 源码路径
扫描完成:结果保存在工具根目录result目录下
WEB模式使用:python kunlun.py web -p 9999
访问:localhost:9999 进入web模式。
工具:VCG (老牌工具,一般般)
语言:PHP,NET,JAVA
下载:https://github.com/nccgroup/VCG
使用:运行exe程序,第一步必须点击Settings选择源码语言。第一次启动程序会弹出一个框,双击进入点击ok即可。
第二步,点击File——Net Target Directory 选择源码
第三步,点击scan选择扫描模式,开始扫描
第四步,扫描完成会弹出如下选项,双击进入选择第一个选项,点击ok即可查看审计详情。
审计详情:
第五步,点击Summary Table 即可查看漏洞产生的代码位置
工具:Bandit
语言:Python
下载:https://github.com/PyCQA/bandit
安装:pip install bandit
工具根目录执行:
linux:
安装后会在当前Python目录下的bin中生成工具运行程序
使用:bandit.exe -r 需要审计的源码目录
windows:
安装后会在当前Python目录下的script中生成工具运行程序
使用:bandit.exe -r 需要审计的源码目录
python/scripts目录进入命令行执行:扫描结果展示在命令行——>高危:红色 中危:黄色 低危:蓝色
使用 -o a.txt(文件名) -f txt(文件类型) 这两个参数即可将扫描结果保存到python/scripts目录