神经网络和异常检测

信息安全 防火墙 身份证 监控
2021-08-20 11:17:21

神经网络具有从任意数据中学习行为模式的能力,似乎是处理入侵检测的一种自然方式。有许多关于该主题的学术论文报告了良好的表现和更好的潜力。

问题是,是否有任何现实生活中的实现?是否有单个智能防火墙、防火墙模块或其他类型的实际使用 NN 的智能入侵检测器?

4个回答

已经有大量研究使用机器学习技术进行异常检测,即扫描网络流量和检测入侵。然而,这项研究的实际影响很小。这些技术很少被部署,并且很少在实践中使用。

为什么不?有很多原因。

首先,这些系统往往具有很高的误报率。他们经常每天发出多个虚假警报(有时甚至每天几十个),这会占用系统管理员的时间。这是异常检测系统的基本挑战,因为它们遭受“大海捞针”问题:每天有数十亿数据包穿过您的网络,而且几乎所有数据包都是良性的。如果该算法的误报率低至 0.1%,那么仍然有数千个数据包被虚假标记。为了实用,异常检测算法需要具有极低的误报率,这很难做好——同样的原因,在不引入大量误报的情况下,在机场安检中很难发现恐怖分子这导致必须对日常人员进行搜索。

其次,异常检测系统往往不是很健壮。他们专注于检测网络流量中的异常或新颖模式:任何不寻常的事情。结果是,每当您的网络发生变化时,无论多么良性,它们都会引发警报。您的网站是否刚刚被划线?Blam,虚假警报发疯了。是否有用户安装了新的应用程序来玩新的 NAT 穿越游戏?Blam,虚假警报来了。有人第一次安装 IPv6 吗?布拉姆。有人用不稳定的 TCP/IP 堆栈连接一部新手机,它会发出损坏的数据包?布拉姆。你明白了。

如果您想了解更多有关该领域创新挑战的信息,我建议您阅读以下研究论文:

  • 封闭世界之外:关于使用机器学习进行网络入侵检测罗宾·萨默和弗恩·帕克森。IEEE 安全与隐私 2010。

    • 摘录:“与其他入侵检测方法相比,机器学习很少用于可操作的“现实世界”环境中。[...] 起初,令人惊讶的是,尽管在异常检测方面进行了广泛的学术研究,但这种成功操作环境中的系统非常有限。”
  • 基准率谬误及其对入侵检测难度的影响斯特凡·阿克塞尔森。RAID 1999。

    • 摘录:“限制入侵检测系统性能的因素不是将行为正确识别为入侵的能力,而是其抑制误报的能力。”

ML 的问题在于训练。过度训练导致匹配精确的训练集,使学习不通用。

由于我目前的雇主为 Python 开发科学计算库,我可以指出您在 Disco 上的 map-reduce 以在日志文件中查找常见集群:https ://github.com/JensRantil/disco-slct

这不是神经网络,但它是一种分析数据的方法。

在 SLCT 的帮助下,可以快速构建日志文件模型,并且还可以识别不适合模型的罕见行(并且可能是异常的)。

我怀疑你能找到任何商业产品,因为这个领域是高度商业化的,而且它们几乎没有可用的开源实现,而且大部分工作都是在封闭的生态系统中完成的。有一个关于这个主题的讨论,你可以在链接中找到 我发现的唯一开源工具是OSSEC,它是一个基于主机的入侵检测,最近有一项关于将它与人工智能技术集成的研究,还有一关于它的书你会发现有趣的。

由于人工智能是我的主要工作,我可以直接告诉你,单独的神经网络对于动态架构来说是无用的解决方案。

您正在寻找的是 NN <=> Operator 之间的自动化。

这通过以下方式工作,例如:

  • NN 接受过识别现有恶意软件的训练
  • 响应团队检查新的恶意软件。

没有像您说的那样现有的应用程序,因为它不是以这种方式完成的,它没有未来,并且使用 NN 来制作动态架构本质上是糟糕的设计。

实际上使用的是贝叶斯分类以及其他启发式方法。示例实现是 Microsoft 的 Cloud Exchange。它也使用多层架构。

如果你真的想努力走科学的路,你需要实时分析每个安全层,并与操作员一起制定工作流程。

这个论坛不是问这种问题的好地方,因为没有人工智能专家,甚至没有工程师,你可以试试MSDN,哪个更好。