🔍 Contexte
Publié le 20 juillet 2026 par ENKI WhiteHat (enki.co.kr), ce rapport d’analyse technique documente une campagne du groupe Kimsuky (lié à la Corée du Nord) ciblant des éditeurs de logiciels de groupware sud-coréens entre 2025 et début 2026.
🎯 Vecteurs d’accès initial
Deux vecteurs distincts ont été identifiés :
- Vendor A (novembre 2025) : exploitation d’une vulnérabilité RCE sur un serveur de messagerie exposé sur Internet, ayant conduit à l’installation de Gomir.
- Vendor B (décembre 2025) : spear-phishing ciblant un employé, avec installation d’un variant HttpTroy (MD5 :
633c3076c396f2200048d1b62da204d2, C2 :https://auth.samecloud.o-r.kr/index.php, persistance via tâche planifiée nomméeAhnlabUpdate).
🦠 Malwares analysés
Gomir
- Backdoor Linux écrit en Go, packé avec UPX, module path :
local.github.com/Github-Lin/Main - Persistance via systemd (root) ou crontab (non-root), se copie sous
/var/log/rsyslogd - Communication C2 via HTTPS POST (
https://commit.hanbiro.o-r.kr/index.php), chiffrement XOR mod 255 + Base64 URL-safe - Génère un bot ID au format
XX-[0-9a-f]{10}basé sur MD5 (username + hostname + MAC) - Supporte 17 codes de commande : shell, transfert de fichiers, proxy, hibernation, etc.
BirdTroy (nouveau)
- RAT Linux en Go, module path :
Bird/module - Partage les codes de commande et la logique de persistance avec Gomir et HttpTroy
- Supporte HTTP/3 (QUIC) pour contourner les appliances réseau TCP
- Communication via paquets custom encodés en Base64, avec checksum MD5
- C2 par défaut :
https://69.10.50.165:8443
DriveTroy (nouveau)
- Backdoor Linux en Go, build path :
C:/Users/jira/go/src/jira/payload/ - Utilise Google Drive comme canal C2 (polling toutes les secondes du fichier
E8C46207.cmd) - Configuration chiffrée en RC4 (clé :
@st34GMEgfesy4R#r21f) + Base64 URL-safe, stockée en fin de fichier - Compte Google de l’acteur :
vcenter.secmail@gmail.com(username :mo mo) - Persistance via systemd avec noms de service aléatoires parmi
syslogd,logd,cachelog
🔄 Activité post-compromission
- Mouvement latéral vers les clients des éditeurs compromis via des informations de configuration ou clés d’authentification volées sur les serveurs VOC (Voice of Customer)
- Falsification de pages de connexion groupware pour exfiltrer les identifiants en clair via HTTPS POST vers le C2
- Utilisation de DWAgent (outil légitime de contrôle à distance) pour accéder aux postes Windows compromis
- Déploiement d’un outil proxy basé sur yamux pour pivoter vers des segments réseau isolés
🏷️ Attribution
- Similitudes avec la campagne TrollSteler de Kimsuky (Gomir, GoBer/Endoor)
- Certificat HTTPS XAMPP par défaut sur tous les C2, ASN 19318 et 26666 historiquement associés à Kimsuky
- Username
jiradans le build path de DriveTroy retrouvé dans des documents leurres et PDB paths deloadDll.dlld’une campagne HttpSpy antérieure - Clé d’authentification proxy
dkanehahffk= frappe QWERTY de ‘아무도몰라’ (coréen pour ’nobody knows’)
📋 Type d’article
Rapport d’analyse technique publié par ENKI WhiteHat, visant à documenter la campagne, fournir des IoCs et des règles YARA pour la détection de Gomir, BirdTroy et DriveTroy.
🧠 TTPs et IOCs détectés
Acteurs de menace
- Kimsuky (state-sponsored) — orkl.eu · Malpedia · MITRE ATT&CK
TTP
- T1566 — Phishing (Initial Access)
- T1190 — Exploit Public-Facing Application (Initial Access)
- T1199 — Trusted Relationship (Initial Access)
- T1059.004 — Command and Scripting Interpreter: Unix Shell (Execution)
- T1204.002 — User Execution: Malicious File (Execution)
- T1543.002 — Create or Modify System Process: Systemd Service (Persistence)
- T1053.003 — Scheduled Task/Job: Cron (Persistence)
- T1027.002 — Obfuscated Files or Information: Software Packing (Defense Evasion)
- T1027.013 — Obfuscated Files or Information: Encrypted/Encoded File (Defense Evasion)
- T1036.004 — Masquerading: Masquerade Task or Service (Defense Evasion)
- T1140 — Deobfuscate/Decode Files or Information (Defense Evasion)
- T1070.004 — Indicator Removal: File Deletion (Defense Evasion)
- T1056.003 — Input Capture: Web Portal Capture (Credential Access)
- T1082 — System Information Discovery (Discovery)
- T1083 — File and Directory Discovery (Discovery)
- T1016 — System Network Configuration Discovery (Discovery)
- T1049 — System Network Connections Discovery (Discovery)
- T1021 — Remote Services (Lateral Movement)
- T1078 — Valid Accounts (Lateral Movement)
- T1570 — Lateral Tool Transfer (Lateral Movement)
- T1005 — Data from Local System (Collection)
- T1113 — Screen Capture (Collection)
- T1071.001 — Application Layer Protocol: Web Protocols (Command and Control)
- T1132.001 — Data Encoding: Standard Encoding (Command and Control)
- T1573.001 — Encrypted Channel: Symmetric Cryptography (Command and Control)
- T1090 — Proxy (Command and Control)
- T1102.002 — Web Service: Bidirectional Communication (Command and Control)
- T1041 — Exfiltration Over C2 Channel (Exfiltration)
- T1567.002 — Exfiltration to Cloud Storage (Exfiltration)
IOC
- IPv4 :
69.10.50.165— AbuseIPDB · VT · ThreatFox - IPv4 :
208.7.202.2— AbuseIPDB · VT · ThreatFox - IPv4 :
1.245.15.172— AbuseIPDB · VT · ThreatFox - Domaines :
auth.samecloud.o-r.kr— VT · URLhaus · ThreatFox - Domaines :
commit.hanbiro.o-r.kr— VT · URLhaus · ThreatFox - Domaines :
oobe.webjine.o-r.kr— VT · URLhaus · ThreatFox - Domaines :
global.webjine.o-r.kr— VT · URLhaus · ThreatFox - Domaines :
www.ilskdeid.o-r.kr— VT · URLhaus · ThreatFox - Domaines :
outh.shcloud.o-r.kr— VT · URLhaus · ThreatFox - URLs :
https://auth.samecloud.o-r.kr/index.php— URLhaus - URLs :
https://commit.hanbiro.o-r.kr/index.php— URLhaus - URLs :
https://oobe.webjine.o-r.kr/index.php— URLhaus - URLs :
https://global.webjine.o-r.kr/index.php— URLhaus - URLs :
http://www.ilskdeid.o-r.kr:8000/— URLhaus - URLs :
https://outh.shcloud.o-r.kr:8443— URLhaus - URLs :
https://69.10.50.165:8443— URLhaus - MD5 :
e6c6fa32da47d9341b778bfa424abb4c— VT · MalwareBazaar - MD5 :
b1c72139f2cdd9419562369fc6ced4fc— VT · MalwareBazaar - MD5 :
84e9b066bebd49036b7fc71b5f5f8d83— VT · MalwareBazaar - MD5 :
e911f8f7c49476806ada37f3ebb7a28a— VT · MalwareBazaar - MD5 :
aa61e76255a6e13313439655bc02bdf5— VT · MalwareBazaar - MD5 :
ca98a51cebdc802d255030b4baa44ca0— VT · MalwareBazaar - MD5 :
c2e37232556357944a04edf1dec3934b— VT · MalwareBazaar - MD5 :
a452a860f973c7a43ea804c17e9427d2— VT · MalwareBazaar - MD5 :
633c3076c396f2200048d1b62da204d2— VT · MalwareBazaar - MD5 :
dff787bce68c7653495f153c0534cb96— VT · MalwareBazaar - Emails :
vcenter.secmail@gmail.com - Fichiers :
config.json - Fichiers :
cron.txt - Fichiers :
E8C46207.ses - Fichiers :
E8C46207.cmd - Fichiers :
E8C46207.res - Fichiers :
loadDll.dll - Chemins :
/var/log/rsyslogd - Chemins :
/etc/systemd/system/rsyslogd.service - Chemins :
/etc/shadow - Chemins :
C:/Users/jira/go/src/jira/payload/
Malware / Outils
- Gomir (backdoor)
- BirdTroy (rat)
- DriveTroy (backdoor)
- HttpTroy (rat)
- GoBer (backdoor)
- TrollSteler (stealer)
- DWAgent (tool)
- yamux proxy (tool)
🟢 Indice de vérification factuelle : 95/100 (haute)
- ✅ enki.co.kr — source reconnue (Rösti community) (20pts)
- ✅ 32380 chars — texte complet (fulltext extrait) (15pts)
- ✅ 37 IOCs dont des hashes (15pts)
- ✅ 4/9 IOCs confirmés (AbuseIPDB, ThreatFox, URLhaus, VirusTotal) (15pts)
- ✅ 29 TTPs MITRE identifiées (15pts)
- ✅ date extraite du HTML source (10pts)
- ✅ acteur(s) identifié(s) : Kimsuky (5pts)
- ⬜ pas de CVE à vérifier (0pts)
IOCs confirmés externellement :
69.10.50.165(ip) → VT (4/91 détections)auth.samecloud.o-r.kr(domain) → VT (5/91 détections)commit.hanbiro.o-r.kr(domain) → VT (5/91 détections)oobe.webjine.o-r.kr(domain) → VT (5/91 détections)
🔗 Source originale : https://www.enki.co.kr/en/media-center/blog/analysis-of-kimsuky-s-attack-on-a-south-korean-groupware-vendor-using-a-new-gomir-family-variant