Ceplin Command Identifier

Identifier / Programs / Linux and Unix

timeout

Run a command with a time limit. tldr-pages

GTFOBins shell 1 ATT&CK technique 1 documented command

Opens the identifier with your command. It is read in your browser and sent nowhere.

How timeout is abused

documented by GTFOBins

shell T1059.004 Command and Scripting Interpreter: Unix Shell

Each abuse is GTFOBins's category and the options and words it uses; the full write-up is on GTFOBins's page for timeout.

1 documented command

from GTFOBins, each read by the identifier

shell unprivileged, with sudo, as SUID

timeout 0 /bin/sh
Identify

As SUID:

timeout 0 /bin/sh -p

The command the identifier reads trips no Sigma process-creation rule. This command is 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 timeout. The identifier reads the line that runs timeout.

What detects it

Sigma process creation rules
T1059.004Command and Scripting Interpreter: Unix Shell

Everyday use

from tldr-pages, CC BY 4.0

Run sleep 10 and terminate it after 3 seconds

timeout 3s sleep 10Identify

Send a signal to the command after the time limit expires (TERM by default, kill -l to list all signals)

timeout --signal INT 5s sleep 10Identify

Send verbose output to stderr showing signal sent upon timeout

timeout --verbose 0.5s commandIdentify

None of the 3 examples the identifier reads matches GTFOBins abuse or trips a Sigma process-creation rule.

Options

6 in toybox
Show every option of timeout
-iOnly kill for inactivity (restart timeout when command produces output)
-k DURATIONSend KILL signal if child still running this long after first signal
-s SIGNALSend specified signal (default TERM)
-vVerbose
--foregroundDon't create new process group
--preserve-statusExit with the child's exit status