Obscura en action : découverte et analyse de ce "nouveau" ransomware
Je viens de tomber sur un binaire qui, pour une fois, ne ressemble à aucun autre que j'ai pu analyser lors de mes explorations dans les méandres de l’internet.
C'est comme découvrir une nouvelle espèce dans la jungle numérique, un spécimen unique qui attise ma curiosité et me pousse à plonger encore plus profondément dans le monde fascinant du reverse engineering de malware.
Je ne suis pas allé en profondeur mais j’ai tout de même voulu partager cette courte analyse avec vous, ceux qui me lisent, s’il y en a.
Premier constat
Le checksum ne correspond pas, on observe des imports dynamiques, ainsi que de très longues chaînes encodées en Base64.
Chaîne Base64 extraite du binaire
Cette chaîne fait plus de 2160 bytes, je l’ai chargée dans CyberChef pour en obtenir le contenu.
Décodage de la chaîne Base64 dans CyberChef
Résultat : nous avons affaire à un ransomware attribué au groupe « Obscura ».
Attribution du binaire au groupe « Obscura »
Analyse du binaire
J’ai chargé l’échantillon dans IDA. Premier constat : il s’agit d’un binaire en Go, avec peu ou pas d’obfuscation.
Déroulé de l’exécution
Vérifie si le programme est déjà lancé en mode DAEMON.
Lit et valide le flag password.
Vérifie si l’utilisateur dispose des droits administrateur.
Prépare un relancement en mode caché avec la variable DAEMON=1.
Ajoute la variable d’environnement DAEMON=1.
Vérifie s’il est débogué ou exécuté dans un pays interdit.
Liste des pays exclus (Russie, Kazakhstan, Biélorussie, Arménie, etc.)
Relance du binaire avec les arguments et l’environnement nécessaires.
Résumé en mots simples
Si DAEMON=1 → le ransomware exécute directement son code principal (main_run).
Sinon :
Demande un mot de passe correspondant à MAIN_PASSWORD.
Vérifie si l’utilisateur est administrateur.
Se relance lui-même en mode caché (DAEMON=1).
Effectue un anti-debug et applique un géoblocage CIS.
Lance ensuite le daemon final.
Payload principal
Supprime les snapshots afin d’empêcher la restauration automatique des fichiers après chiffrement
(Red Flag EDR).
Identifie les cœurs CPU pour paralléliser le chiffrement.
Termine certains processus afin de libérer des fichiers critiques.
Dépose une note de rançon pour initier la communication avec la victime.
Un canal de communication est créé pour affecter les tâches de recherche et chiffrement aux workers.
Le chiffrement
Fichiers ≤ 1 Go : chiffrement complet.
Fichiers > 1 Go : chiffrement partiel (10 à 20% du début du fichier).
L’algorithme utilisé est ChaCha20, avec une clé éphémère par fichier et une extension de verrouillage ajoutée.
Points clés à noter
DAEMON check : exécution seulement si DAEMON=1.
CIS check : exclusion des machines situées dans certains pays de la CEI.
Multi-threading : un worker par cœur CPU pour accélérer le chiffrement.
Chiffrement : ChaCha20 + clé éphémère par fichier, extension de verrouillage ajoutée.
Shadow copy deletion : efface les sauvegardes locales pour empêcher la récupération.
Note de rançon : déposée pour forcer la communication et le paiement.
Conclusion
Voilà pour cette analyse de Obscura.
Si vous avez des questions ou des commentaires, n’hésitez pas à me contacter sur LinkedIn.