api - API 扫描未从 OWASP ZAP 中的 swagger-ui.html 扫描 api
问题描述
我尝试了以下命令
docker pull owasp/zap2docker-weekly
docker run -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-weekly zap-api-scan.py -t https://dummyexample.com/swagger-ui.html -f openapi -g gen.conf -r testreport.html -z "-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 eyJraWQiOiIyABCDEFG'"
我得到的输出为
WARN-NEW:返回了意外的 Content-Type [100001] x 2
https://dummyexample.com/swagger-ui.html (200 OK)
https://dummyexample.com/swagger-ui.html/ (200 OK)
WARN-NEW:不完整或没有缓存控制标头集 [10015] x 1
https://dummyexample.com/swagger-ui.html (200 OK)
WARN-NEW:内容安全策略 (CSP) 标头未设置 [10038] x 1
https://dummyexample.com/swagger-ui.html (200 OK)
FAIL-NEW:0 FAIL-INPROG:0 WARN-NEW:3 WARN-INPROG:0 INFO:0 IGNORE:0 通过:113
问题是我无法从 swagger 中扫描所有 api,因为我需要对其进行身份验证。但是我提供了正确的承载令牌,然后所有的 api 都没有被捕获和扫描。我只需要通过 owasp/zap2docker-weekly 映像来执行此操作。我不想使用 ZAP UI。我尝试禁用 api.disablekey=true 但输出相同。
docker run -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-weekly zap-api-scan.py -t https://dummyexample.com/swagger-ui.html -f openapi -g gen.conf -r testreport.html -z "-config api.disablekey=true"
请帮我解决一下这个。我错过了一些东西。
提前致谢
解决方案
虽然替换器应该可以正常工作,但我建议使用身份验证环境变量:https ://www.zaproxy.org/docs/desktop/start/features/authentication/#envvars
推荐阅读
- macos - 如何从zsh终端的终端在docker中创建目录?
- c# - Bootstrap 模态表单不显示数据
- sql - 不是所有的行都通过使用 Teradata 中的 fastload 实用程序从 CSV 文件加载到 Teradata SQL 助手的表中?
- jenkins - Kubernetes jenkins - 权限被拒绝
- java - 返回灯泡状态改变的次数?
- javascript - TradingView 轻量级图表中的价格刻度线数量
- java - 我们可以在 Spring Data MongoDB 中手动增加 MongoDB 文档版本的版本吗?
- android - 我想在颤振中创建一个拖放应用程序
- javascript - 我用 JavaScript 做了一个井字游戏,但我不知道添加代码
- c++ - 如何使用 Hana 使 std::optional 成为运行时单子?