今天,我在我的access.log中看到了这一行:
xxx.xxx.xxx.xx - - (10/Dec/2016:xx:xx:xx +xxxx] "GET / HTTP/1.0" 200 XXXXX "-" "() { :;}; /bin/bash ... "
我不明白这是如何工作的,什么是"(){:;};/bin/bash ..."访问log substring?这不是争论吗?黑客如何将此字符串注入get请求?
我想复制类似的get,以检查/bin/bash是否已执行,例如:
:xxx.xxx.xxx.xx - - (10/Dec/2016:xx:xx:xx +xxxx] "GET / HTTP/1.0" 200 XXXXX "-" "() { :;}; /bin/bash -c "touch /tmp/foo.txt ""
这看起来像shellshock/bashdoor bug。
- ShellShock(软件错误)(Wikipedia页面)
- 担心httpd访问日志
- 如何将Apache固定在Bash Shellshock漏洞上?