PHP文件中注入的病毒代码

4
我拥有一个运行在LAMP - Linux,Apache,MySQL和PHP上的网站。在过去的2-3周中,我的网站上的PHP和jQuery文件已经被来自gumblar.cn网站的恶意软件感染了。
我不明白这种恶意软件是如何进入我的PHP文件的,以及如何防止它一再发生。
有任何想法吗?
更新:
看起来这是一个cpanel漏洞。

11
我正在引入一个新的标签:ohnosharedhosting。 - Tim Post
哇塞,看来非程序员社区比StackOverflow的观众少得多。 - thomasrutter
来吧,让我们改变那个标题。PHP中的病毒?那是误导性的。 - zalew
您访问了一个存在漏洞的网站,也许它还没有被谷歌列入黑名单,因此您看不到警告。受感染的网站有一些SCRIPT标签,将访问黑客网站上的JavaScript。该脚本将利用Adobe Reader和Flash插件中的漏洞(据我所知,任何漏洞都可以)。代码在您的计算机上执行,安装了木马。您使用FTP连接到您的网站时,木马会将您的明文密码发送到他们的网站。然后,他们的脚本使用您的FTP凭据登录,并在几秒钟内将其代码注入数百个文件! - user58777
10个回答

22

您的网站已被破解,因此黑客仅需替换您的文件。

每当发布安全警报时,您应该始终升级您的Linux操作系统、Apache服务器、MySQL数据库、PHP和Web PHP程序。

运行开放服务的Linux服务器如果不进行定期升级,则是互联网上最容易受到攻击的服务器。


谢谢。我正在使用共享主机。所有这些-Linux操作系统、Apache、MySQL、PHP-都应该由网络托管公司管理。我如何确保网站不会被破解。目前我正在重新上传整个网站。 - Vinayak
6
你可以向托管服务提供商请求检查其他网站是否也被入侵。但是,如果你使用的是共享主机,我认为问题出在你的 PHP 程序上(而不是 PHP 服务器)。谁编写了这些 PHP 网页?是你自己、开源项目还是托管服务提供商?请检查并确保你已经更新了所有内容。 - Francis

14

根据您提供的信息,这里没有人能够提供确切的解决方案,所以我们建议您遵循良好的安全实践和标准,并立即纠正任何弱点。

确保您的软件是最新的。通过PHP程序漏洞可以很容易地访问本地文件,因此请确保您正在运行的任何第三方应用程序都是最新版本(特别是像WordPress和phpBB这样非常广泛的程序),并尽一切可能确保您的服务器正在运行其服务的正确版本(PHP,Apache等)。

使用强密码。强密码是一个长而随机的字符列表。它与您的生活无关,没有易于获得的缩写或记忆方法,不类似于词典单词,且包含不同字符的合理组合; 数字,大小写字母和符号。它也应该足够长,理想情况下超过26个字符。这应该有助于防止人们对您的凭据进行暴力破解,为能力强的系统管理员采取对抗攻击者的措施争取时间。

与您的托管提供商的管理员合作了解本次事件的原因,并采取纠正措施。他们可能没有注意到任何异常情况;例如,如果您有一个简单的密码,或者此攻击是由受信任的个人实施的,或者您的自定义PHP应用程序中存在未修补的漏洞利用,那么就没有什么迹象表明有不当使用。

共享主机还有许多人可以访问同一台本地机器,因此文件权限和在应用程序中和一般情况下修补本地可访问漏洞都非常重要。确保您的主机对此具有良好的策略,并确保您的任何软件都不绝对信任本地连接或用户。

攻击的性质(从似乎会批量执行此类操作的站点导入恶意软件)表明您正在运行易受攻击的应用程序,或者您的用户名/密码组合不足够强,但是您的提供商的管理员是唯一能够提供准确详细信息的人。祝你好运。:)


3

很可能您的服务器上有一个已知漏洞的应用程序被攻击了,某些东西修改了您网站上的文件或安装了新文件。

在搜索有关gumblar.cn的信息时,看起来他们使用了一个叫做JS-Redirector-H的木马。不确定这是否与此相关。

如果您无法知道哪些内容已被修改,修复此问题可能需要从备份中恢复您的网站。如果您有源代码控制或最近版本,则可以进行整个站点差异比较。但是,您还需要修复首次发生这种情况的安全漏洞。

很可能是一些不安全的应用程序,或者您一段时间前安装的应用程序,但最近没有更新。一些抱怨此问题的人提到他们使用Gallery(即PHP Gallery)。虽然我不确定这是否有关。

如果您不是服务器管理员,请与服务器管理员联系。他们可能能够提供帮助,并且让他们知道这一点是明智的。


3

Google咨询: http://safebrowsing.clients.google.com/safebrowsing/diagnostic?client=Firefox&hl=en-US&site=http://gumblar.cn(链接无法使用)

首先,联系您的主机公司并报告此问题。如果这是服务器范围内的问题,他们需要知道。

导致此类感染最常见的原因是易受攻击的流行PHP软件(例如PHPBB、Mamboserver和其他流行系统)。如果您正在运行任何第三方PHP代码,请确保您拥有最新版本。

如果您确定这只影响了您的网站,请从备份中恢复。如果您没有任何备份,请尝试重新安装所有内容(您可能可以迁移数据库)(到最新版本),并检查您自己的PHP代码(如果有)。


2

PHP程序实际上是在服务器上由PHP解释器运行的简单文本文件。如果您的应用程序受到感染,那么我认为有两种可能性:

1.他们利用您的应用程序中的一些安全漏洞将一些代码注入到您的服务器中,因此现在他们已经更改了您的一些PHP文件或某些数据库信息。

