Technical Analysis of kkRAT

Zscaler ThreatLabz uncovered a malware campaign from early May 2025 targeting Chinese-speaking users that delivers three RAT families: ValleyRAT, FatalRAT, and a newly identified kkRAT which combines features from Ghost RAT and Big Bad Wolf. The campaign uses phishing pages on GitHub Pages, multi-stage shellcode loaders, BYOVD to disable AV/EDR callbacks, and kkRAT capabilities such as clipboard crypto-hijacking and installing RMM tools like Sunlogin and GotoHTTP. #kkRAT #GhostRAT #BigBadWolf #ValleyRAT #FatalRAT #Sunlogin #GotoHTTP

Keypoints

  • Zscaler ThreatLabz observed a campaign since early May 2025 that delivers ValleyRAT, FatalRAT, and a new RAT named kkRAT to Chinese-speaking victims via phishing installer pages hosted on GitHub Pages.
  • The attack is multi-stage: initial sandbox/VM evasion and API obfuscation, second-stage AV/EDR disabling (including BYOVD using RTCore64.sys), and a third-stage downloader that selects payloads from structured Base64 data.
  • kkRAT blends Ghost RAT-like network protocol (zlib compression plus XOR encryption) with Big Bad Wolf plugin exports and supports extensive plugins and commands for remote control, process/window management, proxying, and persistence.
  • The campaign targets specific China-focused security products, disables registered callbacks (ObRegister, MiniFilter, CmRegister) using borrowed RealBlindingEDR code, kills AV/EDR processes, modifies registry keys, and schedules tasks for persistence.
  • kkRAT performs device fingerprinting during registration, supports clipboard cryptocurrency address replacement, installs RMM tools (Sunlogin, GotoHTTP), and can relay network traffic via a SOCKS-like proxy plugin.
  • Zscaler provided detection names (Win32.RAT.kkRAT, Win32.RAT.ValleyRAT, Win32.Backdoor.FatalRAT) and published IOCs, including host hashes, phishing domains/URLs, and C2 IP:port addresses to aid detection and response.

