IDS 在捕获有针对性的攻击方面有多有效

信息安全 攻击 身份证 检测
2021-08-17 20:17:34

我最近对 ​​IBM Site Protector 非常熟悉。据我了解,Site Protector 是 IPS/IDS 系统的顶级产品,被一些最大的财富 500 强公司使用。

我很惊讶地看到大量误报和可能特定于指示有针对性攻击的标签的整体缺乏。

我看到一位网络安全分析师报告了许多可能可疑的警报,例如与 SQL 注入有关的警报。分析师认为这些都是误报。当询问如何在软件中确定这一点时,我被告知没有进一步的特定标签/警报类型需要调查。

由于似乎缺乏特定的警报,我不得不想知道最高级别的 IDS 软件在检测专门的针对性攻击方面有多大用处。

为了澄清我所说的攻击类型,我将举一个例子:

  • 针对特定目标的端口扫描
  • 针对特定目标的 SQL 注入尝试
  • 获得的凭证,例如通过 succusfull SQL 注入从数据库中获得的凭证
  • 已安装 SSH 或已建立远程 shell。某种类型的远程接口不应该是典型的目标。
  • 其他异常行为,例如来自目标的非标准端口上的大量流量。

从我目睹的 SQL_Injection 警报甚至没有显示 URL 中的参数,只显示 URL 中的文件名,因此很难看出是否发生了 SQL 注入。

如果没有警报会显示上述攻击场景中的活动,并且大多数 SQL 注入甚至缓冲区溢出警报往往会被误报为误报(即使一个实例也可能是成功的攻击),那么使用一个IDS来检测这种攻击?

2个回答

免责声明。IBM Site Protector 是专有的,因此我无法回答有关它的具体问题。但总的来说,我将分享我对基于网络的 IDS/IPS 系统的印象。

检测某些攻击的有效性。您询问了 IDS 在检测某些特定类型的攻击方面的有效性:

  • 端口扫描。我希望 IDS 系统在检测大多数端口扫描方面非常有效。(检测端口扫描是否有用是一个单独的问题。)

  • SQL 扫描。我希望 IDS 系统能够有效地检测基本的 SQL 注入攻击尝试,例如,有人以简单的方式在您的服务器上戳。我不希望它们能有效地检测复杂的 SQL 注入攻击。可以构建逃避 IDS 检测的 SQL 注入漏洞。

  • 获得的凭证。这太宽泛了;我不知道您想到的获取凭据的途径是什么,所以我不知道如何回答。如果您谈论的是攻击者试图通过猜测用户名和密码来访问 Web 应用程序,我不希望基于网络的 IDS 能​​够检测到这些攻击。

  • 安装 SSH。我不知道 IDS 是否检测到 SSH 的安装。我不清楚他们如何区分恶意打开 SSH 服务器的攻击者和出于合法目的打开 SSH 服务器的系统管理员。这似乎是您可以轻松测试自己的东西。

  • 远程外壳。我不希望 IDS 能​​够有效地检测大多数远程 shell。也许有时,但是一旦攻击者有能力在您的机器上运行代码,他们就很容易设计自己的自定义方法来进行 IDS 无法检测到的远程访问。有可能检测到一些常见的情况;我不知道,也没有足够的经验知道。

  • 其他异常行为。据我所知,当前基于网络的 IDS 通常不会尝试检测异常情况。相反,更典型的是具有在野外观察到的特定攻击方法的特征。换句话说,他们试图检测已知的攻击,而不是未知的攻击。

    检测异常非常具有挑战性,通常会导致许多误报。例如,如果您突然开始在某处看到更多流量,您如何区分刚被 Slashdotted(这是合法流量)的情况与您遇到安全漏洞(这是非法流量)的情况? 在一般情况下,它可能会变得非常棘手。

还有一个你没有提到,但我认为这很重要:

  • 配置错误。 配置错误是安全问题的重要来源之一。示例包括运行具有已知漏洞的旧软件并且未能对其进行更新,或者无意中在防火墙中打开了一个漏洞,从而暴露了易受攻击的服务。通过检测利用易受攻击/配置错误的应用程序的尝试,IDS 可以真正帮助解决这种错误。

