Researchers discovered a previously unknown fully-featured Python RAT called”PiXie” escalate the Windows admin privilege to the ransomware in the healthcare and education industries.
PyXie initially observed in 2018, since then it targets various industries and now deployed in an ongoing campaign via Cobalt Strike beacons as well as a downloader.
Researchers observed the strong evidence that the RAT has intended to deliver the ransomware and perform various other dangerous attacks, also it has similarities to the Shifu banking Trojan.
According to cylance research, PyXie has various key features of the following:
1. Legitimate LogMeIn and Google binaries used to sideload payloads.
2. A Trojanized Tetris app to load and execute Cobalt Strike stagers 3. from internal network shares.
4. Use of a downloader with similarities to Shifu named “Cobalt Mode”.
5. Use of Sharphound to collect active directory information from victims.
6. A custom compiled Python interpreter that uses scrambled opcodes to hinder analysis.
7. Use of a modified RC4 algorithm to encrypt payloads with a unique key per infected host.
How Does This Python RAT Attack
At the initial stage of infection, the campaign using the sideloading technique to leverage the legitimate apps to load the first stage of malware.
In this case, there are two following malicious DLL variant targeting some of the popular legitimate application,
- LMIGuardianDll.dll side-loaded by a signed binary (LmiGuardianSvc.exe) from LogMeIn.
- Goopdate.dll side-loaded by a signed binary (GoogleUpdate.exe) from Google.
Once it’s loaded, the malicious DLL tries to locate its encrypted payload, which is read from disk and then AES-128 decrypted in CBC mode by the loader.Â
As a result of the decryption of the payload, the second stage malware gets installed, and responsible for installing itself in setting up persistence, and install the third stage of malware.
It also collects the fingerprint of the infected system by generating the Hardware ID hash that is later used for seeding the various new functions, and also it creates the 2 mutexes to prevent multiple payload instances from running at the same time.
According to cylance research, “If the process infected with the second stage payload is running with administrator privileges, the malware will attempt to escalate its own privileges. It does so by creating and starting a temporary service, thus respawning and running as a LOCAL SYSTEM process. To remain stealthy, the malware deletes the temporary service from the Service Control Manager.”
Later the Python RAT performing the installation process where it loads the corresponding payload copied to a subdirectory within the %APPDATA% folder.
The installation targeting the various APPDATA directories such as Wireshark , WinRAR, TeamViewer, Notepad++, Mozilla, Apple Computer, AnyDesk and more.
In the third stage, researchers found a downloader that has been designated Cobalt Mode based on the debug information left in some of the analyzed samples.
Cobalt Made has a lot of primary function including,
- Connecting to a command and control (C&C) server
- Downloading an encrypted payload
- Decrypting the payload
- Mapping and executing the payload in the address space of the current process
- Spawning a new process for code injection
At the final stage, PyXie RAT compiled into executable, In this case, the malware authors compiled their own Python interpreter that loads an archive containing the PyXie RAT bytecode from memory.
PyXie RAT has dozens of functionalities including MITM attacks, Web-injects, Keylogging, Credential harvesting, Network Scanning, Cookie theft, Clearing logs, Recording video, Monitoring USB drives and exfiltrating data, WebDav server.
You can get the complete Indicator of Compromise and the complete technical analysis here.