跟踪服务器传出请求的最佳方法

跟踪服务器传出请求的最佳方法

我们有一台装有 nginx 1.4.6 的 Ubuntu 14.04.1 LTS 服务器,它托管了几十个网站,并从另一台服务器收到了一份滥用投诉,投诉内容是数百个请求,例如来自我们服务器的“POST /wp-login.php HTTP/1.0”。我该如何剖析问题,以便找出这些流量来自何处?我一直在尝试读取 tcpdump 输出,但我对此没有太多经验,也不知道要给它提供哪些参数,也不知道如何读取输出,以便能够高效地找到我要查找的内容。我应该使用哪些工具,按照什么顺序来查看是否可以追踪问题的根源?

答案1

一个简单的第一级方法是使用lsof -i @remotehostname(或远程 IP 地址)来查看哪个用户和进程正在启动与远程主机的连接。

至于解释tcpdump输出,我仍然觉得使用类似的东西更容易Wireshark帮助解释捕获的 TCP 流。它还可以帮助您生成在 tcpdump 中使用的语法,以使您的捕获更加具体。

答案2

由于缺乏信息,我猜测如下。

  • 您的系统托管网站
  • 网站存在漏洞,可能一些较旧的版本存在相当多的已知漏洞
  • 托管的网站可能会被一个或多个攻击者自动枚举和利用
  • 攻击者在文件系统甚至数据库上都留下了后门
  • 攻击者不一定能获得 root 访问权限(内核越新,获得 root 访问权限的可能性就越小)
  • 利用漏洞和后门,攻击者正在积极使用您的系统来匿名化自己,同时攻击其他目标(正如您收到的报告所证实的)

该怎么办呢?

  • 保持网站托管的最新状态,说起来容易做起来难,但这很重要

  • 隔离,你的网站应该尽可能地彼此隔离(php 执行不是以无人或 www-data 的身份,而是以唯一用户的身份,这样,一个网站的入侵不会轻易导致所有网站的入侵,尤其是当懒惰的攻击者让你头疼的时候)

  • 经常扫描和审核你的系统,你可以使用马尔代特搜索可疑文件、后门入侵者可能留下的文件。这绝不是完整的清理套件,它会找到一些东西,但它是基于签名的,后门中的任何变异都很容易让后门被这些扫描仪忽视。

  • 搜索并销毁;关联;我的意思是,用你拥有的一切进行搜索,记录发现的内容,检查访问日志中是否有访问你发现的内容的记录,然后记录访问这些坏文件的 IP;然后检查这些 IP 可能访问了你服务器上的哪些其他文件。这可能会发现更多签名不匹配的后门。

  • 尝试减少攻击面。管理区域是功能丰富的组件,这意味着那里有很多错误。如果您将管理区域的访问权限限制为少数 IP;或者添加基本身份验证等额外层,它将有助于保护您托管的网站免遭控制。

  • 睁大眼睛,循环浏览此列表,找到新的方法添加到此列表中,以提高您的防御能力。

相关内容