是否应该仅仅因为端口打开就认为服务器受到损害?

信息安全 防火墙 防御 僵尸网络 系统妥协
2021-09-07 05:33:07

今天早些时候,我收到了Mandrill 发生安全事件的通知。起初我很担心,但当我深入研究细节后,我开始困惑为什么他们认为这值得一提。

总而言之,Mandrill 似乎对其 EC2 安全组进行了一些更改,这导致其日志服务器上的某些端口可以在几周内访问 Internet。

3 月 10 日,我们发现有证据表明,有人对 Mandrill 的内部日志服务器进行了自动尝试,以试图在僵尸网络中使用它们。对受影响的服务器的分析,包括服务器上存在的网络流量日志和文件,表明这些尝试是不成功的。没有迹象表明这些服务器的目标是访问存储在其上的数据。

我们调查了这个问题,发现这次攻击的机会源于我们在 2 月 20 日所做的防火墙更改,以便更精细地控制对某些 Mandrill 服务器的访问。Mandrill 的部分基础设施由 Amazon Web Services (AWS) 托管,我们使用 EC2 安全组来控制访问。对包含比我们打算影响的服务器更多的服务器的安全组进行了一项更改。因此,托管 Mandrill 内部应用程序日志的服务器集群可以公开访问,而不是只允许内部访问。

现在,我们都一直在处理僵尸网络,而如何让您的机器远离它们是众所周知的。尤其是因为我运行的几乎所有内容都是面向公众的,并且我看到数百万次僵尸网络尝试,除了生成日志条目之外,没有任何一个成功。

但正因为如此,他们建议每个人都使他们的所有 API 密钥无效并更改。我个人有近十几个活动的 API 密钥,我需要花费一个下午的大部分时间来更改所有这些需要更改的地方。

我个人的想法是,他们对此反应过度。但我不知道一切。是否有一些理由认为仅仅开放端口会被认为是一种潜在的妥协?

1个回答

从阅读披露来看,所发生的情况似乎是开放端口实际上不仅仅是一个随机端口,而是一个从未被设计为直接暴露给外部世界的某个内部服务正在监听的端口. 如果该内部服务存在漏洞,则可能允许攻击者获取在指定时间段内使用其服务的用户的 API 密钥。

虽然他们确实注意到攻击看起来像是自动攻击而不是有针对性的攻击,但应该考虑到老练的攻击者经常使用高度可见的自动攻击来转移服务器和系统管理员的注意力,使其远离正在发生的另一个隐蔽的、有针对性的攻击同时,即引起大量关注的大型DDoS只是一种转移。

如果一个老练的攻击者设法获得进入系统的特权,使其看起来好像没有人泄露重要数据,他们可能已经删除了他们的踪迹。这就是为什么他们建议更改您的 API 密钥,即使他们没有发现实际查询数据的证据。特别是因为这是一个被入侵的日志服务器,并且由于系统管理员通常会使用日志来检测入侵,因此被入侵的日志服务器可以隐藏真正发生的事情。

一个老练的攻击者也可以在系统上留下一个后门/rootkit,以便在以后每个人都认为事情已经解决时重新进入系统,这样他们就可以从安全边界内以更悠闲的速度进行实际攻击,这可能非常危险。这就是为什么他们要停用所涉及的机器。

或者可能是他们这样做是为了向一些潜在的具有安全意识的客户展示,这些客户由于对其安全性的怀疑而对购买决定持观望态度。这可能会改变那些潜在客户决定接受他们服务的态度,因为他们现在放心,当存在可能影响他们的漏洞时,公司不会保持沉默。

是否有一些理由认为仅仅开放端口会被认为是一种潜在的妥协?

是的,开放端口暴露了一个并非为外部使用而设计的内部服务。供内部使用的服务通常缺乏面向公众的服务所获得的安全强化,因为假设该服务只能从受信任的机器访问。例如,内部服务可能不使用 SSL 在受信任的网络中进行通信,或者他们可能不会像假设受信任的发件人已经完成任何必要的验证那样彻底地验证他们的输入,或者他们可能具有无需身份验证即可使用的管理命令,因为它假定任何必要的身份验证都已由面向公众的服务完成。