1. 介绍
交互式应用安全测试(Interactive application security testing IAST)是一个在应用和API中自动化识别和诊断软件漏洞的技术。如果从名字的缩写来看,插桩(Instrumented)式应用安全测试或许是一个更好的说法。IAST不是一个扫描器,重要的事说两遍,它不是一个扫描器,IAST持续地从内部监控你应用中的漏洞,在整个开发生命周期中,IAST通过你在开发和测试中使用的工具,实时地提供报警。
IAST最显著的特性是它使用插桩来收集安全信息,直接从运行中的代码发现问题,不是源代码扫描(SAST),也不是HTTP 扫描(DAST)。但那并不意味着你要等到产品上线时才使用它,恰恰相反,你可在IDE中,当开始编写和测试第一行代码时,就使用IAST。
自有代码安全测试:IAST能够自动化地分析应用和API 中的自有代码,找出以前没有发现的(零 day)漏洞,能够识别很宽范围的漏洞,包括并不限于OWASP Top 10,还有其他更复杂的漏洞。
开源软件安全测试:IAST也能用来测试开源库和框架的安全性,一般有两个维度。首先,IAST能识别困扰开源软件的已知漏洞(如CVE发布),其次,IAST能识别开源软件中以前未知的(潜在)漏洞。
除了洞态,还有百度开发的openrasp,docker拉取镜像,在安装pip依赖的时候报错,手动部署后,安装agent稍微有点麻烦,支持的框架也少,不能配合IDA进行检测(pass)
github地址:
https://github.com/HXSecurity/DongTai
环境
云主机 docker docker-compose IDEA
下载源码
wget https://github.com/HXSecurity/DongTai/archive/refs/tags/v1.4.1.tar.gz
下载docker
// centos yum install docker -y // ubuntu debian apt install docker -y
下载docker-compose
wget https://github.com/docker/compose/releases/download/v2.6.1/docker-compose-linux-x86_64
给docker-compose添加执行权限,然后改名放到/bin/目录下 /usr/bin也可以
解压源码
运行build文件 自动下载 等待十多分钟就可以了
./build_with_docker_compose.sh
选择开放端口,默认80
默认口令是 admin/admin
初始化后,就可以配置agent了。
直接点击jar下载
因为我的项目是IDEA搭建的 所以我直接在IDEA中参数配置添加agent。
-javaagent:/xx/dongtai-agent.jar
启动IDEA后,日志输出记录,web端也会收到流量和信息。
然后进入项目,访问页面,让平台增加流量,对数据包进行监测
进到项目中,会检测项目中存在的漏洞,和组件漏洞
随便找一个,看看数据包
测流量半个多小时了,啥都没监测出来,一堆xss呢,sql注入呢,我真的是服了这个老六,难不成我版本低就不行?
这个地方存在sql,它愣是没检测到,我输入payload 也没有
看了下规则,sql注入的 基于java.sql.*传参比较多,而项目中使用了mybatis,就不会有java.sql.*的方式执行sql,所以就没检测到
手工挖掘,然后sqlmap执行