Modsecurity 自定义 Lua 规则未捕获 REQUEST_HEADERS

问题描述 投票:0回答:0

我正在使用 Modsecurity 3.0.9 和 Nginx 版本:nginx/1.23.4 我创建了执行 Lua (Lua5.3) 脚本的自定义规则,如下所示:

SecRuleScript "/path/to/lua/script.lua" "id:1,phase:3,deny"

/path/to/lua/script.lua内容: 本地标头 = m.getvars("REQUEST_HEADERS")

卷曲错误: curl: (52) 来自服务器的空回复

/var/log/nginx/error.log: 2023/05/06 22:24:47 [警报] 80626#80626:工作进程 80628 在信号 6 上退出(核心已转储) 在抛出“std::invalid_argument”的实例后调用终止 what(): 未找到变量。 2023/05/06 22:44:32 [警报] 80626#80626:工作进程 80627 在信号 6 上退出(核心已转储)

REQUEST_HEADERS 无法识别的原因可能是什么?

谢谢!

尝试更改阶段但没有成功 - 阶段 1、阶段 2 和阶段 3.

虽然检索所有 REQUEST_HEADERS 不起作用,但指定某些标头有效,例如: local user_agent= m.getvars("REQUEST_HEADERS:User-Agent")

nginx mod-security lua-api mod-security2
© www.soinside.com 2019 - 2024. All rights reserved.