任务 3:发起 Shellshock 攻击
Section outline
-
我们现在可以发起 Shellshock 攻击。该攻击不依赖于 CGI 程序中的内容,因为它针对的是 CGI 脚本执行之前调用的 bash 程序。你的任务是通过 URL http://www.seed-server.com/cgi-bin/vul.cgi 发起攻击,以便让服务器运行任意命令。
如果你的命令有纯文本输出,并且你希望输出返回给你,输出需要遵循如下协议:它应该以 Content-type: text/plain 开头,后跟一个空行,然后就可以放置纯文本输出。例如,如果你希望服务器返回其文件夹中的文件列表,你的命令应该像下面这样:
echo Content-type: text/plain; echo; /bin/ls -l
在这个任务中,请使用三种不同的方法(即三种不同的 HTTP 头字段)来对目标 CGI 程序发起 Shellshock 攻击。你需要实现以下目标,但对于每个目标,你只需要使用一种方法,但总共需要使用三种不同的方法。
-
任务 3.A: 让服务器返回 /etc/passwd 文件的内容。
-
任务 3.B: 让服务器返回其进程的用户 ID。你可以使用 /bin/id 命令打印出 ID 信息。
-
任务 3.C: 让服务器在/tmp文件夹中创建一个文件。你需要进入容器查看文件是否被创建,或者使用另一个 Shellshock 攻击来列出 /tmp 文件夹中的内容。
-
任务 3.D: 让服务器删除你刚刚在 /tmp 文件夹中创建的文件。
-