# Nginx WAF rules for PHP location / { set $attack_detected 0; if ($request_uri ~* "@lt 1") { set $attack_detected 1; } if ($request_uri ~* "@lt 1") { set $attack_detected 1; } if ($request_uri ~* "@rx (?:") { set $attack_detected 1; } if ($request_uri ~* "@rx (?:((?:.+)(?:["'][-0-9A-Z_a-z]+["'])?(.+|[^)]*string[^)]*)[sv"'--.0-9A-[]_a-{}]+([^)]*)|(?:[[0-9]+]|{[0-9]+}|$[^(-),.-/;x5c]+|["'][-0-9A-Zx5c_a-z]+["'])(.+))(?:;|$)?") { set $attack_detected 1; } if ($request_uri ~* "@lt 4") { set $attack_detected 1; } if ($request_uri ~* "@lt 4") { set $attack_detected 1; } if ($request_uri ~* "@lt 1") { set $attack_detected 1; } if ($request_uri ~* "@lt 1") { set $attack_detected 1; } if ($request_uri ~* "@pmFromFile php-errors.data") { set $attack_detected 1; } if ($request_uri ~* "@rx (?:b(?:f(?:tp_(?:nb_)?f?(?:ge|pu)t|get(?:s?s|c)|scanf|write|open|read)|gz(?:(?:encod|writ)e|compress|open|read)|s(?:ession_start|candir)|read(?:(?:gz)?file|dir)|move_uploaded_file|(?:proc_|bz)open|call_user_func)|$_(?:(?:pos|ge)t|session))b") { set $attack_detected 1; } if ($request_uri ~* "@rx (?i)