MITRE Techniques

  • [T1566 ] Phishing – Threat actor used GitHub Pages to host phishing sites impersonating popular software installers (“phishing pages impersonating Ding Talk that ultimately delivers various RATs”).
  • [T1204.002 ] User Execution: Malicious File – Installer ZIP archives contain a malicious executable that the victim extracts and runs (“installer packages are ZIP archives that contain a malicious executable file”).
  • [T1497 ] Virtualization/Sandbox Evasion – Malware performs time stability checks and hardware checks, and manipulates PEB/Module lists to corrupt sandbox snapshots (“Using QueryPerformanceCounter… alter ProcessParameters->ImagePathName and ProcessParameters->CommandLine… traverse InLoadOrderModuleList… rewritten to %WINDIR%explorer.exe”).
  • [T1562.001 ] Impair Defenses: Disable or Modify Tools – Uses a vulnerable driver (RTCore64.sys) and RealBlindingEDR-derived code to remove registered callbacks and disable AV/EDR functions (“uses a known vulnerable driver (RTCore64.sys) to disable AV/EDR functionalities… remove registered system callbacks”).
  • [T1140 ] Deobfuscate/Decode Files or Information – Malware uses single-byte XOR operations and decryption of next-stage files and shellcodes (“applies single-byte XOR operations… to extract decryption keys for the next-stage files”).
  • [T1053.005 ] Scheduled Task – Creates a scheduled task running as SYSTEM to execute a batch script on every user logon to repeatedly kill AV/EDR processes (“creates a scheduled task to run with SYSTEM privileges to execute a batch script on every user logon”).
  • [T1547.001 ] Registry Run Keys / Startup Folder – Achieves persistence via startup folder, autorun registry keys, and logon scripts (“create a shortcut for the legitimate executable… add this shortcut to the startup folder for persistence” and registry modifications described for 360 Total Security).
  • [T1037.001 ] Boot or Logon Initialization Scripts: Logon Script (Windows) – Uses logon scripts for persistence (“Achieve persistence using logon script (HKCUEnvironmentUserInitMprLogonScript)”).
  • [T1010 ] Application Window Discovery – kkRAT collects presence of applications such as Telegram and WeChat in registration info (“char TG[40]; // Is Telegram present on the system? char WC[40]; // Is WeChat present on the system?”).
  • [T1057 ] Process Discovery – Commands and plugins provide process listing and termination capabilities (“DllProgress Provides process management capabilities, including listing active processes and terminating them”).
  • [T1082 ] System Information Discovery – kkRAT collects OS, CPU, memory, disk size, uptime, and AV list for fingerprinting (“REGISTRATIONINFO… OsVerInfoEx… CPUClockMhz… MemSize… DriverSize… char AV[80]; // List of AV’s installed”).
  • [T1083 ] File and Directory Discovery – Plugins enumerate autorun registry and installed applications (“DllQDXGL Enumerates and retrieves the list of values stored in the autorun registry key” and DllApp lists installed software).
  • [T1056.001 ] Input Capture: Keylogging – kkRAT includes keyboard capture functionality borrowed from Ghost RAT commands (“kkRAT borrows several network commands from Ghost RAT, such as … COMMAND_KEYBOARD”).
  • [T1113 ] Screen Capture – Main plugin exports support screen capture and remote desktop features (“DLLScreenProvides basic remote desktop screen management… used for screen capturing”).
  • [T1115 ] Clipboard Data – Implements clipboard scanning and replacement to hijack cryptocurrency addresses (“Scans the clipboard for cryptocurrency wallet addresses… Identified wallet addresses are replaced with the attacker’s wallet addresses”).
  • [T1219 ] Remote Access Tools – kkRAT is a RAT providing remote shell, desktop, file/process management, and plugin-based extensions (“Facilitates remote command execution via a shell interface… remote desktop screen management”).
  • [T1090 ] Proxy – Provides proxy functionality and SOCKS5 support via PlugProxy.dll and fnProxy export (“PlugProxy.dllConnSocksFunctions as a proxy… implements the SOCKS5 protocol using the go-socks5 library”).
  • [T1573 ] Encrypted Channel – Network communications use zlib compression followed by XOR encryption with a key embedded in the binary (“original data is first compressed using zlib and then encrypted using an XOR-based algorithm with a key embedded in the malware binary”).
  • [T1041 ] Exfiltration Over C2 Channel – Data and device fingerprinting are sent to C2 and can be used for exfiltration (“registration message… sent to the C2 server” and network commands to send data via proxy).
  • [T1529 ] System Shutdown/Reboot – Malware can stop or modify system processes and was observed to disable network adapters temporarily (impacting system state and AV/EDR communications) (“enumerates all active network adapters and temporarily disables them, severing AV/EDR communication”).

Indicators of Compromise

  • [File Hash ] First-stage EXE and loaders – 02cce1811ed8ac074b211717e404fbadffa91b0881627e090da97769f616c434, 71ca5dd59e90ec83518f9b33b2a8cdb6a0d6ad4c87293b27885fa2a8e8e07f1c
  • [File Hash ] Third-stage downloader and malicious DLL – 140426a92c3444d8dc5096c99fa605fd46cb788393c6522c65336d93cb53c6331 (second-stage shellcode), 80b7c8193f287b332b0a3b17369eb7495d737b0e0b4e82c78a69fa587a6bcf91a0f70c9350092b31ae77fc0d66efa007ccacbbc4b9355c877c1f64b29012178c (malicious DLL sideloaded)
  • [File Hash ] kkRAT payload – f557a90c1873eeb7f269ae802432f72cc18d5272e13f86784fdc3c38cbaca019
  • [Domain/URL ] Phishing and hosting infrastructure – https://github[.]com/sw124456 (phishing pages), https://youdaoselw[.]icu (fake installer page), https://kmhhla[.]top (fake installer page)
  • [URL ] Downloader and resource hosting – http://key2025.oss-cn-hongkong.aliyuncs.com/2025.bin, http://key2025.oss-cn-hongkong.aliyuncs.com/output.log, http://key2025.oss-cn-hongkong.aliyuncs.com/trx38.zip
  • [IP:Port ] C2 servers – 154.44.30.27:8250 (kkRAT C2), 156.238.238.111:8111 (ValleyRAT C2), 103.199.101.3:8081 (FatalRAT C2)


Read more: https://www.zscaler.com/blogs/security-research/technical-analysis-kkrat