问题标签 [mod-security2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 如何在我的自定义 Java 应用程序中集成 Mod 安全规则检查
我正在编写一个 java 应用程序,它从像 tomcat 这样的服务器获取 json 格式字符串的 http 日志。
我想根据 mod-security 规则检查这些 http 请求/响应对以进行审计。
我浏览了这个链接 - https://www.trustwave.com/Resources/SpiderLabs-Blog/ModSecurity-for-Java---BETA-Testers-Needed/
我为 Apache Web 服务器、Nginx 和 IIS 服务器获得了类似的链接。
但我的问题是 - 我无法访问 Web 服务器,我只有包含所有必需信息的 http 日志。
我可以将使用 JNI/JNA 的 mod_security 库集成到我的自定义 java 应用程序中,并使其与我的自定义格式输入一起工作吗?
上面的链接显示 mod_security 类将日志写入 tomcat 日志。
有什么方法可以将 mod-security 事件日志重定向到一些数据库,如 redis 或 elasticsearch 或者使用一些配置的 logstash?
mod-security - Modsecurity:removeWhitespace 不起作用
我有以下规则:
但是当我运行它时,我得到了响应:
请堆栈溢出图例;告诉我如何解决它:-)
apache - 为什么 SecFilterForceByteRange 和 modSecurity 中省略了 0?
SecFilterForceByteRange 1 255
modSecurity中的 , 是什么意思?一些 web 示例提供范围0 255
,一些1 255
. 为什么0
省略?
http://www.askapache.com/htaccess/modsecurity-htaccess-tricks/
apache - ModSecurity - 禁用记录到标准 Apache 错误日志
我想知道 ModSecurity Apache2 模块(版本 2.9.1)中是否有某种方式如何将错误消息记录到由 SecDebugLog 选项指定的日志文件中,但不将它们复制到标准的 Apache 错误日志文件中?
根据 ModSecurity 文档,错误消息在两个日志文件中总是加倍:级别 1-3 的消息被设计为有意义,并被复制到 Apache 的错误日志中。但我想把 ModSecurity 的东西分开,不要弄乱标准错误日志。
apache - Apache modsecurity 限制每 uri 每单位时间的命中
我正在尝试为 Apache 配置 modsecurity 以限制每单位时间可以访问给定资源的命中次数(比如说,每个资源每分钟 10 次命中,无论请求哪个 IP 地址)。资源具有“ https://myhost/my-resource/my-resource-id ”形式的 url 模式
据我了解这个片段,它告诉 modsecurity“为每个 request_uri 创建一个名为 uri 的变量,并为每个 request_uri 关联一个计数器,然后每 60 秒将其递减 10。如果当前的 uri 计数器达到 10 的值,则失败并显示错误代码429,否则增加它”这是我需要的。
此配置导致“未找到 uri 变量”错误,我不明白为什么。
如果我取消注释第一个 SecAction 并更改剩余配置以引用它,它可以工作(在 10 次快速调用后返回 429),但显然没有考虑 uri(它对任何资源都失败,例如 /my-resource/ 123 和 /my-resource/456)
有人可以提供一些帮助吗?我所有的尝试都惨遭失败,而且我对 Apache 的配置不是很熟悉,所以我想我在这里遗漏了一些重要的概念。
PS:Apache是v2.4,mod-security是v2.9
谢谢!
apache - 如何仅为文件和文件夹启用 mod_security 规则
禁用 OWASP SQL_ATTACK CRS RULE,我使用了这个
而且,我只希望它仅在文件夹( /Pay )和文件( /pay.php )上启用
有人可以启发我在 Apache 上使用 mod_security 吗?
security - 设置 Owasp crs 规则 创建规则时出错:无法解析操作员:第 56 行上的 detectXSS
在为 Modsecurity 添加 Owasp crs 规则并重新启动 apache 后,我在 REQUEST-941-APPLICATION-ATTACK-XSS.conf 文件中收到此错误。
请帮我解决这个问题
php - ModSecurity 规则给出 SQL 注入误报,生成 500 内部服务器错误,即使在使用 PHP PDO 准备好的语句时也是如此
TL;DR - 我的服务器上的默认 ModSecurity 规则在尝试提交包含单词“from”的 PHP 表单字段时生成 500 内部服务器错误,因为它将其视为可能的 SQL 注入,即使我正在使用PDO 准备好的语句。不确定解决此问题的最佳方法。
当尝试提交一个包含“将电子邮件从 x 更改为 x”的文本区域的表单时,我收到 500 内部服务器错误,并且我已将其缩小为罪魁祸首。根据我在日志中看到的内容,似乎表单提交被视为可能的 SQL 注入。我禁用了这个特定的规则(300016)作为测试,表单开始正常工作。
从 Apache 错误日志:
从 ModSecurity 审核日志:
ModSecurity 规则:
- ModSecurity 规则似乎有点限制,但是我宁愿不完全禁用它,因为它肯定有一些价值(我相信这个规则是在我的 WHM/cPanel 最近升级时自动实现的)
- 我见过的解决方案之一是为我尝试访问的文件(或文件夹)禁用此特定规则,但这只能解决一个域的这一部分的问题,而我服务器上的其他用户仍然可以遇到这个问题
- 产生错误的表单是使用 PDO 准备好的语句
我对 ModSecurity 不是很有经验,我真的不确定解决这个问题的最佳方法是什么,所以我想我会看看这里是否有人有任何建议。
PS - 由于表单在 ModSecurity 规则被禁用时有效,我认为表单本身不是问题,但以防万一......
形式
表格处理
mod-security2 - modsecurity 仅允许 1 个国家/地区
我目前在我的网络服务器上使用以下 modsecurity 配置来阻止国家/地区:
现在对于一个新项目,我希望只允许某些国家/地区。这可以使用阻止所有流量的默认规则和类似以下允许国家/地区的规则来完成吗?
regex - Modsecurity2 正则表达式与外部文件或在规则中使用 OR 与操作符
我正在尝试为 ModSecurity 建立一系列规则来阻止坏机器人。
但是这种方法并不好,因为 ModSecurity 使用 withcontains
而不是 begin。
我认为最好的方法是为每个组使用规则
尝试
但这是行不通的。