Source: Rapid7 — Rapid7 Labs et l’équipe MDR publient une analyse technique d’une campagne attribuée à l’APT chinois Lotus Blossom, active depuis 2009 et ciblant surtout l’Asie du Sud-Est (et récemment l’Amérique centrale). L’enquête met au jour le backdoor sur mesure “Chrysalis”, livré via un abus de l’infrastructure de distribution de Notepad++, et un loader exploitant le framework Microsoft Warbird.

• Chaîne d’infection et loaders. L’accès initial est en ligne avec l’abus public de Notepad++ (exécution de notepad++.exe puis GUP.exe avant un “update.exe” téléchargé depuis 95.179.213.0). “update.exe” est un installateur NSIS plaçant dans %AppData%\Bluetooth un exécutable légitime renommé (BluetoothService.exe, Bitdefender Submission Wizard) pour du DLL sideloading avec un log.dll malveillant. LogInit/LogWrite chargent, déchiffrent et exécutent du shellcode via une dérivation de clé (LCG + finaliseur MurmurHash-like) et résolution d’API par hash (FNV-1a + avalanche). Le shellcode déchiffre le module principal (clé XOR gQ2JR&9;), charge dynamiquement des DLLs, reconstruit des chaînes obfusquées et résout les APIs en marchant le PEB.

• Backdoor Chrysalis. Chrysalis chiffre/déchiffre sa config RC4 (clé qwhvb^435h&*7) contenant un C2 HTTPS mimant un endpoint de type chat API: https://api.skycloudcenter.com/a/chat/s/70521ddf-a2ef-4adf-9cf0-6d8e24aaa821 (résolvant vers 61.4.102.97, Malaisie). Il met en place une persistance (service ou RunKey), s’exécute avec des arguments (-i, -k) et collecte un identifiant unique basé sur FNV-1A. Le protocole C2 utilise RC4 (clé vAuig34%^325hGV), WinINet et un User-Agent Chrome. Le panneau de commandes inclut 16 opérations dont: reverse shell (4T), création de processus (4V), lecture/écriture/suppression de fichiers, énumération de disques/répertoires, transfert de fichiers en chunks, et auto-nettoyage (4). 🎯

• Artefacts supplémentaires et Warbird loader. Des traces montrent l’usage de Tiny C Compiler (svchost.exe-nostdlib avec libtcc.dll) pour charger du shellcode via conf.c, lequel télécharge un Cobalt Strike HTTPS beacon depuis api.wiresguard.com (clé XOR de config CRAZY). Un autre loader (“ConsoleApplication2.exe”) abuse Microsoft Warbird: il copie des données dans la mémoire de clipc.dll signée Microsoft et déclenche l’exécution via NtQuerySystemInformation avec l’argument non documenté SystemCodeFlowTransition (opération WbHeapExecuteCall), permettant d’exécuter du shellcode uniquement s’il réside dans la mémoire d’un binaire Microsoft signé. 🧬

• Attribution et portée. L’attribution à Lotus Blossom s’appuie sur de fortes similarités avec des travaux de Symantec (Bitdefender Submission Wizard renommé et sideloading) et sur des recoupements (public key Cobalt Strike partagée, domaines, techniques). Rapid7 conclut à une évolution de l’arsenal: combinaison de malware sur mesure (Chrysalis), frameworks commoditisés (Metasploit, Cobalt Strike), et adaptation rapide de recherches publiques (abuse de Warbird). Article de type analyse technique/menace visant à documenter l’outillage, la chaîne d’exécution et les IOCs/TTPs. 🔎

• IOCs (sélection) 🔗 Fichiers:

  • update.exe a511be5164dc1122fb5a7daa3eef9467e43d8458425b15a640235796006590c
  • [NSIS.nsi] 8ea8b83645fba6e23d48075a0d3fc73ad2ba515b4536710cda4f1f232718f53e
  • BluetoothService.exe 2da00de67720f5f13b17e9d985fe70f10f153da60c9ab1086fe58f069a156924
  • BluetoothService 77bfea78def679aa1117f569a35e8fd1542df21f7e00e27f192c907e61d63a2e
  • log.dll 3bdc4c0637591533f1d4198a72a33426c01f69bd2e15ceee547866f65e26b7ad
  • u.bat 9276594e73cda1c69b7d265b3f08dc8fa84bf2d6599086b9acc0bb374514660
  • conf.c f4d829739f2d6ba7e3ede83dad428a0ced1a703ec582fc73a4eee3df3704629a
  • libtcc.dll 4a52570eeaf9d27722377865df312e295a7a23c3b6eb991944c2ecd707cc990
  • admin 831e1ea13a1bd405f5bda2b9d8f2265f7b1db6c668dd2165ccc8a9c4c15ea7dd
  • loader1 0a9b8df968df41920b6ff07785cbfebe8bda29e6b512c94a3b2a83d10014d2fd
  • uffhxpSy 4c2ea8193f4a5db63b897a2d3ce127cc5d89687f380b97a1d91e0c8db542e4f8
  • loader2 e7cd605568c38bd6e0aba31045e1633205d0598c607a855e2e1bca4cca1c6e
  • 3yzr31vk 078a9e5c6c787e5532a7e728720cbafee9021bfec4a30e3c2be110748d7c43c5
  • ConsoleApplication2.exe b4169a831292e245ebdffedd5820584d73b129411546e7d3eccf4663d5fc5be3
  • system 7add554a98d3a99b319f2127688356c1283ed073a084805f14e33b4f6a6126fd
  • s047t5g.exe fcc2765305bcd213b7558025b2039df2265c3e0b6401e4833123c461df2de51a Réseau:
  • 95.179.213.0
  • api[.]skycloudcenter[.]com (résout vers 61.4.102.97)
  • api[.]wiresguard[.]com
  • 61.4.102.97
  • 59.110.7.32
  • 124.222.137.114

