General Obfuscation
Note: for Javascript obfuscation go on Javascript & Obfuscation
URL encoding
Sometimes, WAFs may fail to properly URL decode your input during checks.
-> Encode the keywords, so SELECT
becomes %53%45%4C%45%43%54
.
Double URL encoding
Since the WAF decodes the input only once, it may fail to detect the threat. If the back-end server double-decodes it, the payload will be injected successfully.
HTML encoding
In certain HTML locations, like element text or attribute values, browsers automatically decode these references when parsing.
Server-side checks for alert() may miss it if you HTML encode characters.
When the browser renders the page, it will decode and execute the injected payload.
Leading zeros
HTML encode :
-> :
= :
<a href="javascript:alert(1)">Click me</a>
XML encoding
XML supports character encoding with the same numeric escape sequences as HTML.
Multiple encodings
(HTML) \
-> \
(Unicode) \u0061
-> a
SQL CHAR() function
CHAR(83)
= CHAR(0x53)
= S
SELECT
is blacklisted ->
Last updated