Bypassing Space and Operator Filters
Bypassing blacklisted operators
Most common operators (;, &&, ||) are frequently blacklisted. The newline character (%0a) is often not blocked because it may be needed in legitimate payloads. Newline works as an injection separator on both Linux and Windows:
127.0.0.1%0a whoami
Once confirmed as a working separator, address any remaining filtered characters (e.g., spaces).
Bypassing blacklisted spaces
Spaces are commonly blacklisted for inputs that should not contain them (like an IP address). Several alternatives exist:
Tabs (%09)
Both Linux and Windows accept tabs between command arguments:
127.0.0.1%0a%09whoami
$IFS (Linux)
The $IFS (Internal Field Separator) environment variable defaults to space + tab. Use ${IFS} wherever a space is needed:
127.0.0.1%0a${IFS}whoami
Brace expansion (Bash)
Bash automatically inserts spaces between brace-wrapped arguments — no space character needed:
{ls,-la}
Use in injection payloads as 127.0.0.1%0a{whoami} or with arguments like {command,-arg}.
See also: PayloadsAllTheThings — Writing commands without spaces for additional bypass patterns.