
Hackers often show great creativity when setting up command and control (C2) infrastructure. One new campaign has been seen using Discord for C2 and an emoji-based protocol âwhere the attacker sends commands to the malware by sending emojis to the command channel.â
So say security researchers at Volexity, in a blog post published on June 13. They attributed the campaign to a âsuspected Pakistan-based threat actorâ that is primarily targeting Indian government entities â some of which apparently often use a customised Linux desktop called BOSS.
(Who knew? We didnât. Shame on us. In India it really is the Year of Linux on the Desktopâ˘. Reading around this we learned that in 2023 India took another hardened Linux distribution to general availability called MayaOS that was set to be adopted by Indiaâs Ministry of Defense and subsequently the countryâs Army, their Navy and their Airforce. Know more about levels of adoption and indeed user experience? We'd love to hear from you.)
We digress.
Discord, originally a platform for gamers to communicate, has been seen being used before for C2, as has Telegram, queued print jobs, and the Slack API; the former via the C3 framework used in the Colonial Pipeline attack.
In general Red Teamers and Black Hats have been creative and prolific in creating C2 frameworks â one collection of examples is in a non-Stack owned Google Doc here; hit links at your own risk/in a sandbox. But this campaign is unique, not least in using emojis to control the malware.
As Volexity put it today: âAn authentication token and server ID are hardcoded inside [an] ELF [a way to store apps to be executed by a Linux-based computer], which are used to access the Discord server. The malware creates a dedicated channel for itself in the Discord server, meaning each channel in the server represents an individual victim...
C2 communication takes place using an emoji-based protocol where the attacker sends commands to the malware by sending emojis to the command channel, with additional parameters following the emoji where applicable," said Volexity, sharing the below Emoji commands.
Emoji | Emoji Name | Command Description |
đââď¸ | Man Running | Execute a command on the victimâs device. This command receives an argument, which is the command to execute. |
đ¸ | Camera with Flash | Take a screenshot of the victimâs screen and upload it to the command channel as an attachment. |
đ | Backhand Index Pointing Down | Download files from the victimâs device and upload them to the command channel as attachments. This command receives one argument, which is the path of the file. |
âď¸ | Index Pointing Up | Upload a file to the victimâs device. The file to upload is attached along with this emoji. |
đ | Backhand Index Pointing Right | Upload a file from the victimâs device to Oshi (oshi[.]at), a remote file-storage service. This command receives an argument, which is the name of the file to upload. |
đ | Backhand Index Pointing Left | Upload a file from the victimâs device to transfer[.]sh, a remote file-sharing service. This command receives an argument, which is the name of the file to upload. |
đĽ | Fire | Find and send all files matching a pre-defined extension list that are present on the victimâs device. Files with the following extensions are exfiltrated: CSV, DOC, ISO, JPG, ODP, ODS, ODT, PDF, PPT, RAR, SQL, TAR, XLS, ZIP |
đŚ | Fox | Zip all Firefox profiles on the victimâs device. These files can be retrieved by the attacker at a later time. |
đ | Skull | Terminate the malware process using os.Exit(). |
Volexity's more technically detailed writeup on the campaign is here.
It notes that in previous versions of what it dubs the "DISGOMOJI" malware "both the authentication token and server ID were hardcoded in the malware binary. In the newer versions of DISGOMOJI, [threat group] UTA0137 has introduced changes to manage these dynamically from the C2 at runtime.
"Once the authentication token and server ID are retrieved, they are stored locally on the system in files named BID1.txt
and GID1.txt
, which are written to the malware directory .x86_64-linux-gnu
. Every time the malware runs, these locally saved values are synced with values retrieved from the server," Washington, D.C.-based cybersecurity firm Volexity said.
The malware maintains persistence on the system using cron; a way of scheduling jobs and can "survive reboots through the addition of a @reboot
entry to the crontab for itself."
Blackberry last month published a detailed writeup on a threat group with smoe apparent overlap. It noted that the group "primarily employs phishing emails as the preferred method of delivery for their payloads, utilizing either malicious ZIP archives or links" and variations of GLOBSHELL, a custom-built file exfiltration Linux utility, but also noted some apparently clumsy operational security errors that exposed it operating from Pakistan.