【发布时间】:2019-06-03 07:53:18
【问题描述】:
我设置了一个 Azure devops CI/CD 构建,它将启动一个 vm,其中 Owasp Zap 作为代理运行,并且 Owasp zap Azure devops 任务将在目标 url 上运行并将我的报告复制到 Azure 存储中。
关注这个家伙的漂亮教程:https://kasunkodagoda.com/2017/09/03/introducing-owasp-zed-attack-proxy-task-for-visual-studio-team-services/ (也是创建 Azure devops 任务的人)
一切都很好,但最近我想使用 REST Api 作为目标 url。 azure devops 中的 Owasp zap 任务没有此功能。甚至问过创建者 (https://github.com/kasunkv/owasp-zap-vsts-task/issues/30#issuecomment-452258621),他也不认为这可以通过 Azure devops 任务获得,只能通过 docker 获得。
在我的下一个任务中,我现在正试图让它在 docker 映像中运行。 (首先在 Azure devops 中,但并不顺利 https://github.com/zaproxy/zaproxy/issues/5176 ) 最后开始学习本教程 (https://zaproxy.blogspot.com/2017/06/scanning-apis-with-zap.html)
我正在尝试通过以下步骤运行 docker 映像:
--- docker pull owasp/zap2docker-weekly
--运行容器
-------命令:docker run -v ${pwd}:/zap/wrk/:rw -t owasp/zap2docker-weekly zap-api-scan.py -t https://apiurl/api.json -f openapi -z "-configfile /zap/wrk/options.prop"
------- options.prop file
-config replacer.full_list\(0\).description=auth1 \
-config replacer.full_list\(0\).enabled=true \
-config replacer.full_list\(0\).matchtype=REQ_HEADER \
-config replacer.full_list\(0\).matchstr=Authorization \
-config replacer.full_list\(0\).regex=false \
-config replacer.full_list\(0\).replacement=Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
但这仅扫描根 url 而不是每个 URL。当我输入这个问题时,我尝试从根目录下载 json 文件并运行 docker run 命令,并使用 -t 传递 json 文件,我得到了导入 url 的数量:似乎是一切。但这似乎在 powershell 中冻结了。
为了对我的 rest api 进行完整的递归扫描,我错过了哪一步? 有人有什么想法或帮助吗?
【问题讨论】: