我正在致力于创建我自己的 CVE 2016-1907 PoC 以及其他几个涉及 OpenSSH 的道德黑客/错误赏金 CVE。目前,我已经通过 Nmap 服务器发现运行有漏洞的版本。我想创建自己的 PoC,以便我了解它并且他们可以看到潜在的影响。我必须使用本地或虚拟专用服务器上的虚拟机
我正处于这样的阶段,这是我当前的流程,但我有很多围绕它的问题,而且我遇到了困难。
编辑:这是我收到的错误消息:
checking whether getpgrp requires zero arguments... yes
checking OpenSSL header version... not found
configure: error: OpenSSL version header not found.
make: *** No targets specified and no makefile found. Stop.
/home/cjensen/bin/openssh-build: line 47: DD: command not found
cp: cannot create directory '/etc/ssh.old.': Permission denied
make: *** No rule to make target 'install'. Stop.
这是我拥有的最新最好的脚本 https://gist.github.com/ruevaughn/5b47a62551264de6d1438b1db32982aa
答案1
在脚本的第 45 行中,您将传递 openssh 的配置脚本应查找 zlib 和 openssl 头文件的路径:
./configure --with-ipv4-default --with-md5-passwords --with-zlib="$tmpdir/$zlib" --with-ssl-dir="$tmpdir/$openhurl)"
首先 - 您应该指定这些文件的安装路径,而不是它们的构建路径。此外,您的脚本中未定义 $openhurl 变量。由于您似乎在没有额外选项的情况下构建这两个库,因此这些路径将是 /usr/local/include/ 和 /usr/local/ssl/ ,因此您的配置调用应该是:
./configure --with-ipv4-default --with-md5-passwords --with-zlib=/usr/local/include --with-ssl-dir=/usr/local/ssl/
其次,在第 47 行中,您可能尝试备份 ssh 配置:
cp -rf /etc/ssh /etc/ssh.old.`DD`
DD在这里是未知的。
您也不检查上一步是否成功,您应该将其称为
./configure && make && make install
作为最低限度。