繁体   English   中英

在docker环境中通过OWASP zap扫描Rest API

[英]Scanning Rest API's through OWASP zap inside a docker environment

我设置了一个Azure devops CI / CD构建,该构建将启动一个虚拟机,其中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。 天蓝色devops中的Owasp zap任务不具备此功能。 甚至问过创建者( https://github.com/kasunkv/owasp-zap-vsts-task/issues/30#issuecomment-452258621 ),他也不认为可以通过Azure devops任务(仅通过docker)使用。

在下一个任务中,我现在尝试使其在docker映像中运行。 (首先是在Azure开发人员内部,但这并不顺利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文件并通过-t传递json文件来运行docker run命令,我得到的是导入URL的数量:这似乎是所有东西。 但这似乎冻结在powershell内部。

我想错过其余api的完整递归扫描的哪个步骤? 有任何想法或帮助吗?

首先,您的属性文件格式错误。 如果直接在命令行上设置选项,则仅需要'-config'和'\\'。 在属性文件中,您应该具有:

replacer.full_list(0).description=auth1
replacer.full_list(0).enabled=true
replacer.full_list(0).matchtype=REQ_HEADER
replacer.full_list(0).matchstr=Authorization
replacer.full_list(0).regex=false
replacer.full_list(0).replacement=Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

其次, https://apiurl/api.json返回什么,您是否检查过可以从Docker容器中访问它? 尝试跑步

curl https://apiurl/api.json

看看你得到什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM