RAT Telegram basé sur Rebex ciblant le Vietnam
Detection stack
- AIDR
- Alert
- ETL
- Query
Résumé
Un fichier CHM malveillant livré dans une archive ZIP déploie un exécutable Python véreux ainsi qu’un DLL C++ qui déchiffre une charge utile intégrée. Cette charge établit une persistance via un détournement de la shell Winlogon, une tâche planifiée et l’abus de MSBuild, puis lance un RAT Telegram basé sur .NET. Le malware communique avec un bot Telegram à l’aide d’un jeton codé en dur et supporte l’exécution de commandes, le remplacement de jeton et le téléchargement de fichiers. La campagne a été observée ciblant des victimes au Vietnam sans détections actuelles sur VirusTotal.
Enquête
L’analyse du fichier CHM a révélé un script qui a décompilé l’archive, effacé PYTHONHOME, et lancé un exécutable Python renommé avec un fichier de bytecode compilé. Le bytecode a ensuite chargé un DLL qui a déchiffré un blob DOCX crypté, extrait des composants supplémentaires et les a écrits dans des emplacements temporaires. Le DLL a créé des entrées dans le registre, planifié une tâche nommée Doute, et exécuté un MSBuild fichier XML pour charger un second DLL, qui a finalement déployé le RAT Telegram .NET. Le RAT reposait sur des identifiants de bot Telegram codés en dur pour le commandement et le contrôle.
Atténuation
Les défenseurs doivent bloquer l’exécution de fichiers CHM provenant de sources non fiables et restreindre l’utilisation de hh.exe, msbuild.exe, et PowerShell pour les scripts non signés ou suspects. La surveillance devrait se concentrer sur les modifications du registre Shell de Winlogon, la création de tâches planifiées inhabituelles, et les nouveaux DLL déposés dans les répertoires temporaires. Les organisations devraient également examiner le trafic API Telegram via les contrôles de proxy et appliquer un accès de moindre privilège pour les utilisateurs finaux.
Réponse
Et la tâche planifiée doivent être supprimées, les fichiers déposés effacés, et les paramètres du registre modifiés rétablis à un état sain connu. Tout jeton de bot Telegram exposé doit être immédiatement remplacé, et les défenseurs doivent continuer à surveiller toute activité supplémentaire de commandement et de contrôle. Une enquête judiciaire complète est recommandée pour déterminer si des données ont été exfiltrées. Les équipes de sécurité doivent identifier et isoler les hôtes affectés, collecter les preuves volatiles, extraire les DLLs et scripts malveillants pour analyse. La valeur de modifications du registre Shell Winlogon
Flux d’attaque
Détections
Points de persistance possibles [ASEPs – Hive Software/NTUSER] (via événement de registre)
Voir
Arrêt utilisé pour forcer un arrêt ou un redémarrage du système (via la ligne de commande)
Voir
LOLBAS HH – Arguments suspects du programme exécutable d’aide HTML (via la ligne de commande)
Voir
Binaire / Scripts suspects dans l’emplacement de démarrage automatique (via événement de fichier)
Voir
Exécution possible en écrivant un fichier avec l’extension Microsoft Compiled HTML Help (.chm) (via événement de fichier)
Voir
Abus possible de Telegram en tant que canal de commande et de contrôle (via requête DNS)
Voir
IOCs (HashSha256) pour détecter : RAT Telegram basé sur Rebex ciblant le Vietnam
Voir
Exécution de fichier CHM menant à une activité malveillante [Création de processus Windows]
Voir
Exécution de simulation
Prérequis : Le Check pré-vol du télémetrie & baseline doit avoir été réussi.
Justification : Cette section détaille l’exécution précise de la technique de l’adversaire (TTP) conçue pour déclencher la règle de détection. Les commandes et le récit reflètent directement les TTPs identifiés et visent à générer la télémetrie exacte attendue par la logique de détection.
-
Narratif d’attaque & Commandes
-
Livraison : L’attaquant livre un
fichier .chm(nomméUpdateHelp.chm) au destinataire. -
Décompilation : La victime (ou un script malveillant) exécute
hh.exeavec le-decompileflag pour extraire la charge intégrée :hh.exe -decompile C:TempPayloads C:UsersPublicUpdateHelp.chmCela génère l’événement de création de processus que la règle surveille (
hh.exe+-decompile). -
Exécution de charge utile – Interprète renommé : Parmi les fichiers extraits se trouve un interprète Python renommé (
_pJifgWSwPi.exe). L’attaquant le lance viacmd.exepour rester discret :cmd.exe /c "C:TempPayloads_pJifgWSwPi.exe -c "import os; os.system('whoami')""Cela remplit la
cmd.execondition de la règle. -
Proxy de binaire signé – Msbuild : La charge utile Python écrit un fichier
.projmalveillant, puis invoquemsbuild.exepour l’exécuter, atteignant la persistance ou l’exécution de code ultérieure :msbuild.exe C:TempPayloadsmalicious.proj /target:Build
-
-
Script de test de régression
#============================================================= # Simulation d'attaque basée sur CHM – Déclenche la règle Sigma #============================================================= # Variables $chmPath = "C:UsersPublicUpdateHelp.chm" $outFolder = "C:TempPayloads" $renamedPy = "_pJifgWSwPi.exe" $projFile = "malicious.proj" # 1. Assurez-vous que le dossier de sortie existe New-Item -ItemType Directory -Force -Path $outFolder | Out-Null # 2. Simulez la décompilation du fichier CHM Write-Host "[*] Décompilation du CHM..." hh.exe -decompile $outFolder $chmPath # 3. Placez une copie de python.exe (ou toute exe bénigne) en tant qu'interprète renommé Copy-Item -Path "$env:SystemRootSystem32WindowsPowerShellv1.0powershell.exe" ` -Destination "$outFolder$renamedPy" -Force # 4. Exécutez l'interprète renommé via cmd.exe Write-Host "[*] Lancement de l'interprète renommé via cmd.exe..." cmd.exe /c "`"$outFolder$renamedPy`" -c `"Write-Host 'Exécution simulée de charge'`"" # 5. Créez un projet msbuild trivial qui affiche un message $projContent = @" <Project ToolsVersion='4.0' xmlns='http://schemas.microsoft.com/developer/msbuild/2003'> <Target Name='Build'> <Message Text='Msbuild a exécuté le projet malveillant' Importance='High'/> </Target> </Project> "@ Set-Content -Path "$outFolder$projFile" -Value $projContent -Encoding ASCII # 6. Exécutez msbuild.exe sur le projet malveillant Write-Host "[*] Exécution de msbuild.exe..." msbuild.exe "$outFolder$projFile" /target:Build Write-Host "[+] Simulation terminée." -
Commandes de nettoyage
# Arrêtez tous les processus restants (s'il en existe encore) Get-Process -Name "_pJifgWSwPi","hh","msbuild","cmd" -ErrorAction SilentlyContinue | Stop-Process -Force # Supprimez les fichiers et dossiers générés Remove-Item -Recurse -Force -Path "C:TempPayloads" # Supprimez éventuellement le fichier CHM s'il a été créé pour le test Remove-Item -Force -Path "C:UsersPublicUpdateHelp.chm" -ErrorAction SilentlyContinue Write-Host "[+] Nettoyage terminé."