diff --git a/lib/core/enums.py b/lib/core/enums.py index 785daf95e..64e074ca2 100644 --- a/lib/core/enums.py +++ b/lib/core/enums.py @@ -177,6 +177,7 @@ class HTTP_HEADER: TRANSFER_ENCODING = "Transfer-Encoding" URI = "URI" VIA = "Via" + X_POWERED_BY = "X-Powered-By" class EXPECTED: BOOL = "bool" diff --git a/waf/safe3.py b/waf/safe3.py index d1aaacfc5..70db14140 100644 --- a/waf/safe3.py +++ b/waf/safe3.py @@ -17,7 +17,7 @@ def detect(get_page): for vector in WAF_ATTACK_VECTORS: page, headers, code = get_page(get=vector) - retval = re.search(r"Safe3WAF", headers.get("X-Powered-By", ""), re.I) is not None + retval = re.search(r"Safe3WAF", headers.get(HTTP_HEADER.X_POWERED_BY, ""), re.I) is not None retval |= re.search(r"Safe3 Web Firewall", headers.get(HTTP_HEADER.SERVER, ""), re.I) is not None if retval: break diff --git a/waf/safedog.py b/waf/safedog.py index f4bc339ec..8d11c511c 100644 --- a/waf/safedog.py +++ b/waf/safedog.py @@ -17,9 +17,9 @@ def detect(get_page): for vector in WAF_ATTACK_VECTORS: page, headers, code = get_page(get=vector) - retval = re.search(r"WAF/2.0", headers.get("X-Powered-By", ""), re.I) is not None + retval = re.search(r"WAF/2\.0", headers.get(HTTP_HEADER.X_POWERED_BY, ""), re.I) is not None retval |= re.search(r"Safedog", headers.get(HTTP_HEADER.SERVER, ""), re.I) is not None - retval |= re.search(r"safedog", headers.get("Set-Cookie", ""), re.I) is not None + retval |= re.search(r"safedog", headers.get(HTTP_HEADER.SET_COOKIE, ""), re.I) is not None if retval: break