Skip to content
SPRYSOCKS

Chinese hackers have unleashed a never-before-seen Linux backdoor

SprySOCKS borrows from open source Windows malware and adds new tricks.

Dan Goodin | 45
Story text

Researchers have discovered a never-before-seen backdoor for Linux that’s being used by a threat actor linked to the Chinese government.

The new backdoor originates from a Windows backdoor named Trochilus, which was first seen in 2015 by researchers from Arbor Networks, now known as Netscout. They said that Trochilus executed and ran only in memory, and the final payload never appeared on disks in most cases. That made the malware difficult to detect. Researchers from NHS Digital in the UK have said Trochilus was developed by APT10, an advanced persistent threat group linked to the Chinese government that also goes by the names Stone Panda and MenuPass.

Other groups eventually used it, and its source code has been available on GitHub for more than six years. Trochilus has been seen being used in campaigns that used a separate piece of malware known as RedLeaves.

In June, researchers from security firm Trend Micro found an encrypted binary file on a server known to be used by a group they had been tracking since 2021. By searching VirusTotal for the file name, ​​libmonitor.so.2, the researchers located an executable Linux file named “mkmon.” This executable contained credentials that could be used to decrypt the libmonitor.so.2 file and recover its original payload, leading the researchers to conclude that “mkmon” is an installation file that delivered and decrypted libmonitor.so.2.

The Linux malware ported several functions found in Trochilus and combined them with a new Socket Secure (SOCKS) implementation. The Trend Micro researchers eventually named their discovery SprySOCKS, with “spry” denoting its swift behavior and the added SOCKS component.

SprySOCKS implements the usual backdoor capabilities, including collecting system information, opening an interactive remote shell for controlling compromised systems, listing network connections, and creating a proxy based on the SOCKS protocol for uploading files and other data between the compromised system and the attacker-controlled command server. The following table shows some of the capabilities:

Message ID Notes
0x09 Gets machine information
0x0a Starts interactive shell
0x0b Writes data to interactive shell
0x0d Stops interactive shell
0x0e Lists network connections (parameters: “ip”, “port”, “commName”, “connectType”)
0x0f Sends packet (parameter: “target”)
0x14, 0x19 Sends initialization packet
0x16 Generates and sets clientid
0x17 Lists network connections (parameters: “tcp_port”, “udp_port”, “http_port”, “listen_type”, “listen_port”)
0x23 Creates SOCKS proxy
0x24 Terminates SOCKS proxy
0x25 Forwards SOCKS proxy data
0x2a Uploads file (parameters: “transfer_id”, “size”)
0x2b Gets file transfer ID
0x2c Downloads file (parameters: “state”, “transferId”, “packageId”, “packageCount”, “file_size”)
0x2d Gets transfer status (parameters: “state”, “transferId”, “result”, “packageId”)
0x3c Enumerates files in root /
0x3d Enumerates files in directory
0x3e Deletes file
0x3f Creates directory
0x40 Renames file
0x41 No operation
0x42 Is related to operations 0x3c – 0x40 (srcPath, destPath)

After decrypting the binary and finding SprySOCKS, the researchers used the information they found to search VirusTotal for related files. Their search turned up a version of the malware with the release number 1.1. The version Trend Micro found was 1.3.6. The multiple versions suggest that the backdoor is currently under development.

The command-and-control server that SprySOCKS connects to has major similarities to a server that was used in a campaign with a different piece of Windows malware known as RedLeaves. Like SprySOCKS, RedLeaves was also based on Trochilus. Strings that appear in both Trochilus and RedLeaves also appear in the SOCKS component that was added to SprySOCKS. The SOCKS code was borrowed from the HP-Socket, a high-performance network framework with Chinese origins.

Trend Micro is attributing SprySOCKS to a threat actor it has dubbed Earth Lusca. The researchers discovered the group in 2021 and documented it the following year. Earth Lusca targets organizations around the world, primarily in governments in Asia. It uses social engineering to lure targets to watering-hole sites where targets are infected with malware. Besides showing interest in espionage activities, Earth Lusca seems financially motivated, with sights set on gambling and cryptocurrency companies.

The same Earth Lusca server that hosted SprySOCKS also delivered the payloads known as Cobalt Strike and Winnti. Cobalt Strike is a hacking tool used by security professionals and threat actors alike. It provides a full suite of tools for finding and exploiting vulnerabilities. Earth Lusca was using it to expand its access after getting an initial toehold inside a targeted environment. Winnti, meanwhile, is the name of both a suite of malware that has been in use for more than a decade as well as the identifier for a host of distinct threat groups, all connected to the Chinese government's intelligence apparatus, which has been among the world’s most prolific hacking syndicates.

Monday’s Trend Micro report provides IP addresses, file hashes, and other evidence that people can use to determine if they've been compromised. Earth Lusca generally infects systems using recently fixed vulnerabilities often referred to as n-days. Timely patching is the best defense. Monday's report provided no additional details on prevention or removal of the malware.

Photo of Dan Goodin
Dan Goodin Senior Security Editor
Dan Goodin is Senior Security Editor at Ars Technica, where he oversees coverage of malware, computer espionage, botnets, hardware hacking, encryption, and passwords. In his spare time, he enjoys gardening, cooking, and following the independent music scene. Dan is based in San Francisco. Follow him at @dangoodin on Mastodon. Contact him on Signal at DanArs.82.
45 Comments