代码之家  ›  专栏  ›  技术社区  ›  Jeriko

客户网站上的恶意软件-想法?

  •  6
  • Jeriko  · 技术社区  · 14 年前

    我们最近接到一个客户的电话,抱怨他们的网站在页面底部有一些“奇怪的代码”。我们检查了源代码,发现在 templates/master 文件之后 </html> 标签。我不会发布所说的代码,因为它看起来特别糟糕。

    据我所知,除非有人直接访问服务器和/或ftp登录详细信息,否则无法以任何方式编辑此文件。实际文件本身已被修改,因此排除了任何类型的SQL攻击。除了一个人物理上获得了证书并手工修改了这个文件之外,对发生的事情还有其他逻辑解释吗?有没有其他人有过这样的经历?

    7 回复  |  直到 10 年前
        1
  •  7
  •   David Wolever    14 年前

    我检查的地方是:

    • 文件修改时间(查看发生时间)
    • HTTP服务器日志中是否有看起来很有趣的get参数(例如, ?foo=exec('...') )
    • FTP服务器日志
    • ssh日志(我也有过类似的事情,因为有人泄露了密码)

    另外,我会立即限制对所有站点文件的写访问,以防 相同的 攻击(当然,向量仍然是开放的,但总比没有好)。

        2
  •  3
  •   Joe Mastey    14 年前

    如果攻击者没有其他文件访问权限,则很可能代码中的某个地方存在允许用户执行任意代码的漏洞。passthru()、exec()和eval()的使用是这里常见的问题。如果在同一台机器上运行ftp,这通常也是一个强大的攻击向量。

    我不确定是否会明确地排除SQL攻击(尤其是与上述漏洞结合在一起的反射攻击),但也不清楚是否会是这种攻击。


    对于您的问题,它可以是自动化的,也可以是针对个人的,很难用给出的详细程度来表示。正如其他人所说,请尽可能多地关闭密码,限制对服务器的访问,然后开始检查日志,查看哪里出了问题。这将比拆分应用程序本身更成功。

        3
  •  3
  •   Cruachan    14 年前

    您没有指定,但如果您是,则无论如何都不应该在生产服务器上使用ftp,因为它本质上不安全(除其他之外,它以明文形式传输凭证,使您很容易受到嗅探攻击)。始终使用SFTP。

    如果您使用的是纯ftp,这很可能是攻击向量,尤其是修改文件时。如果你的机器已经完全穿透了,我希望能看到更多的东西。

        4
  •  1
  •   Laplace    14 年前

    几乎可以肯定的是,有人破坏了允许远程修改代码的凭证。服务器是否位于站点上?

        5
  •  1
  •   Neotropic    13 年前

    这是我的看法。 使用FTP程序?您的FTP日志文件存储密码、路径等。被抓住。密码被解码。

    尽量不要在ftp客户机中存储ftp密码。或者像上面一样,使用sftp。 我们遇到了类似的问题,似乎来自一台使用一组FTP登录的计算机。另外,因为这台计算机以前有很多奇怪的问题。Javascript不能正常工作,有时会出现会话超时,或者只是被删除。这对我来说表明这台电脑上有东西。

        6
  •  0
  •   TrialAndMoreError    11 年前

    一定要找到并删除网站上的可疑文件。如果他们有权访问ftp,他们很可能会在某个地方留下后门脚本,使他们能够通过特定的URL上传/修改网站上的文件,即使在您更改ftp密码或切换到使用sftp之后。

    尝试运行找到的脚本 here 如果您使用的是PHP。

        7
  •  0
  •   user2538743    10 年前

    要检测现有恶意代码,我建议您使用服务器上良好的反恶意软件扫描引擎来检测网站文件上的恶意代码。 很多时候,服务器不易受攻击,但网站是!要防止这种情况,请使用 Web Application Firewall 它可以查看每个请求以检测和阻止攻击尝试。