The Winnti group of malware was first reported in 2013 by Kaspersky Lab. Since that year, threat actors leveraging Winnti malware have victimized a diverse set of targets for varied motivations. The name ‘Winnti’ in public was previously used to signify a single actor, pronounced divergence in targeting and tradecraft between campaigns. This has led industry consensus to break up the tracking of the continued use of the Winnti malware under different actor clusters.
Also known as APT 41, Axiom and Blackfly, the Winnti Group has historically been tied to a number of prominent supply chain attacks that replace companies’ legitimate software with weaponised versions in order to infect the machines that install them. Its members have often targeted game developers and their users, inserting backdoors into various games’ build environments. Malware associated with Winnti Group include CCleaner, ShadowPad, ShadowHammer and, of course, Winnti, after which the ATP group is named.
Clusters of Winnti-related activity have become a complex topic in threat intelligence circles, with activity vaguely attributed to different codenamed threat actors. The threat actors utilizing this toolset have repeatedly demonstrated their expertise in compromising Windows-based environments. The expansion injected into Linux tooling indicates iteration outside of their traditional comfort zone. This indicates the OS requirements of their intended targets but it may also be an attempt to take advantage of a security telemitry blindspot in many enterprises, as is with Penquin Turla and APT28’s Linux XAgent variant. Utilizing a passive listener as a communications channel is characteristic of the Winnti developers’ foresight in needing a failsafe secondary command and control mechanisms. Chronicle researchers maintain an active interest in clusters of Winnti activity and our research is ongoing.
Researchers determined that a VMProtected packer is used in the PortReuse backdoor. The Winnti Group has also updated the ShadowPad malware with changes that include the randomization of module identifiers. Researchers from ESET have released new details about the Winnti Group which is known for its supply chain attacks.
The white paper released by ESET provides technical analysis of new malware strains used by the Winnti group. Researchers observed that the threat group has added a new backdoor dubbed PortReuse to its malware arsenal. Researchers determined that a unique packer is used in the PortReuse backdoor. After further analysis, they discovered a VMProtected packer that decrypts position-independent code using RC5, with a key based on a static string and the volume serial number of the victim’s hard drive.
Researchers noted that this is the same algorithm that was used by the second stage malware in the attacks against video game developers in 2018. They also observed another payload ‘ShadowPad malware’ with the same VMProtected packer.
Here the PortReuse backdoor does not use a C&C server. Rather, it waits for an incoming connection that sends a “magic” packet by injecting into an existing process to “reuse” a port that is already open. The backdoor employs two techniques to parse incoming data to search for the magic packet. Researchers said “Two techniques are used: hooking of the receiving function (WSARecv or even the lower level NtDeviceIoControlFile) or registering a handler for a specific URL resource on an IIS server using HttpAddUrl with a URLPrefix, to be able to parse incoming data to search for the magic packet.”
On the other hand, the ShadowPad malware retrieves the IP address and the protocol of the C&C server to use by parsing content from the Web set up by the attackers. Researchers noted that the Winnti Group has updated the ShadowPad malware with changes that include the randomization of module identifiers. On a separate note, ESET also reported that the Winnti Group actors continue to use and update their ShadowPad malware, which is still being updated and used multiple times in 2019, while still using the same modular approach with additional obfuscation techniques. A thorough investigation into reputed Chinese APT actor Winnti Group turned up a previously undocumented backdoor that was used to compromise a popular Asian mobile hardware and software vendor perhaps as a prelude to launching a major supply chain attack against its users.
Dubbed PortReuse, the modular malware is a passive network implant that piggybacks on an active process’s open TCP port and then lays in wait for a “magic packet” before launching malicious activity, according to ESET researchers Marc-Etienne M.Léveillé and Mathieu Tartare in a newly released white paper and corresponding blog post. ESET does not specifically name the Asian tech company that was targeted by the malware, but does note that it did notify the company and has been collaborating on a remediation of the attack.
ESET researchers describe PortReuse as a listening-mode modular backdoor that injects into a running process already listening on a TCP port. In essence, it is reusing an already open port; hence, its name. It then hooks the receiving function, and waits for a magic packet to trigger the malicious behavior. Legitimate traffic is forwarded to the real application, so it is effectively not blocking any legitimate activity on the compromised server. ESET further reports that PortReuse’s initial launch file arrives in one of three formats: embedded in a .NET application the launches the Winnti packer shellcode, a VBScript that deserialises and invokes a .NET object that launches the shellcode, or as an executable with shellcode directly at the entry point.
“Only a single file is written to disk to start PortReuse,” the white paper explains. “All other components exist in memory only,” presumably to minimise the malware’s footprint. Additionally, no command-and-control server address is coded into the malware, because it uses NetAgent, a module that handles TCP hooking, to listen in on open sockets for the attacker to connect directly to the compromised host.
NetAgent is just one of the malware’s components. The first of these components to be launched is InnerLoader, which looks for a specific process in which to inject NetAgent and another payload called SK3. The latter of these two payloads decrypts and processes encrypted traffic that is forwarded by NetAgent through a named pipe. The SK3 module comes with two packed executables that are included for the purpose of executing commands in other processes and proxying communications. In some PortReuse variants of, NetAgent and SK3 are packaged together. According to ESET, PortReuse typically targets ports 53, 80, 443, 3389 and 5985.
Knowing the magic packet that triggers the malicious activity, ESET researchers, with assistance from public search engine Censys, scanned the internet for potential victims of the PortReuse campaign and found eight IP addresses that replied with an HTTP response that matched PortReuse’s signature. All of them belonged to the Asian hardware/software manufacturer that was found to be.
Check out our other blogs here: