Keypoints
- UNC961 used publicly available exploit code against internet-facing servers (Log4Shell, Atlassian Confluence, JBoss CVE-2017-7504, Citrix ADC, WebLogic, GitLab) to gain initial access.
- Initial payloads included non-interactive bash reverse shells and web-shells (Base64-encoded, decoded via certutil), enabling hands-on-keyboard activity under server processes like java.exe and Tomcat.
- Post-exploitation tools deployed by UNC961 included HOLEPUNCH tunneler, HOLEPUNCH-like SOCKS tunnellers, HOLERUN and MUTEPUT services; UNC3966 later deployed BARNWORK, LIGHTBUNNY, and used WinSCP/SSH for exfiltration.
- Detection opportunities included network egress strings (âbash: no job control in this shellâ), application logs containing JNDI exploit strings, java.exe spawning cmd/certutil, and suspicious Service/Scheduled Task/BITS activity.
- UNC3966 performed extensive credential and domain discovery (LSASS dumps, DCSync, ntds.dit export, ADFind/ShareFinder) and compressed/exfiltrated NAS data with 7âZip and WinSCP over SSH.
- Managed Defense containment and proactive hunting limited impact in two incidents; in the third, a delayed response necessitated extensive remediation (rebuilds, password resets, data scoping).
MITRE Techniques
- [T1059.004] Command and Scripting Interpreter: Unix Shell â Used to establish bash TCP reverse shells; detection cue was the non-interactive shell message ( âbash: no job control in this shellâ )
- [T1190] Exploit Public-Facing Application â Exploited JBoss CVE-2017-7504 and Log4Shell (CVE-2021-44228) for initial access ( âtriggered CVE-2021-44228 by submitting the exploit into the applicationâs web portal loginâ )
- [T1505.003] Server Software Component: Web Shell â Wrote Base64-encoded web shells and deployed JSP web shells ( âecho > k.txtâ and resulting âhttpil.jspâ )
- [T1140] Deobfuscate/Decode Files or Information â Used certutil to decode Base64-encoded web shell payloads ( âcertutil -f -decode ⌠k.txt ⌠k.jspxâ )
- [T1018] Remote System Discovery â Performed network connectivity checks via ping and nslookup ( âping -n 1 119.9.3[.]198â )
- [T1069.001] Permission Groups Discovery: Local Groups â Enumerated local permission groups and users with net/user commands ( ânet userâ )
- [T1069.002] Permission Groups Discovery: Domain Groups â Queried domain group and trust information during discovery ( ânslookup /domainâ )
- [T1016] System Network Configuration Discovery â Collected interface/config data via ipconfig ( âipconfig /allâ )
- [T1033] System Owner/User Discovery â Queried logged-on users using quser ( âquserâ )
- [T1083] File and Directory Discovery â Used dir to enumerate file system contents ( âdir c:usersâ )
- [T1105] Ingress Tool Transfer â Downloaded additional tooling via wget and BITS (URLs and Wget user-agent âWget/1.11.4â and BITS jobs logged)
- [T1543.003] Create or Modify System Process: Windows Service â Installed persistence as Windows services (HOLERUN âwmhostâ, MUTEPUT âWindowsNTAppâ, TURNSIGN âWmiPrvâ)
- [T1053.005] Scheduled Task â Deployed tunneler/backdoor components as Scheduled Tasks (LIGHTBUNNY Task âMKSAuthâ, BARNWORK Task âMKSAuthâ)
- [T1197] BITS Jobs â Used Windows BITS to retrieve payloads ( âMicrosoft-Windows-Bits-Client/Operationalâ EID 59 entries referencing ms-prod19-live[.]com )
- [T1567] Exfiltration to Cloud Storage â Uploaded credential dumps and files to public file sharing services (uploaded LSASS dumps to âdropmefiles[.]comâ)
- [T1112] Modify Registry â Removed or altered Registry keys to cover tracks ( âreg delete âHKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefaultâ /va /fâ )
- [T1070.007] Indicator Removal on Host: Timestomping/Registry â Deleted Registry MRU and typed paths to erase evidence (registry delete commands shown)
- [T1047] Windows Management Instrumentation â Collected system info with wmic.exe ( âwmic /node:â10.0.0.1âł logicaldisk get deviceid,drivetype,âŚâ )
- [T1003.001] OS Credential Dumping: LSASS Memory â Dumped LSASS process memory via Task Manager (Taskmgr write âlsass.DMPâ)
- [T1560.001] Archive via 7âZip â Created compressed archives of NAS data with 7âZip before exfiltration (7zG.exe examples for Contracts and Accounting paths)
- [T1048] Exfiltration Over Alternative Protocols â Transferred large volumes over SSH/WinSCP to remote IPs (WinSCP connections to â104.149.170[.]183:22â and â23.227.203[.]214:22â)
- [T1078.002] Valid Accounts: Domain Accounts â Used a compromised domain administrator account for RDP and lateral movement ( âusing a compromised domain administrator accountâ )
- [T1021.001] Remote Services: RDP â Lateral movement via RDP sessions ( âmoved laterally through the environment over Remote Desktop Protocol (RDP)â )
- [T1059.001] Command and Scripting Interpreter: PowerShell â Executed PowerShell from backdoor processes for script execution (PowerShell command example launching a .ps1 script)
- [T1572] Protocol Tunneling â Employed tunneler tools wrapping custom protocols over SOCKS (LIGHTBUNNY and HOLEPUNCH/TURNSIGN usage described)
- [T1059.003] Command and Scripting Interpreter: Windows Command Shell â Launched tunneler binaries via cmd.exe ( âcmd.exe /c âC:UsersAdministratorAppDataLocalTempvmtools.exe 37.1.209[.]20 443âłâ )
- [T1135] Network Share Discovery â Used Invoke-ShareFinder/ShareFinder PowerShell to enumerate network shares ( âInvoke-ShareFinderâ and output files âsh.txtâ )
- [T1003.006] OS Credential Dumping: DCSync â Evidence of Mimikatz DCSync usage for domain credential access ( âMimikatz DCSyncâ )
- [T1003.003] OS Credential Dumping: NTDS.dit â Dumped Active Directory ntds.dit using ntdsutil (files ântds.ditâ and registry hive dumps listed)
- [T1136.002] Create Account: Domain Account â Created new domain user and added it to Domain Admins ( âcreated a new domain user account and added it to the Domain Adminsâ )
- [T1098] Account Manipulation â Modified domain privileges and accounts to maintain access (new domain admin account additions)
- [T1569.002] System Services: Service Execution â Executed PsExec and installed services then removed them (PsExec service install and âsc delete psexesvcâ)
Indicators of Compromise
- [MD5 hash] Malware samples â c55f4b123c645f9c5a1d00205ab2e61e (LIGHTBUNNY), 31c49b87463f4e4ce6ae4c442319d3a2 (HOLERUN)
- [IP address] Command-and-control / exfiltration endpoints â 104.149.170[.]183, 23.227.203[.]214 (WinSCP/SSH exfil targets), and 7 more IPs used for C2 and exploitation (e.g., 37.1.209[.]20, 107.181.187[.]184)
- [Domain / URL] Download and DNS indicators â ms-prod19-live[.]com (BITS download URLs: â/rehjhj8785780923853/abcâ, â/cdefâ), intensive[.]int (nslookup activity) and file[.]io / dropmefiles[.]com used for tool/download hosting and upload
- [File names] Deployed web shells and artifacts â httpil.jsp (BLUEBEAM web shell), k.txt / k.jspx (Base64-encoded web shell intermediate), HOW_DECRYPT.TXT (ransom note)
- [Service / task names] Persistence artifacts â Windows service names âwmhostâ, âWindowsNTAppâ, âWmiPrvâ and scheduled task names âMKSAuthâ, âMKS Update Toolsâ
UNC961 repeatedly used public exploit code to write and execute shells on vulnerable application servers: Log4Shell payloads logged to MobileIron Core spawned bash reverse shells (detected via the âbash: no job control in this shellâ network string), and JBoss deserialization (CVE-2017-7504) was used to echo Base64 payloads that were decoded with certutil into JSP web shells (k.txt â k.jspx â httpil.jsp). Operators performed discovery and persistence from those shells (ps / kill to remove other actors, net/quser/ipconfig/dir commands under java.exe), then installed tunnellers or backdoors (HOLEPUNCH, HOLEPUNCH-like SOCKS tools, HOLEPUNCH on UNIX/Windows, and later HOLERUN/MUTEPUT as Windows services) to maintain remote connectivity.
When web shells were present, adversaries executed sequences of actions: write Base64 payloads, decode to web-accessible files via certutil, run discovery commands (nslookup/ping/ipconfig/quser/net), and then stage additional tools via wget or BITS. In one incident UNC961 installed HOLERUN and MUTEPUT, later handing off access to UNC3966, which deployed BARNWORK and LIGHTBUNNY, used scheduled tasks and BITS/wget for persistence/downloads, dumped credentials (LSASS dumps, Mimikatz DCSync, ntds.dit via ntdsutil), compressed sensitive NAS data with 7âZip, and exfiltrated files over SSH with WinSCP to attacker-controlled IPs.
Detection and response opportunities include monitoring for non-interactive shell network strings (âbash: no job control in this shellâ), application logs containing JNDI exploit URIs, java.exe spawning cmd/certutil and writing Base64 files, suspicious BITS job entries referencing unfamiliar URLs, anomalous Wget user-agents, creation of unusual Windows services or scheduled tasks (service names and binary paths listed), large outbound SSH transfers, and registry deletions indicative of indicator removal. Containment actions that proved effective were isolating compromised servers, removing services/tasks, revoking/staggering credentials, rebuilding infected hosts, and enterprise password resets to prevent further lateral movement and ransomware deployment.
Read more: https://www.mandiant.com/resources/blog/unc961-multiverse-financially-motivated