shell 通过OWASP ZAP docker进行Selenium脚本执行扫描

tzdcorbm  于 2023-08-07  发布在  Shell
关注(0)|答案(2)|浏览(128)

我知道一种方法是使用“https://dzone.com/articles/automate-zap-security-tests-with-selenium-webdrive-1”
但是,是否有直接的命令可以通过OWASP ZAP扫描我们的selenium应用程序执行?.
1.在后台运行代理OWASP ZAP。
1.执行我们独立的selenium脚本来执行。(特别是包括登录)。
1.如果可能的话,收集报告。
我认为这应该是可能的,然后一个完整的项目。很少有网站是开放的或无需登录。

b5lpy0ml

b5lpy0ml1#

你可以使用Docker。
1.安装或拉取Docker镜像-

" docker pull owasp/zap2docker-stable "

字符串
1.您可以使用以下命令在无头模式下启动ZAP-

" docker run -u zap -p 8080:8080 -i owasp/zap2docker-stable zap.sh -daemon -host 0.0.0.0 -port 8080 -config api.addrs.addr.name=.* -config api.addrs.addr.regex=true -config api.disablekey=true "


1.独立运行Selenium测试,但在Selenium测试中,配置代理以访问端口8080(或您正在使用的任何端口)。
1.以下命令将在容器中生成报告-

" docker exec $container_Id zap-cli report -o vulnerability.html -f HTML "


你可以在任何地方复制这份报告。然后停止容器并将其取出。

vsaztqbk

vsaztqbk2#

@roop karu答案https://stackoverflow.com/a/63588382/1266040在步骤3和4之前正常
所以在安装Docker、下载镜像并运行ZAP之后:

docker pull owasp/zap2docker-stable

docker run -u zap -p 8080:8080 -i owasp/zap2docker-stable zap.sh -daemon -host 0.0.0.0 -port 8080 -config api.addrs.addr.name=.* -config api.addrs.addr.regex=true -config api.disablekey=true

字符串

代理

然后可以将代理添加到Selenium或Playwright测试中。有时你需要在本地IP上运行测试过的应用程序。地址如192.168.0.125(您会发现它运行ifconfigipconfig for Windows)以允许代理工作。

报告

这可以通过前面的ZAP GUI报告部分来实现。
http://127.0.0.1:8080/UI/reports/
您可以检查模板并选择所需的模板。
http://127.0.0.1:8080/HTML/reports/view/templates/
最后从UI生成报告或仅使用此地址(报告的名称为my-report)

http://127.0.0.1:8080/JSON/reports/action/generate/?title=My%2C+Report%2CName%29&template=traditional-html&theme=&description=&contexts=&sites=&sections=&includedConfidences=&includedRisks=&reportFileName=my-report&reportFileNamePattern=&reportDir=&display=


通过运行以下命令将此文件复制到本地计算机

docker cp your_docker_image_number:/home/zap/my-report.html ./my-report.html


打开报告文件并享受:D

相关问题