如果是这种情况,最好仔细检查从用户获取信息的每个地方(文本输入、文件上传、cookie值等),确保一切都被很好地过滤。这是非常普遍的安全实践,要过滤来自用户的任何东西。您还需要确保当前保存在您的数据库(或文件系统)中的数据是干净的。建议使用Zend框架的Zend_Filter组件过滤用户输入。有许多功能齐全的过滤库可以使用。

2.他们可能在您的服务器上运行了一些程序,影响了您的PHP源文件。所以,无论如何,他们成功运行了某些程序/脚本,从而改变了您的应用程序。

如果是这种情况,建议检查所有服务器进程,并确保您知道每个正在运行的进程。虽然我认为这种情况的可能性较小。


1

好的,这不是一个编程问题,SO也不是这个问题的地方,因为如果我们容忍这样的问题,我们很快就会成为一个为那些拥有糟糕共享主机账户的人提供急救/支持的网站。

我只是没有投票关闭,因为我觉得拒绝一些可能对自己的问题感到非常困扰且没有解决知识的人让我感到难过。

首先:搜索gumblar.cn,正在积累越来越多的潜在有用的帖子。

如果你是一个真正的初学者,而且你觉得你不理解这里的答案中的任何东西,那么只需要做以下几步:

  1. 获取新的主机
  2. 谷歌搜索您所有软件的信息,直到您知道该软件是否安全。如果它不安全,请等待开发人员解决问题后再使用。一个不安全的软件例子是'Galery'。
  3. 安装所有(只有安全的)软件,进行全新安装!
  4. 将静态文件(如图像)复制到新服务器。不要复制任何动态文件,如php脚本,因为它们可能已被感染。
  5. 在检查了安全漏洞之后再上传您自己的PHP脚本。如果您不知道如何做到这一点,在学习这些内容之前请勿上传任何内容。

1

我受到了这个病毒/恶意软件的影响,目前正在清理。希望以下内容能对您有所帮助:

1)您的电脑很可能感染了木马病毒。要验证这一点,只需运行(开始 > 运行... 或 Windows 键 + R),然后输入“cmd”或“regedit”。如果其中任何一个未按预期打开其窗口,则说明您的电脑感染了 Js:Redirector 木马病毒。您还可以验证反病毒程序 aVast 和 Malware Bytes 无法连接更新(这是一种隐秘的木马病毒)。此外,您会注意到控制面板的安全程序已被禁用,您不会看到托盘图标中的通知告诉您病毒保护已被禁用。

2)这是一个非常新的漏洞利用,显然是在flash或pdf插件中存在的漏洞,因此即使您没有使用Internet Explorer,也不安全!

就我而言,我相信因为我讨厌程序减慢我的电脑速度,所以我将Windows更新设置为“手动”,并且我没有居民保护(扫描所有网络连接等),我可能是通过访问另一个尚未列入黑名单的被黑客攻击的网站而感染的。此外,我对非IE浏览器过于自信!我有时会忽略黑名单警告,因为我对脚本的作用等很好奇,并再次忘记了Windows真正的糟糕程度。结论:将Windows更新设置为自动更新,具有最小的居民保护(aVast Web Shield + Network Shield)。

3)由于这是一个发送FTP密码的特洛伊木马,因此您的密码有多强都无关紧要!

4)尝试使用恶意软件或aVast清理您的PC,它将找到一个以“.ctv”结尾的文件。您必须拥有日期为5月14日或更近的病毒数据库。如果您无法更新(如上所述),则按照这些说明进行操作(您需要推断,但基本上您有一个文件,名称可能会有所不同,该文件指向注册表,并使用HiJackThis将其删除,一旦您重新启动而不执行此文件,一切都会很好)。

5) 当然要更新密码,但务必先确保木马已被删除!

6) 要获取所有修改页面的精确列表,请尝试获取FTP日志,您将找到脚本/黑客的IP和所有受影响的文件。

7) 如果您拥有“生产”环境的完整本地副本,则最安全的方法是删除服务器上的所有站点,并重新上传所有文件。

8) 在清理过程中,不要访问已感染的网站,否则您将重新安装木马!如果您拥有最新的aVast Home Edition和“Web Shield”保护,它会向您发出警告并阻止浏览器执行该页面。


0

像弗朗西斯提到的那样,尝试让你的托管公司确保他们的软件是最新的。

在你的一面,尽快将你的ftp密码更改为完全模糊不清的内容。我以前见过这种情况发生在人身上。这些“黑客”所做的就是对你的ftp帐户进行暴力攻击,下载几个文件,稍微修改一下,然后重新上传感染的副本。如果你可以访问ftp日志文件,你可能会看到一个与你不同IP的连接到你的帐户。你可以将此提交给你的托管公司,并要求他们将该IP列入黑名单,禁止其访问他们的服务器。


0

0
我曾经在一家旧的托管提供商那里遇到过类似的问题。不知何故,有人能够以某种方式感染Apache,从而向所有我的PHP文件中注入特殊标头,导致浏览器尝试下载并在其中运行。虽然他们最终解决了这个问题,但快速解决方案是关闭所有我的PHP文件,并将我的索引文件更改为纯HTML文件。无论此举是否能够解决您的问题,取决于服务器被感染的程度。您可以采取的最好和最负责任的做法是保护您的访客,关闭网站,并在可能的情况下(如果文本文件未被感染),显示一条消息,说明如果他们最近访问过,则可能已被感染。
不用说,我的网站一旦被感染,我很快就换了托管提供商。我的托管提供商在很多其他方面都很糟糕,但这几乎是压垮骆驼的最后一根稻草。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接