Snort 3 入侵检测系统最终测试版

思科 提交 完全重新设计的攻击预防系统的最终测试版 喷鼻3,也称为 Snort++ 项目,自 2005 年以来一直断断续续地进行。 候选版本计划于今年晚些时候发布。

在新的分支中,产品的概念被彻底重新思考,架构也被重新设计。 在准备新分支时强调的领域中,有配置和运行Snort的简化、配置自动化、规则构建语言的简化、所有协议的自动检测、提供用于从命令行进行控制的shell、主动使用具有不同处理程序对单个配置的共享访问的多线程。

已实施以下重大创新:

  • 已经过渡到新的配置系统,提供简化的语法并允许使用脚本动态生成设置。 LuaJIT用于处理配置文件。 基于 LuaJIT 的插件提供了规则和日志系统附加选项的实现;
  • 用于检测攻击的引擎已经现代化,规则已经更新,并且添加了在规则中绑定缓冲区(粘性缓冲区)的能力。 使用Hyperscan搜索引擎,可以在规则中使用基于正则表达式的快速且更准确的模板;
  • 为 HTTP 添加了新的自省模式,该模式是会话状态的,涵盖了测试套件支持的 99% 的情况 HTTP 规避者。 HTTP/2 支持的代码正在开发中;
  • 深度包检测模式的性能得到显着提高。 增加了多线程数据包处理能力,允许同时执行多个线程和数据包处理程序,并根据 CPU 核心数量提供线性可扩展性;
  • 实现了配置和属性表的公共存储库,该存储库在不同子系统之间共享,由于消除了重复信息,显着减少了内存消耗;
  • 使用 JSON 格式的新事件记录系统,可轻松与 Elastic Stack 等外部平台集成;
  • 向模块化架构的过渡,能够通过插件的连接来扩展功能,并以可替换插件的形式实现关键子系统。 目前,Snort 3 已经实现了数百个插件,涵盖了各个应用领域,例如,允许您添加自己的编解码器、内省模式、日志记录方法、规则中的操作和选项;
  • 自动检测正在运行的服务,无需手动指定活动网络端口。

自 2018 年发布的上次测试版本以来的变化:

  • 添加了对文件的支持,以快速覆盖相对于默认配置的设置;
  • 代码提供了使用 C++14 标准中定义的 C++ 构造的能力(构建需要支持 C++14 的编译器);
  • 添加了新的 VXLAN 处理程序;
  • 使用更新的算法替代实现改进了按内容搜索内容类型 博耶-摩尔 и 超扫描;
  • HTTP/2流量检查系统已基本就绪;
  • 由于使用多个线程来编译规则组,启动速度加快;
  • 添加了新的日志机制;
  • 改进了Lua错误检测并优化了白名单;
  • 已进行更改以实现即时重新加载设置;
  • 新增RNA(实时网络感知)检查系统,收集网络上可用的资源、主机、应用程序和服务的信息;
  • 为了简化配置,已弃用 snort_config.lua 和 SNORT_LUA_PATH 的使用。

来源: opennet.ru

添加评论