đ Contexte
PubliĂ© le 18 juin 2026 par VojtÄch Krejsa, chercheur chez Gen Digital, cet article constitue une analyse technique approfondie du mĂ©canisme de contournement de l’Application-Bound Encryption (ABE) implĂ©mentĂ© dans le stealer Vidar, version 2.1.
đ§© Technique de bypass ABE
Vidar adopte une approche similaire à Remus/Lumma en extrayant la v20_master_key directement depuis la mémoire du navigateur, mais avec une méthode distincte en deux phases :
Phase 1 â Localisation de la clĂ© en mĂ©moire
- Si le navigateur est dĂ©jĂ en cours d’exĂ©cution, Vidar crĂ©e un fork du processus via
NtCreateProcessExavecSectionHandle = NULL, produisant un snapshot mĂ©moire statique (copy-on-write, sans threads). - Si aucun navigateur n’est actif, Vidar crĂ©e un bureau isolĂ© (
CreateDesktopA) nommĂ©v20_%det lance le navigateur avec--no-first-run --disable-gpu about:blank. - Jusqu’Ă 64 processus navigateur sont Ă©numĂ©rĂ©s et traitĂ©s indĂ©pendamment.
- La mémoire est scannée via
NtQueryVirtualMemoryetNtReadVirtualMemory, ciblant les rĂ©gionsMEM_COMMIT,MEM_PRIVATE,PAGE_READONLYouPAGE_READWRITE(jusqu’Ă 4096 rĂ©gions). - Le scan parallĂšle (64 threads) recherche un pattern de 32 octets :
76 32 30 00 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? 03 00 00 00 00 01 ?? ??correspondant Ă un nĆud deChromium::Encryptor::KeyRing. - Un systĂšme de vote majoritaire filtre les candidats.
Phase 2 â DĂ©chiffrement via injection APC
- La clé est protégée par
CryptProtectMemoryavec le flagCRYPTPROTECTMEMORY_SAME_PROCESS, nĂ©cessitant une exĂ©cution depuis le processus navigateur. - Vidar sĂ©lectionne l’une de deux mĂ©thodes d’injection APC selon la prĂ©sence d’ESET ou Bitdefender :
- MĂ©thode « classic » (si ESET/Bitdefender dĂ©tectĂ©) : crĂ©ation d’un thread suspendu via
CreateRemoteThread(start addressNtTestAlert), queue APC viaNtQueueApcThread, reprise du thread. - Méthode « special » (sinon) : énumération des threads existants via
CreateToolhelp32Snapshot/Thread32First/Thread32Next, ouverture viaNtOpenThread, injection viaNtQueueApcThreadEx2avecQUEUE_USER_APC_FLAGS_SPECIAL_USER_APC(exécution immédiate, sans état alertable requis).
- MĂ©thode « classic » (si ESET/Bitdefender dĂ©tectĂ©) : crĂ©ation d’un thread suspendu via
- La routine APC injectée est
CryptUnprotectMemoryappelĂ©e avec l’adresse candidate, taille 32 octets, etCRYPTPROTECTMEMORY_SAME_PROCESS. - Vidar crĂ©e un second fork pour lire la clĂ© dĂ©chiffrĂ©e et vĂ©rifie via dĂ©chiffrement AES-256-GCM (
BCryptDecrypt). - AprÚs lecture, Vidar réinjecte
CryptProtectMemorypour restaurer l’Ă©tat du navigateur. - En cas d’Ă©chec total, Vidar termine tous les processus navigateur, les redĂ©marre et rĂ©pĂšte le cycle.
đ IoC
- SHA1 Vidar 2.1 :
459daa809751e73f60fbbe4384a7d1653c36bb06945e4eb363527092424110a
đ Nature de l’article
Il s’agit d’une publication de recherche technique Ă visĂ©e CTI, documentant prĂ©cisĂ©ment les mĂ©canismes internes d’un stealer actif pour permettre la dĂ©tection et la comprĂ©hension de ses techniques d’Ă©vasion.
đ§ TTPs et IOCs dĂ©tectĂ©s
Acteurs de menace
- Vidar (cybercriminal) â
TTP
- T1055.004 â Process Injection: Asynchronous Procedure Call (Defense Evasion)
- T1055 â Process Injection (Defense Evasion)
- T1005 â Data from Local System (Collection)
- T1003 â OS Credential Dumping (Credential Access)
- T1057 â Process Discovery (Discovery)
- T1082 â System Information Discovery (Discovery)
- T1497.001 â Virtualization/Sandbox Evasion: System Checks (Defense Evasion)
- T1539 â Steal Web Session Cookie (Credential Access)
- T1555.003 â Credentials from Password Stores: Credentials from Web Browsers (Credential Access)
IOC
- SHA1 :
459daa809751e73f60fbbe4384a7d1653c36bb06945e4eb363527092424110aâ VT · MalwareBazaar
Malware / Outils
- Vidar (stealer)
- Remus (stealer)
- Lumma (stealer)
- VoidStealer (stealer)
đĄ Indice de vĂ©rification factuelle : 51/100 (moyenne)
- ⏠gendigital.com â source non rĂ©fĂ©rencĂ©e (0pts)
- â 14308 chars â texte complet (fulltext extrait) (15pts)
- â 1 IOC(s) (6pts)
- ⏠pas d’IOC vĂ©rifiĂ© (0pts)
- â 9 TTPs MITRE identifiĂ©es (15pts)
- â date extraite du HTML source (10pts)
- â acteur(s) identifiĂ©(s) : Vidar (5pts)
- ⏠pas de CVE à vérifier (0pts)
đ Source originale : https://www.gendigital.com/blog/insights/research/inside-vidar-abe-bypass