mirror of
https://github.com/Safe3/uusec-waf.git
synced 2025-10-04 15:01:55 +08:00
### Feature Updates **Interface & Management** - Redesigned main program and management interface with improved aesthetics and usability, supports UI language switching (English/Chinese) - Added Rule Collections functionality: Create custom rule templates for batch configuration - Introduced whitelist rules that terminate further rule matching upon success - UUSEC WAF Rules API intelligent suggestions during advanced rule editing:ml-citation - New plugin management supporting hot-reloaded plugins to extend WAF capabilities **Protocol & Optimization** - Supports streaming responses for continuous data push (e.g., LLM stream outputs) - Enables Host header modification during proxying for upstream service access - Search engine validation: `waf.searchEngineValid(dns,ip,ua)` prevents high-frequency rules from affecting SEO indexing - Interception log report generation (HTML/PDF exports) - Automatic rotation of UUSEC WAF error/access logs to prevent performance issues **Security & Infrastructure** - Expanded free SSL certificate support: HTTP-01 & DNS-01 verification across 50+ domain providers - Customizable advanced WAF settings: HTTP2, GZIP, HTTP Caching, SSL protocols, etc - Cluster configuration: Manage UUSEC WAF nodes and ML servers via web UI
21 lines
No EOL
696 B
Lua
21 lines
No EOL
696 B
Lua
--[[
|
|
Rule name: Header vulnerability
|
|
Filtering stage: Request phase
|
|
Threat level: Critical
|
|
Rule description: The httpoxy vulnerability can be used to set up illegal proxies for CGI environments, thereby stealing sensitive server data. The if and lock_token HTTP headers can cause overflow attacks in CVE-2017-7269 (IIS 6.0 WebMAV remote code execution vulnerability).
|
|
--]]
|
|
|
|
|
|
if waf.reqHeaders.proxy ~= nil then
|
|
return true, "Proxy: " .. waf.reqHeaders.proxy, true
|
|
end
|
|
|
|
if waf.reqHeaders.lock_token ~= nil then
|
|
return true, "Lock-Token: " .. waf.reqHeaders.lock_token, true
|
|
end
|
|
|
|
if waf.reqHeaders["If"] ~= nil then
|
|
return true, "If: " .. waf.reqHeaders["If"], true
|
|
end
|
|
|
|
return false |