2009-05-01 25 views
3

我拥有一个运行在LAMP上的网站 - Linux,Apache,mySQL和PHP。在过去的2-3周里,我网站上的PHP和jQuery文件已经被恶意软件从一个名为gumblar.cn的网站感染了。在PHP文件中注入病毒代码

我不明白这个恶意软件如何进入我的PHP文件,我该如何防止它一次又一次地发生。

任何想法?

UPDATE:

Looks like it is a cpanel exploit

+11

我正在推出一个新的标签:ohnosharedhosting – 2009-05-02 18:23:33

+0

圣洁的垃圾邮件答案蝙蝠侠!看起来,非程序员社区比起stackoverflow观众来说不那么友善。 – thomasrutter 2009-05-04 06:37:56

+0

来吧,让我们改变这个标题。病毒在PHP?这是误导性的 – zalew 2009-05-06 17:01:19

回答

22

您的网站被破解,所以破解只需更换您的文件。

你应该随时升级您的Linux操作系统,Apache,MySQL和PHP,每当一个安全警报被公布在网上PHP程序。

Linux服务器运行开放服务而无需定期升级它们是互联网上最容易受到攻击的盒子。

0

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

在你身边,尽快将你的ftp密码改为完全不清楚的东西。我以前见过这种情况。这些'黑客'做的是在你的FTP帐户上施加暴力,下载一些文件,稍微修改它们,然后重新上传受感染的副本。如果您有权访问ftp日志文件,则可能会从您的IP以外的IP访问您的帐户。您可以将其提交给您的托管公司,并要求他们将该IP列入黑名单以访问其服务器。

14

这里没有一个能提供根据您提供的信息确凿的解决方案,所以我们可以建议是,你遵循良好的安全惯例和标准,并立即纠正任何弱点。

确保您的软件是最新的。通过在PHP程序中利用漏洞很有可能获得对本地文件的访问权限,因此请保留您的最新版本(尤其是非常广泛的程序,如Wordpress和phpBB)上运行的任何第三方应用程序,并尽一切可能来确保您的服务器运行正确版本的服务(PHP,Apache等)。

使用强密码。强密码是一个长长的随机字符列表。它不应该与你的生活无关,它应该没有现成的缩略语或助记符,它不应该像字典词,并且应该包含不同角色的健康散布;数字,不同情况下的字母和符号。它也应该相当长,理想情况下超过26个字符。这应该有助于防止人们在足够的时间内为有能力的系统管理员采取行动对付攻击者。

与您的托管服务提供商管理员

工作,了解在这种特殊情况下发生了什么,做的事情来纠正它。他们可能没有注意到任何异常;例如,如果你有一个简单的密码,或者这个攻击是由一个受信任的个人犯下的,或者如果你在自定义的PHP应用程序中有一个未修补的漏洞利用,那么就没有任何东西可以指示不当使用。

共享主机也有很多人访问相同的本地机器上,所以像文件权限和两个应用程序中,通常是非常重要的本地访问的漏洞补丁。确保您的主机具有良好的策略,并确保您的软件都不会明确信任本地连接或用户。

攻击的本质(从一个网站导入恶意软件似乎是集体做这种事情)表明您运行的是可利用的应用程序,或者您的用户名/密码组合不够强大,但是您的提供商的管理员是唯一能够提供关于如何发生的准确细节的人。祝你好运。 :)

2

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

1.他们已经在你的应用程序中使用了一些安全漏洞来向你的服务器注入一些代码,所以现在他们已经改变了你的一些PHP文件,的数据库信息。如果出现这种情况,最好仔细检查从用户获取信息(文本输入,文件上传,Cookie值等)的每个地方,确保一切都过滤良好。这是非常常见的安全措施,可以过滤来自用户的任何内容。您最好还是确保当前保存在数据库(或文件系统)中的数据是干净的。我建议使用Zend Framework的Zend_Filter组件来过滤用户输入。那里有许多全功能的过滤器库。

2.他们可以在你的服务器上运行一些程序,这会影响你的PHP源文件。所以不知何故,他们已经完成了运行一些程序/脚本你的服务器,这是改变你的应用程序。

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

3

很可能,您的服务器上存在一个应用程序,其中存在一个已知的漏洞,该漏洞已被攻击,并且某些内容已修改您网站上的文件或安装了新文件。

当在gumblar.cn上搜索信息时,看起来他们使用了一个名为JS-Redirector-H的木马程序。不知道这是否涉及到这里。

解决此问题可能涉及从备份中恢复您的网站,如果您无法知道已修改的内容。如果您有源代码管理或最新版本,则可以进行全站比较。但是您还需要修复首先允许这种情况发生的安全漏洞。

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

