Basic Payloads
Inject after shell metacharacters: the app concatenates your input into a system call, so append a second command with a separator.Blind Detection
When there’s no visible output, use time delays or out-of-band callbacks to confirm execution.Bypass Filters
Filters often look for specific characters or keywords: use IFS, brace expansion, or string splitting to reconstruct the command without triggering them.${IFS} works in bash and sh but not in fish.
username POST parameter directly into a shell command, and a literal & in the body would split the parameter before the shell saw it. Replacing spaces with ${IFS} and injecting after a ; separator gives a dropper one-liner that passes through both the URL decoder and the filter.