更新时间:2023-03-02
一、功能介绍
IAST交互式应用安全测试(Interactive application security testing,IAST)技术是一种实时动态交互的漏洞检测技术,通过在服务端部署agent程序,收集、监控Web应用程序运行时函数执行、数据传输,并与扫描器端进行实时交互,高效、准确的识别安全缺陷及漏洞。
二、详细配置说明
1. Flask配置步骤
1.1 下载探针
根据应用 安全配置 提供的两种方式下载agent。
1.2安装探针
pip3 install dasp-agent.tar.gz
注意:如果有装过该包可以先执行
pip3 uninstall dongtai-agent-python
1.3 修改项目的入口文件(如 py), 增加如下内容
app = Flask(__name__)
from dongtai_agent_python.middlewares.flask_middleware import AgentMiddleware
app.wsgi_app = AgentMiddleware(app.wsgi_app, app)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run()
1.4 其它
卸载探针需要停止当前服务,恢复入口文件,删除探针文件,使用原有的启动命令。
------------------------------------------------------------------------------------------
2.Jetty配置步骤
修改启动参数
2.1下载探针
根据应用 安全配置 提供的两种方式下载agent。
2.2 修改 java 启动参数
增加 -javaagent 参数(注意将 -jar 放在命令最末尾):
java -javaagent:/path/to/dasp-agent.jar -jar start.jar
例如:
java -javaagent:dasp-agent.jar -jar ../start.jar jetty.http.port=12311 jetty.https.port=18443
2.3 其它
卸载探针需要停止当前服务,删除探针文件,使用原有的启动命令。
------------------------------------------------------------------------------------------
3.Netty配置步骤
修改启动参数
3.1下载探针
根据应用 安全配置 提供的两种方式下载agent。
3.2 修改 java 启动参数,
增加 -javaagent 参数(注意将 -jar 放在命令最末尾):
java -javaagent:/path/to/dasp-agent.jar -jar start.jar
例如:
java -javaagent:dasp-agent.jar -jar target/spring-gateway-demo-0.0.1-SNAPSHOT.jar
3.3 其它
卸载探针需要停止当前服务,删除探针文件,使用原有的启动命令。
------------------------------------------------------------------------------------------
4.Sofa配置步骤
修改启动参数
4.1下载探针
根据应用 安全配置 提供的两种方式下载agent。
4.2 修改 java 启动参数,
增加 -javaagent 参数(注意将 -jar 放在命令最末尾):
java -javaagent:/path/to/dasp-agent.jar -jar start.jar
例如:
java -javaagent:dasp-agent.jar -jar ../start.jar jetty.http.port=12311 jetty.https.port=18443
4.3 其它
卸载探针需要停止当前服务,删除探针文件,使用原有的启动命令。
------------------------------------------------------------------------------------------
5.SpringBoot配置步骤
5.1安装
- 停止 Springboot/Netty/Jetty/Sofa 服务,进入 Springboot/Netty/Jetty/Sofa 目录(如:webapp1_domain),新建文件夹 iast-tool,将下载的 dasp-jar 放到 iast-tool 目录下。
- 启动服务时,增加如下内容:
-javaagent:"<server_root>/iast-tool/dasp-agent.jar"
- 完整启动方法参考示例:
java -javaagent:"<server_root>/iast-tool/dasp-agent.jar" -jar <server_root>/webapp1.jar
如:
java -javaagent:dasp-agent.jar -jar target/helloword-0.0.1-SNAPSHOT.jar
5.2 卸载
- 停止 Springboot/Netty/Jetty/Sofa 服务,进入 Springboot/Netty/Jetty/Sofa 目录(如:webapp1_domain),删除文件夹 iast-tool 以及文件夹中的内容。
- 下次启动 Springboot/Netty/Jetty/Sofa 服务时正常启动即可。
------------------------------------------------------------------------------------------
6.Tomcat配置步骤
6.1 安装
- 停止 Tomcat,进入 Tomcat 根目录,新建文件夹 iast-tool,将下载的 dasp-jar 放到 iast-tool 目录下。
- 在 tomcat/bin/catalina.sh,if [ "$1" = "debug" ]; 前面一行添加以下内容:
if [ "$1" = "start" -o "$1" = "run" ]; then
JAVA_OPTS="-javaagent:/${CATALINA_HOME}/iast-tool/dasp-agent.jar ${JAVA_OPTS}"
fi
- 启动应用服务器。
6.2卸载
- 停止 Tomcat,进入 Tomcat 根目录,删除文件夹 iast-tool 以及文件夹中的内容。
- 在 tomcat/bin/catalina.sh,找到并删除以下内容:
if [ "$1" = "start" -o "$1" = "run" ]; then
JAVA_OPTS="-javaagent:/${CATALINA_HOME}/iast-tool/dasp-agent.jar ${JAVA_OPTS}"
fi
------------------------------------------------------------------------------------------
7.东方通配置步骤
7.1 安装
- 停止 TongWeb,进入 TongWeb 根目录,新建文件夹 iast-tool,将下载的 dasp-jar 放到 iast-tool 目录下。
- 进入 TongWeb/bin/startserver.sh,在 if [ "${ACTION}" = "start" ] ; then 后面添加如下内容:
JAVA_OPTS="-javaagent:/${TWNT_HOME}/iast-tool/dasp-agent.jar ${JAVA_OPTS}"
- 启动应用服务器。
7.2卸载
- 停止 TongWeb,进入 TongWeb 根目录,删除文件夹 iast-tool 以及文件夹中的内容。
- 进入 TongWeb/bin/startserver.sh,找到并删除以下内容:
JAVA_OPTS="-javaagent:/${TWNT_HOME}/iast-tool/dasp-agent.jar ${JAVA_OPTS}"