此外,在发生安全漏洞后,如果 IDS 保留了良好的日志,它可能更容易对造成的损害进行取证检查。

警报中显示的信息。您问的最后一个问题与警报中显示的信息有关。这与 IDS 是否可以首先检测到攻击是不同的问题。我猜大多数 IDS 用户无法有效地解释漏洞利用的所有技术细节,因此对于大多数用户来说,显示这些细节可能不是那么有用。至于在警报中向用户显示哪些信息,这是一个将取决于特定产品的用户界面问题,所以如果这对您很重要,我建议您要求试用您正在考虑和评估这方面的产品。

有针对性的攻击。快速说明:上述信息中很少有特定于针对您的特定公司或针对您公司的特定机器的针对性攻击。非目标攻击的答案大致相同(尽管 IDS 对非目标攻击可能比目标攻击更有效)。

IDS 有多大用处?我不知道你是否会找到这个问题的权威答案。这是相当主观的。就个人而言,我认为 IDS 的用处尚不清楚,而且我的印象是 IDS 经常被夸大。我的感觉是,IDS 往往最擅长两件事:(1) 检测一些常见的、低复杂度的攻击,(2) 检测由配置错误引起的破坏。

我不建议将 IDS 作为保护系统的主要手段。然而,有一个合理的论点,IDS 作为二级防御可能具有一定的价值,例如,捕捉无意的配置错误,这些错误会打开一些您的其他防御无法阻止的漏洞。IDS 是否对您有意义是您必须自己判断的事情,但一般来说,如果我从头开始创建安全程序,IDS 并不是我首先要优先考虑的事情之一。

为什么要使用 IDS?您此时的反应可能是,等等,如果 IDS 不是那么有用,为什么有人使用它们?

我认为一个主要因素是:IDS 易于部署。您只需将东西插入您的网络,就可以开始使用了。您不必向最终用户推送软件,不必更新防火墙策略,也不必部署可能阻止合法流量的安全限制。这感觉像是解决安全问题的无痛解决方案。

部署 IDS/IPS 的一个可能的次要原因是:合规性和检查表。如果您有 IDS,您可以与您的审计员核对,如果存在安全漏洞,您将与您的公司高管获得一些 CYA 保护(好吧,我们部署了最先进的 IDS,我们做到了我们能拥有的一切)。这利用了这样一个事实,即非技术人员可能会认为入侵防御系统可以可靠地防止入侵。

第三个可能的原因是:IDS 生成报告,大量报告,带有图形和漂亮的图表。经理喜欢报告:它帮助他们感觉自己可以“管理”安全并了解他们的工作方式。此外,有时安全团队也喜欢这些报告:它们有助于向高层管理人员解释为什么公司真的需要投资于安全防御(仅 1 月份我们就有 10,000 次攻击!我们真的需要安装防火墙)。

IDS 在检测目标攻击方面可能与非目标攻击一样有效。

我想知道是否对什么是“有针对性的攻击”存在一些误解。有针对性的攻击和非有针对性的攻击之间的区别在于攻击者是尝试入侵所有人还是仅入侵您。有针对性与无针对性是正交的,攻击者选择在攻击中使用哪种技术方法。

一般来说,IDS 最适合用于检测常见的、低复杂度的攻击。

然而,老练的攻击者可以轻易地避开 IDS。IDS 不太可能检测到自定义攻击。此外,IDS 不太可能检测到高级持续性威胁 (APT)。而且,网络级别的 IDS 不太可能非常擅长检测鱼叉式网络钓鱼:例如,有针对性的恶意电子邮件、通过社交网络进行的有针对性的攻击等等。基于电子邮件的向量可能需要在您的邮件服务器上检测,而不是通过监视您的网络的东西。网络监视器更难检测到基于 Web 的向量。

一般来说,我不建议依靠 IDS 作为您的主要防线。作为次要防御可以捕捉一些你可能没有通过主要防御停止的东西,但你不应该使用 IDS 作为你唯一的防御。您的主要防御应该使用其他方法(例如,防火墙、软件更新/修补、系统配置和管理、用户教育、良好的软件开发实践)。