SOC Prime Bias: Élevé

29 Dec 2025 08:37 UTC

HardBit 4.0 : Analyse du ransomware et conclusions clés

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Suivre
HardBit 4.0 : Analyse du ransomware et conclusions clés
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Résumé

HardBit 4.0 est une variante de ransomware qui utilise l’infecteur de fichiers Neshta comme son installeur et est livré dans des versions à la fois CLI et GUI. Contrairement à de nombreuses équipes modernes, il n’est pas lié à un portail de fuite à double extorsion et peut inclure une capacité de « Wiper » optionnelle conçue pour endommager irréversiblement les données. L’exécution est conditionnée par un ID d’autorisation d’exécution et une clé de chiffrement, ajoutant effectivement un contrôle de type phrase secrète avant que le chiffrement ne commence.

Investigation

L’évaluation suggère que l’accès initial se produit généralement par une activité RDP par force brute en utilisant l’outil NLBrute, suivi d’une collecte de références via Mimikatz. Le mouvement latéral est ensuite effectué sur RDP avec les identifiants volés, soutenu par des utilitaires de découverte et de scan tels que KPortScan 3.0 et Advanced Port Scanner. Neshta est utilisé pour déposer le ransomware dans le répertoire %TEMP% et persister en modifiant le registre pour que le malware soit invoqué chaque fois qu’un .exe est lancé.

Atténuation

Exigez des mots de passe forts et uniques pour les comptes dotés de RDP et réduisez l’exposition externe au RDP autant que possible. Surveillez les modifications de registre associées à la manipulation de Windows Defender et le svchost.com mécanisme de persistance. Implémentez une liste blanche d’application et des contrôles comportementaux pour détecter ou bloquer l’utilisation non autorisée de Mimikatz et des outils de scan réseau.

Réponse

Si une activité suspecte est trouvée, isolez l’hôte, capturez les preuves volatiles et arrêtez le processus du ransomware. Récupérez les données affectées à partir de sauvegardes fiables seulement après avoir confirmé que l’acteur malveillant a été entièrement supprimé. Complétez la validation légale en examinant les modifications du registre, les tâches planifiées, et tout artefact de vidage d’identifiants.

Flux d’Attaque

Exécution de Simulation

Prérequis : La Vérification Pré-flight de la Télémétrie & Baseline doit avoir été validée.

Raison : Cette section détaille l’exécution précise de la technique 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.

  • Narratif d’Attaque & Commandes :
    L’adversaire a obtenu des privilèges administrateur locaux sur un poste de travail compromis. Pour collecter des identifiants, ils déposent un fichier batch personnalisé nommé !start.bat dans le même répertoire que mimikatz.exe. Le fichier batch lance simplement mimikatz avec les commandes privilege::debug and sekurlsa::logonpasswords . En invoquant le fichier batch depuis une invite PowerShell, la ligne de commande enregistrée par l’Événement 4688 contiendra la chaîne littérale !start.bat, répondant ainsi à la condition de détection.

  • Script de Test de Régression :

    # ---------------------------------------------------------
    # Configuration : créer un répertoire temporaire et placer mimikatz
    # ---------------------------------------------------------
    $tempDir = "$env:TEMPmimikatz_test"
    New-Item -ItemType Directory -Force -Path $tempDir | Out-Null
    
    # Supposons que mimikatz.exe est disponible à C:Toolsmimikatz.exe
    Copy-Item -Path "C:Toolsmimikatz.exe" -Destination $tempDir -Force
    
    # ---------------------------------------------------------
    # Créer le script batch personnalisé !start.bat
    # ---------------------------------------------------------
    $batPath = Join-Path $tempDir "!start.bat"
    @'
    @echo off
    "mimikatz.exe" "privilege::debug" "sekurlsa::logonpasswords" exit
    '@ | Set-Content -Path $batPath -Encoding ASCII
    
    # ---------------------------------------------------------
    # Exécuter le script batch (c'est l'étape qui devrait déclencher)
    # ---------------------------------------------------------
    $cmd = "cmd.exe /c `"$batPath`""
    Start-Process -FilePath "cmd.exe" -ArgumentList "/c `"$batPath`"" -WorkingDirectory $tempDir -NoNewWindow
    
    # ---------------------------------------------------------
    # Attendre une courte période pour s'assurer que l'événement est enregistré
    # ---------------------------------------------------------
    Start-Sleep -Seconds 5
  • Commandes de Nettoyage :

    # Supprimer le répertoire temporaire et tous les artefacts
    Remove-Item -Path $tempDir -Recurse -Force