如果您不是服务器管理员,请咨询服务器管理员。他们可能会提供帮助,让他们知道这一点是明智的。

1

好吧,这不是一个编程问题,因此,如果我们能够容忍这样的问题,我们很快就会成为一个有不良共享主机帐户的ppl的急救/支持站点。

我只是没有投票结束,因为我感觉不好,因为我感觉不好,他们可能对一个他们没有知识解决的问题感到非常不满。

首先:google for gumblar.cn,随着我们的发言,越来越多的可能有帮助的帖子正在积累。

如果你是一个真正的初学者,你觉得你没有得到任何的在这里回答的东西,然后只要做到以下几点:

  1. 得到一个新的主机
  2. 谷歌有关的信息所有的软件,直到你知道,如果软件是安全的。如果不是这样,请不要使用它,直到开发人员解决问题。一个不安全的软件的例子是'Galery'。
  3. 安装您的所有软件(仅限安全软件)新鲜安装!
  4. 将静态文件(如图像)复制到新服务器。不要复制任何动态文件,比如php脚本,因为它们可能会被感染。
  5. 在检查安全漏洞之前,请勿上传任何自己的PHP脚本。如果你不知道如何做到这一点,在你了解这些事情之前不要上传任何东西。
3

谷歌咨询: http://safebrowsing.clients.google.com/safebrowsing/diagnostic?client=Firefox&hl=en-US&site=http://gumblar.cn(连接不工作)

首先,请联系您的托管公司,并报告这一情况。如果这是整个服务器,他们需要知道它。

像这样的感染最常见的原因是脆弱流行的PHP软件(如PHPBB,Mamboserver和其他流行系统)。如果您正在运行任何第三方PHP代码,请确保您拥有最新版本。

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

1

我一直受此病毒/恶意软件影响,目前正在清理。我希望这会有所帮助:

1)您最有可能在您的PC上有一个TROJAN。要验证这一点,只需运行(开始>运行...或Windows键+ R),然后输入“cmd”或“regedit”。如果其中任何一个不按预期打开窗口,则会出现Js:Redirector木马。您还可以验证反病毒程序aVast和恶意软件字节由于某种原因无法连接到更新(即恶意木马)。另外,您会注意到控制面板的安全程序已被禁用,您将不会在托盘图标中看到通知,告诉您病毒防护已被禁用。

2)这是一个very recent exploit,明显是漏洞或PDF插件,因此即使您没有使用Internet Explorer,您也不安全!我相信,因为我讨厌程序放慢我的电脑,我有我的Windows更新“手动”,我没有驻地保护(扫描所有的网络连接等),我是可能通过访问另一个未被列入黑名单的网站而受到感染。此外,我对非IE浏览器充满信心!我有时会忽略黑名单警告,因为我对脚本的作用感到好奇等等,并再次忘记了BAD Windows的真实含义。结论:自动保留Windows更新,拥有最小的驻留保护(aVast Web Shield + Network Shield)。

3)因为这是一个发回你的FTP密码的木马,所以你的密码有多好并不重要!

4)尝试使用恶意软件或aVast来升级您的PC,它会找到以“.ctv”结尾的文件。 您必须拥有5月14日或更近的病毒数据库。如果你不能更新(如上所述),然后按照these instructions(你需要推断,但基本上你有一个文件,名称可能会有所不同,这是在注册表中指出,并使用HiJackThis删除它,一旦你没有这个文件的反弹没有被执行,一切都很好)

5)当然更新你的密码,但要确保首先删除木马!

6)对于所有修改页面的确切列表,尝试获取FTP日志,你会发现脚本/黑客的IP和所有被触及的文件。

7)如果你有一个完整的“生产”环境的本地副本,那么最安全的是删除服务器上的所有站点,并重新上传所有文件。

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

0

我曾经有过这样的事情发生在我身边,在一个老的托管服务提供商处。不知何故,有人能够以某种方式感染Apache,以便在我的所有PHP文件中注入一个特殊的头文件,从而导致浏览器尝试下载并在浏览器中运行。虽然他们修复了问题,但快速解决方案是取下我所有的PHP文件,并将我的索引文件更改为纯HTML文件。这是否会阻止您的问题取决于服务器如何被感染。您可以做的最好的事情也许是最负责任的事情是通过取消网站来保护您的访问者,并且如果可能的话(如果文本文件未被感染),显示消息,如果他们最近访问过,他们可能已经被感染。

不用说,我在我的网站被感染后很快就转换了托管服务提供商。我的托管服务提供商在很多其他方面都很糟糕,但这几乎是最后一根稻草。