ModSecurity是一个开源的、跨平台的Web应用防火墙(WAF)
作者:Sec-Labs | 发布时间:
Libmodsecurity是ModSecurity v3项目的一个组成部分。该库的代码库作为ModSecurity连接器的接口,接收网络流量并应用传统的ModSecurity处理。一般来说,它提供了加载/解释以ModSecurity SecRules格式编写的规则的能力,并将它们应用于由你的应用程序通过连接器提供的HTTP内容。

如果你正在寻找适用于Apache的ModSecurity(又称ModSecurity v2.x),它仍在维护中,可在这里找到。
这个项目和旧的 ModSecurity (v2.xx) 有什么区别?
- 已删除所有 Apache 依赖项
- 更高的性能
- 新的功能
- 新架构
Libmodsecurity 是对 ModSecurity 平台的完全重写。 最初设计 ModSecurity 项目时,它只是一个 Apache 模块。 随着时间的推移,由于大众的需求,该项目已经扩展,以支持其他平台,包括(但不限于)Nginx 和 IIS。 为了满足对额外平台支持不断增长的需求,有必要删除该项目底层的 Apache 依赖项,使其更加独立于平台。
由于这个目标,我们重新构建了 Libmodsecurity,使其不再依赖于 Apache Web 服务器(在编译和运行时)。 这样做的一个副作用是,在所有平台上,用户都可以期待更高的性能。 此外,我们借此机会为用户长期寻求的一些新功能奠定了基础。 例如,我们希望原生支持 JSON 格式的审计日志,以及未来版本中的许多其他功能。
它不再只是一个模块。
'ModSecurity' 分支不再包含传统上打包在一起的传统模块逻辑(用于 Nginx、Apache 和 IIS)。 相反,此分支仅包含此项目的库部分 (libmodsecurity)。 这个库被我们称为“连接器”的东西所消耗,这些连接器将与您的网络服务器连接,并为库提供它可以理解的通用格式。 这些连接器中的每一个都作为单独的 GitHub 项目进行维护。 例如,Nginx 连接器由 ModSecurity-nginx 项目 ( https://github.com/SpiderLabs/ModSecurity-nginx ) 提供。
保持这些连接器分开允许每个项目有不同的发布周期、问题和开发树。 此外,这意味着当您安装 ModSecurity v3 时,您只会得到您需要的东西,没有您不会使用的额外功能。