通过 Ubuntu 命令行安装和运行 OWASP ZAP



我正在使用shell脚本安装&在Ubuntu映像上运行ZAP。

sudo apt update
sudo apt install default-jre -y
sudo apt install snapd -y
sudo snap install zaproxy --classic
cd /snap/zaproxy/current
java -jar ./zap-2.11.1.jar -cmd -quickurl https://www.website.com/ -quickprogress -quickout ~/report.xml

Spider工作正常,但在Active Scan开始后不久,它会抛出以下错误:

java.io.EOFException
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2353)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2822)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:804)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:301)
at hudson.remoting.ObjectInputStreamEx.<init>(ObjectInputStreamEx.java:49)
at hudson.remoting.Command.readFrom(Command.java:142)
at hudson.remoting.Command.readFrom(Command.java:128)
at hudson.remoting.AbstractSynchronousByteArrayCommandTransport.read(AbstractSynchronousByteArrayCommandTransport.java:35)
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:61)
Caused: java.io.IOException: Unexpected termination of the channel
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:75)
Caused: java.io.IOException: Backing channel 'jenkins-zap-t6s4nu' is disconnected.

我在另一个问题中看到,当您尝试读取一个空文件时,会发生java.io.EOFException。当shell脚本在PC或VM上运行时,它运行得很好,所以我想可能有一个隐藏的依赖项,默认情况下不会安装在裸机Ubuntu映像上。

这个shell脚本中是否有缺失或不正确的部分?

不要手动启动jar,而是尝试使用zap.sh

原来问题出在我们的服务器上,而不是ZAP!我们有一个流氓詹金斯控制器,他认为它需要杀死所有没有启动的特工。

如果将来有其他人遇到此问题,一定要尝试运行服务器诊断程序。

运行以下命令安装owasp-zap

echo 'deb http://download.opensuse.org/repositories/home:/cabelo/xUbuntu_22.10/ /' | sudo tee /etc/apt/sources.list.d/home:cabelo.list
curl -fsSL https://download.opensuse.org/repositories/home:cabelo/xUbuntu_22.10/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_cabelo.gpg > /dev/null
sudo apt update
sudo apt install owasp-zap

最新更新