Lazarus masque ses charges avec du post-quantique (FlashHole)
Selon Kaspersky, l'opération FlashHole de Lazarus intègre ML-KEM-1024 dans son loader LPEClient pour chiffrer le C2 et masquer ses charges. Au moins trois entreprises sud-coréennes touchées.
L'équipe GReAT de Kaspersky détaille l'opération FlashHole, qu'elle attribue à Lazarus et dans laquelle une version révisée du loader LPEClient utilise ML-KEM-1024 — un algorithme d'encapsulation de clé post-quantique normalisé par le NIST — pour négocier des clés avec le serveur de commande et contrôle avant de charger d'autres malwares en mémoire. Le rapport Securelist est la source primaire ; UnderNews l'a relayé. Au moins trois organisations sud-coréennes sont confirmées touchées. C'est du renseignement sur la menace, pas une faille à corriger — l'intérêt est dans la surface de détection.
Attribution
Kaspersky estime « avec un niveau de confiance moyen à élevé » que le même acteur est responsable des opérations SyncHole et FlashHole, et place FlashHole comme la dernière vague de la campagne plus large « Cascade Hole ». L'usage continu de LPEClient est cité comme un indicateur fort à l'appui de cette hypothèse. Kaspersky nomme Lazarus ; on conserve cette formulation plutôt que de la présenter comme un fait établi.
La chaîne d'infection
D'après Securelist :
- Des liens de spear-phishing mènent vers un leurre hébergé sur GitHub Pages (faux CV, thème « Dream Job », photo générée par IA).
- La chaîne exploite probablement INISAFE CrossWeb EX V3 (v3.4.1.2), un client de sécurité très déployé en Corée du Sud ; le processus parent est
INISAFECrossWebEXSvc.exe. fsquirt.exes'exécute sous ce processus et reçoit un shellcode injecté portant la DLL TechHub, qui utilise GitHub comme canal C2.- TechHub déploie TouchHub, qui installe TouchShift en service par DLL side-loading (
mscoree.dll) ; TouchShift charge une seconde instance de TechHub en mémoire. - Cette instance déploie ClientHub et LPEClient ; LPEClient reçoit la charge finale — Cubridge — via ClientHub.
À quoi sert le chiffrement post-quantique
La réponse du C2 à LPEClient contient quatre blocs de 1 568 octets, chacun renfermant « une clé publique ML-KEM-1024 » ; LPEClient en dérive des paires clé partagée / chiffré. Les messages sont chiffrés avec GOST (Kaspersky note que le KrCERT l'avait d'abord décrit comme un schéma maison proche de DES, « mais il s'agit en réalité de l'algorithme GOST »), et une réponse déchiffrée par Threefish transporte les paramètres et l'exécutable de l'étape suivante. Pour Kaspersky, « l'usage de la cryptographie post-quantique montre que le groupe entend dissimuler les charges ultérieures » — une couverture face à une future analyse de trafic, appliquée à la livraison de malware et non à l'exfiltration.
Indicateurs de compromission
Kaspersky publie les IOC sur Securelist (extrait, verbatim) :
Loader ClientHub (liblzma.dll) MD5 : ff07641dc56914dd90ee0bd7404d7ad7
Domaines C2 : javadevhouse[.]co[.]kr, pythonapischool[.]com, cubedesign[.]co[.]kr,
fp-news[.]co[.]kr, k-wbc[.]co[.]kr, rcsh[.]co[.]kr, www[.]ksog[.]org
Chemins : C:\Windows\System32\RasConv\mscoree.dll
C:\Windows\System32\RasConv\ActivationStore.dat
C:\Program Files\Common Files\System\msadc\msadc.inc
Verdicts Kaspersky : MEM:Trojan.Win64.Shellcode.gen, Trojan.Win64.DLLhijack.*,
Trojan.Win64.Lazarus.*
Le jeu complet de hachages (six échantillons TouchShift mscoree.dll) figure dans le rapport Securelist ; récupérez-le là plutôt que dans ce résumé.
Que faire
- Chassez
fsquirt.exeetmscoree.dllexécutés sousINISAFECrossWebEXSvc.exeou d'autres parents inattendus — la chaîne de side-loading est le signal fiable. - Bloquez et alertez sur les domaines C2 ci-dessus ; surveillez les postes qui joignent GitHub Pages sans raison.
- Si vous exploitez INISAFE CrossWeb EX, vérifiez votre version au regard de l'avis AhnLab et du détail Securelist, et priorisez les actifs exposés côté Corée du Sud.
- Placez les chemins sous
RasConvetmsadcen détection EDR.
Contexte
L'adoption par Lazarus d'une primitive PQC normalisée pour son C2 est le vrai tournant — non parce que le chiffrement serait incassable aujourd'hui, mais parce qu'il trahit des opérateurs qui conçoivent pour un futur où le trafic capté reste confidentiel. Côté défense, le calcul ne change pas : la chaîne touche encore le disque et l'arbre des processus à des endroits prévisibles, et c'est là qu'on l'arrête.