神经网络具有从任意数据中学习行为模式的能力,似乎是处理入侵检测的一种自然方式。有许多关于该主题的学术论文报告了良好的表现和更好的潜力。
问题是,是否有任何现实生活中的实现?是否有单个智能防火墙、防火墙模块或其他类型的实际使用 NN 的智能入侵检测器?
神经网络具有从任意数据中学习行为模式的能力,似乎是处理入侵检测的一种自然方式。有许多关于该主题的学术论文报告了良好的表现和更好的潜力。
问题是,是否有任何现实生活中的实现?是否有单个智能防火墙、防火墙模块或其他类型的实际使用 NN 的智能入侵检测器?
已经有大量研究使用机器学习技术进行异常检测,即扫描网络流量和检测入侵。然而,这项研究的实际影响很小。这些技术很少被部署,并且很少在实践中使用。
为什么不?有很多原因。
首先,这些系统往往具有很高的误报率。他们经常每天发出多个虚假警报(有时甚至每天几十个),这会占用系统管理员的时间。这是异常检测系统的基本挑战,因为它们遭受“大海捞针”问题:每天有数十亿数据包穿过您的网络,而且几乎所有数据包都是良性的。如果该算法的误报率低至 0.1%,那么仍然有数千个数据包被虚假标记。为了实用,异常检测算法需要具有极低的误报率,这很难做好——同样的原因,在不引入大量误报的情况下,在机场安检中很难发现恐怖分子这导致必须对日常人员进行搜索。
其次,异常检测系统往往不是很健壮。他们专注于检测网络流量中的异常或新颖模式:任何不寻常的事情。结果是,每当您的网络发生变化时,无论多么良性,它们都会引发警报。您的网站是否刚刚被划线?Blam,虚假警报发疯了。是否有用户安装了新的应用程序来玩新的 NAT 穿越游戏?Blam,虚假警报来了。有人第一次安装 IPv6 吗?布拉姆。有人用不稳定的 TCP/IP 堆栈连接一部新手机,它会发出损坏的数据包?布拉姆。你明白了。
如果您想了解更多有关该领域创新挑战的信息,我建议您阅读以下研究论文:
封闭世界之外:关于使用机器学习进行网络入侵检测。罗宾·萨默和弗恩·帕克森。IEEE 安全与隐私 2010。
基准率谬误及其对入侵检测难度的影响。斯特凡·阿克塞尔森。RAID 1999。
ML 的问题在于训练。过度训练导致匹配精确的训练集,使学习不通用。
由于我目前的雇主为 Python 开发科学计算库,我可以指出您在 Disco 上的 map-reduce 以在日志文件中查找常见集群:https ://github.com/JensRantil/disco-slct
这不是神经网络,但它是一种分析数据的方法。
在 SLCT 的帮助下,可以快速构建日志文件模型,并且还可以识别不适合模型的罕见行(并且可能是异常的)。
由于人工智能是我的主要工作,我可以直接告诉你,单独的神经网络对于动态架构来说是无用的解决方案。
您正在寻找的是 NN <=> Operator 之间的自动化。
这通过以下方式工作,例如:
没有像您说的那样现有的应用程序,因为它不是以这种方式完成的,它没有未来,并且使用 NN 来制作动态架构本质上是糟糕的设计。
实际上使用的是贝叶斯分类以及其他启发式方法。示例实现是 Microsoft 的 Cloud Exchange。它也使用多层架构。
如果你真的想努力走科学的路,你需要实时分析每个安全层,并与操作员一起制定工作流程。
这个论坛不是问这种问题的好地方,因为没有人工智能专家,甚至没有工程师,你可以试试MSDN,哪个更好。