Ceplin Command Identifier

Identifier / Programs / Linux and Unix

make

Task runner for targets described in Makefile. Mostly used to control the compilation of an executable from source code. tldr-pages

GTFOBins file-read, file-write, shell 1 ATT&CK technique 3 documented commands

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

How make is abused

documented by GTFOBins

file-read

-s
--eval

file-write

-s
--eval

shell T1059.004 Command and Scripting Interpreter: Unix Shell

--eval

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

3 documented commands

from GTFOBins, each read by the identifier

file-read unprivileged, with sudo, as SUID

make -s --eval='$(file >/dev/stdout,$(file </path/to/input-file))' .
Identify

file-write unprivileged, with sudo, as SUID

make -s --eval='$(file >/path/to/output-file,DATA)' .
Identify

shell unprivileged, with sudo, as SUID

make --eval='$(shell /bin/sh 1>&0)' .
Identify

None of the 3 commands the identifier reads trips a Sigma process-creation rule. These commands are 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 make. The identifier reads the line of each that runs make.

What detects it

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

Everyday use

from tldr-pages, CC BY 4.0

Call the first target specified in the Makefile (usually named "all")

Call a specific target

make installIdentify

Call a specific target, executing 4 jobs at a time in parallel

make --jobs 4 targetIdentify

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