【安全测试】OWASP ZAP 安全扫描
2022-04-02 11:07 码上起舞 阅读(1895) 评论(0) 编辑 收藏 举报一、目的
本文主要记录在OWASP ZAP安装及使用过程中的步骤及遇到的问题。
二、owsap zap介绍
OWASP主要用于web应用的安全扫描,有windows版桌面端,也可以有linux的cmd命令行模式,还可以有API接口,供python,java等调用二次开发。
主要拥有以下重要功能:
- 本地代理
- 主动扫描
- 被动扫描
- Fuzzy
- 暴力破解
三、owasp的下载安装
3.1 下载地址
安装包下载地址:https://www.zaproxy.org/download/
选择windows或者linux包,点击download,即可。
我下载的是这两个。
3.2 windows安装
windowns的安装包下载下来后,是exe的可执行程序,点击安装即可。
3.3 linux安装
linux 包下载下来后是ZAP_2.11.1_Linux.tar.gz,拷贝到linux服务器指定目录下,解压后,进入zap_2.11.1文件夹,可以看到有zap.sh脚本;
执行sh zap.sh 脚本即可启动。会默认启动GUI模式。
如果linux下没有安装桌面模式,可以执行sh zap.sh -cmd,采用cmd模式启动zap。
默认启动8080端口。
sh zap.sh -cmd -h 查看帮助文档。
四、owsap zap 在linux上的应用
4.1 目标:
启动端口改为8090
快速扫描url
采用有效的cookie进行替换,达到登录扫描效果
将所有文件指定到文件夹中
生成报告
scan_url=http://192.168.x.x:9999/abc
cookie="MYSESSION=abcdedfsasdfasdfsdf"
zap_dir=/root/ZAP/ZAP_2.11.1
build_dir=/root/mydir
sh $zap_dir/zap.sh -cmd\
-port 8090 \
-quickurl $scan_url \
-quickout $build_dir/zap_report.html \
-dir $build_dir \
-config replacer.full_list\(0\).replacement=$cookie \
-quickprogress
说明:
-quickout $build_dir/zap_report.html :生成zap_report.html的报告,也可以生成xml报告
-config replacer.full_list\(0\).replacement=$cookie :替换config.xml中cookie的值,有两种方式配置config,参见4.2 config.xml 配置
-quickprogress 显示扫描进度
4.2 config.xml 配置
在windows的ZAP GUI修改替换配置,可以直接在工具-选项-替换-Add中配置对应的key-value,即可。在工作目录C:\Users\admin\OWASP ZAP\config.xml中会自动更新最新的配置。
第一种修改配置:
直接修改zap.sh同级目录中的xml文件夹中的config.xml,将replacer的配置手动写入到config.xml中;
具体的内容及格式,可以先在GUI模式下修改好后,再查看GUI模式下的config.xml文件,再 将对应的配置拷贝到linux下的config.xml文件中。
第二种配置:
可以采用-config 的参数动态写入动态修改里面的值。
参考链接https://www.zaproxy.org/faq/how-do-you-find-out-what-key-to-use-to-set-a-config-value-on-the-command-line/
-config replacer.full_list\(0\).description=替换cookie \
-config replacer.full_list\(0\).enabled=true \
-config replacer.full_list\(0\).matchtype=REQ_HEADER \
-config replacer.full_list\(0\).matchstr=Cookie \
-config replacer.full_list\(0\).regex=false \
-config replacer.full_list\(0\).replacement="MYSESSION=abcdedfsasdfasdfsdf" \
-config replacer.full_list\(1\).description=其他替换 \
-config replacer.full_list\(1\).enabled=true \
-config replacer.full_list\(1\).matchtype=REQ_HEADER \
-config replacer.full_list\(1\).matchstr=AnotherHeader \
-config replacer.full_list\(1\).regex=false \
-config replacer.full_list\(1\).replacement=BLAHBLAH
4.3 查看报告
将quickout生成的html文件,用浏览器打开,即可查看报告
五.Troubshooting
5.1 windows下ZAP无法启动google浏览器
原因:google浏览器版本和ZAP安装的浏览器驱动版本不匹配导致
解决方法:
可以更新google浏览器版本,也可以更新浏览器驱动版本
我们采用更新浏览器驱动版本来解决问题。
1.查看浏览器版本号=65.0
2.查找改版本对应的驱动2.38
3.下载驱动,下载地址http://chromedriver.storage.googleapis.com/index.html
4.将驱动放到ZAP的selenium文件夹中。这个目录可以在ZAP的工具-选项-配置-selenium中可以查到。一般是C:\Users\admin\OWASP ZAP\webdriver\windows\64
5.重启ZAP即可
-----------------------------
越努力越幸运
积极主动高效
-----------------------------