免责声明。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 次攻击!我们真的需要安装防火墙)。