尝试扫描时 OWASP/ZAP 悬空
Posted
技术标签:
【中文标题】尝试扫描时 OWASP/ZAP 悬空【英文标题】:OWASP/ZAP dangling when trying to scan 【发布时间】:2019-07-08 14:13:19 【问题描述】:我正在尝试 OWASP/ZAP,看看它是否可以用于我们的项目,但我无法让它工作我不知道我做错了什么,文档真的没有帮助。我正在尝试对我的 api 运行扫描,该 api 在我的 windows 机器上本地的 docker 容器中运行,所以我运行命令:
docker run -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-stable zap-baseline.py -t http://172.21.0.2:8080/swagger.json -g gen.conf -r testreport.html
ip 172.21.0.2
是我的 api 容器的 IP 地址,即使尝试使用 localhost
和 127.0.0.1
但它只是挂在以下日志消息中:
_XSERVTransmkdir: ERROR: euid != 0,directory /tmp/.X11-unix will not be created.
Feb 14, 2019 1:43:31 PM java.util.prefs.FileSystemPreferences$1 run
INFO: Created user preferences directory.
什么都没有发生,我的 zap docker 容器处于不健康状态,一段时间后它只是崩溃并以一堆 NullPointerExceptions 告终。 zap docker 是否仅适用于 linux,在 Windows 机器上运行它时我需要做些什么?即使我特别遵循https://github.com/zaproxy/zaproxy/wiki/Docker 中的指南,我也不明白为什么这不起作用
编辑 1 我最近尝试直接针对我的主机 IP 地址和我公开我的 api 的端口给了我以下错误:
_XSERVTransmkdir: ERROR: euid != 0,directory /tmp/.X11-unix will not be created.
Feb 14, 2019 2:12:07 PM java.util.prefs.FileSystemPreferences$1 run
INFO: Created user preferences directory.
Total of 3 URLs
ERROR Permission denied
2019-02-14 14:12:57,116 I/O error(13): Permission denied
Traceback (most recent call last):
File "/zap/zap-baseline.py", line 347, in main
with open(base_dir + generate, 'w') as f:
IOError: [Errno 13] Permission denied: '/zap/wrk/gen.conf'
Found Java version 1.8.0_151
Available memory: 3928 MB
Setting jvm heap size: -Xmx982m
213 [main] INFO org.zaproxy.zap.DaemonBootstrap
【问题讨论】:
【参考方案1】:当你运行 docker 时: docker run -v $(pwd):/zap/wrk/:rw ... 您正在将 docker 映像中的 /zap/wrk/ 目录映射到正在运行 docker 的机器的当前工作目录 (cwd)。
我认为问题在于您当前的用户没有 cwd 的写入权限。
试试下面的命令,希望能解决问题。
$docker run --user $(id -u):$(id -g) -v $(pwd):/zap/wrk/:rw --rm -t owasp/zap2docker-stable zap-baseline。 py -t https://your_url -g gen.conf -r testreport.html
【讨论】:
【参考方案2】:这里的关键错误是:
IOError: [Errno 13] Permission denied: '/zap/wrk/gen.conf'
这意味着脚本无法写入您挂载在 /zap/wrk 上的 gen.conf 文件
当 cwd 没有挂载时,你有写权限吗?
【讨论】:
是的,我知道这一点,但谢谢。我在 Windows 上使用 cygwin,所以我只需要弄清楚如何为 docker 容器启用对我的 pwd 的写访问权限,但这可能更像是一个特定的docker for windows
问题,我在安装卷之前遇到了一些其他问题在 Windows 中,无论如何,很抱歉浪费您的时间。
没关系,别怕顶个问题:)以上是关于尝试扫描时 OWASP/ZAP 悬空的主要内容,如果未能解决你的问题,请参考以下文章