• MITRE ATT&CK TTPs 🧭

  • T1204.002 User Execution: Malicious File
  • T1036 Masquerading
  • T1027 Obfuscated Files or Information
  • T1027.007 Obfuscated Files or Information: Dynamic API Resolution
  • T1140 Deobfuscate/Decode Files or Information
  • T1574.002 DLL Side-Loading
  • T1106 Native API
  • T1055 Process Injection
  • T1620 Reflective Code Loading
  • T1059.003 Command and Scripting Interpreter: Windows Command Shell
  • T1083 File and Directory Discovery
  • T1005 Data from Local System
  • T1105 Ingress Tool Transfer
  • T1041 Exfiltration Over C2 Channel
  • T1071.001 Application Layer Protocol: Web Protocols (HTTP/HTTPS)
  • T1573 Encrypted Channel
  • T1547.001 Boot or Logon Autostart Execution: Registry Run Keys
  • T1543.003 Create or Modify System Process: Windows Service
  • T1480.002 Execution Guardrails: Mutual Exclusion
  • T1070.004 Indicator Removal on Host: File Deletion

🧠 TTPs et IOCs détectés

TTP

[‘T1204.002 User Execution: Malicious File’, ‘T1036 Masquerading’, ‘T1027 Obfuscated Files or Information’, ‘T1027.007 Obfuscated Files or Information: Dynamic API Resolution’, ‘T1140 Deobfuscate/Decode Files or Information’, ‘T1574.002 DLL Side-Loading’, ‘T1106 Native API’, ‘T1055 Process Injection’, ‘T1620 Reflective Code Loading’, ‘T1059.003 Command and Scripting Interpreter: Windows Command Shell’, ‘T1083 File and Directory Discovery’, ‘T1005 Data from Local System’, ‘T1105 Ingress Tool Transfer’, ‘T1041 Exfiltration Over C2 Channel’, ‘T1071.001 Application Layer Protocol: Web Protocols (HTTP/HTTPS)’, ‘T1573 Encrypted Channel’, ‘T1547.001 Boot or Logon Autostart Execution: Registry Run Keys’, ‘T1543.003 Create or Modify System Process: Windows Service’, ‘T1480.002 Execution Guardrails: Mutual Exclusion’, ‘T1070.004 Indicator Removal on Host: File Deletion’]

IOC

{‘hashes’: [‘a511be5164dc1122fb5a7daa3eef9467e43d8458425b15a640235796006590c’, ‘8ea8b83645fba6e23d48075a0d3fc73ad2ba515b4536710cda4f1f232718f53e’, ‘2da00de67720f5f13b17e9d985fe70f10f153da60c9ab1086fe58f069a156924’, ‘77bfea78def679aa1117f569a35e8fd1542df21f7e00e27f192c907e61d63a2e’, ‘3bdc4c0637591533f1d4198a72a33426c01f69bd2e15ceee547866f65e26b7ad’, ‘9276594e73cda1c69b7d265b3f08dc8fa84bf2d6599086b9acc0bb374514660’, ‘f4d829739f2d6ba7e3ede83dad428a0ced1a703ec582fc73a4eee3df3704629a’, ‘4a52570eeaf9d27722377865df312e295a7a23c3b6eb991944c2ecd707cc990’, ‘831e1ea13a1bd405f5bda2b9d8f2265f7b1db6c668dd2165ccc8a9c4c15ea7dd’, ‘0a9b8df968df41920b6ff07785cbfebe8bda29e6b512c94a3b2a83d10014d2fd’, ‘4c2ea8193f4a5db63b897a2d3ce127cc5d89687f380b97a1d91e0c8db542e4f8’, ’e7cd605568c38bd6e0aba31045e1633205d0598c607a855e2e1bca4cca1c6e’, ‘078a9e5c6c787e5532a7e728720cbafee9021bfec4a30e3c2be110748d7c43c5’, ‘b4169a831292e245ebdffedd5820584d73b129411546e7d3eccf4663d5fc5be3’, ‘7add554a98d3a99b319f2127688356c1283ed073a084805f14e33b4f6a6126fd’, ‘fcc2765305bcd213b7558025b2039df2265c3e0b6401e4833123c461df2de51a’], ‘domains’: [‘api.skycloudcenter.com’, ‘api.wiresguard.com’], ‘ips’: [‘95.179.213.0’, ‘61.4.102.97’, ‘59.110.7.32’, ‘124.222.137.114’]}


🔗 Source originale : https://www.rapid7.com/blog/post/tr-chrysalis-backdoor-dive-into-lotus-blossoms-toolkit/