🔍 Contexte

Le 23 juin 2026, SOCRadar Threat Research Unit (STRU) publie un rapport technique dĂ©taillĂ© sur la campagne FortiBleed, une opĂ©ration de collecte massive de credentials ciblant les pare-feux FortiGate Ă  l’Ă©chelle mondiale. L’investigation a dĂ©butĂ© suite Ă  un post LinkedIn du chercheur Volodymyr « Bob » Diachenko signalant un rĂ©pertoire exposĂ© Ă  l’adresse http://85.11.187.8:9999.

🎯 Acteur et motivation

L’acteur est Ă©valuĂ© comme un Initial Access Broker (IAB) Ă  motivation financiĂšre, avec une origine russe probable (commentaires en cyrillique dans les outils). La compromission d’un contractant de dĂ©fense alignĂ© OTAN soulĂšve Ă©galement l’hypothĂšse d’une collaboration avec des groupes Ă©tatiques russes. La campagne est active depuis au moins fĂ©vrier 2026.

⚙ ChaĂźne d’attaque en 5 phases

Phase 1 – Reconnaissance : Utilisation de Masscan, Shodan_Recon, FortiProbe-fast, RDNS-Scan, GeoSplit pour identifier et prioriser les cibles FortiGate. Les cibles sont classĂ©es par revenus via match_corps.py et merge_revenue.py.

Phase 2 – AccĂšs initial : Brute-force SSH via mpbrute2.bin avec 16 dictionnaires FortiGate-spĂ©cifiques (base0-base15.txt), credential stuffing via forticheck (jusqu’Ă  25 000 threads), ciblage MSSQL, Synology DSM et Citrix SSLVPN.

Phase 3 – DĂ©ploiement du sniffer : L’outil FortigateSniffer (Go, interface en russe) exploite la commande native FortiOS diagnose sniffer packet pour capturer passivement le trafic d’authentification sur 24 protocoles (Kerberos, NTLM, RADIUS, LDAP, RDP, MSSQL, MySQL, etc.). 659 cycles de collecte ont Ă©tĂ© exĂ©cutĂ©s, gĂ©nĂ©rant 110 millions+ de credentials. Le sniffer inclut un gĂ©ofencing et une planification aux heures de bureau (07h-18h heure de Moscou).

Phase 4 – Exploitation : Craquage distribuĂ© via Hashtopolis/Hashcat sur GPU louĂ©s (vast.ai), orchestrĂ© par un bot Telegram. Mouvement latĂ©ral via SMB (Spray_*.py, smb_test.py, spider.py), Ă©numĂ©ration Active Directory (ad_full_audit.py, ad_enum.py), Kerberoasting, ASREP Roasting.

Phase 5 – Exfiltration : backup_dfs.py exfiltre rĂ©cursivement les partages SMB/DFS vers un serveur SSH distant. Plus de 2 051 scripts curl_replay.sh rejouent des cookies de session capturĂ©s. Le 15 juin 2026, exfiltration confirmĂ©e depuis un contractant de dĂ©fense OTAN.

đŸ—ïž Infrastructure

  • 4 blocs /24 principaux : 85.11.187.0/24 (C2/agrĂ©gateur), 193.8.187.0/24 (lab offensif), 194.113.39.0/24 (sniffers), 77.91.122.0/24 (scan/sniff)
  • Lab offensif isolĂ© : 7 VMs Kali Linux sous QEMU/KVM, subnet privĂ© 10.10.10.0/24, accĂšs via tmux partagĂ©
  • CyberStrike (agent de pentest autonome IA open-source) dĂ©ployĂ© sur l’ensemble de l’infrastructure

📊 Victimologie

  • 80 553 appareils FortiGate identifiĂ©s, 23 406 domaines uniques
  • 66% des victimes ont moins de 200 employĂ©s (PME)
  • Secteur principal : IT Services (8,4%)
  • Pays les plus touchĂ©s : Inde (11,4%), États-Unis (10,1%), TaĂŻwan (5,8%)
  • Distribution mondiale cohĂ©rente avec une exploitation opportuniste

📄 Nature du document

Il s’agit d’une publication de recherche technique approfondie produite par SOCRadar STRU, visant Ă  documenter exhaustivement la chaĂźne d’attaque, l’infrastructure, la victimologie et les IoCs d’une campagne active de collecte de credentials Ă  grande Ă©chelle.

🧠 TTPs et IOCs dĂ©tectĂ©s

TTP

  • T1595.001 — Active Scanning: Scanning IP Blocks (Reconnaissance)
  • T1596.005 — Search Open Technical Databases (Reconnaissance)
  • T1190 — Exploit Public-Facing Application (Initial Access)
  • T1078.001 — Valid Accounts: Default Accounts (Initial Access)
  • T1133 — External Remote Services (Initial Access)
  • T1110.001 — Brute Force: Password Guessing (Credential Access)
  • T1110.002 — Brute Force: Password Cracking (Credential Access)
  • T1110.003 — Brute Force: Password Spraying (Credential Access)
  • T1110.004 — Brute Force: Credential Stuffing (Credential Access)
  • T1040 — Network Sniffing (Credential Access)
  • T1557 — Adversary-in-the-Middle (Credential Access)
  • T1558.003 — Steal or Forge Kerberos Tickets: Kerberoasting (Credential Access)
  • T1558.004 — Steal or Forge Kerberos Tickets: AS-REP Roasting (Credential Access)
  • T1539 — Steal Web Session Cookie (Credential Access)
  • T1059.004 — Command and Scripting Interpreter: Unix Shell (Execution)
  • T1087.002 — Account Discovery: Domain Account (Discovery)
  • T1046 — Network Service Discovery (Discovery)
  • T1039 — Data from Network Shared Drive (Collection)
  • T1071.001 — Application Layer Protocol: Web Protocols (Command and Control)

IOC

Malware / Outils

  • FortigateSniffer (tool)
  • fg_sniffer (tool)
  • forticheck (tool)
  • mpbrute2.bin (tool)
  • gen_rotator (tool)
  • Agent (backdoor)
  • SSHLogger (tool)
  • SSHWorker (tool)
  • MSSQL_Checker (tool)
  • MSSQL_Recon (tool)
  • FortiProbe-fast (tool)
  • Shodan_Recon (tool)
  • RDNS-Scan (tool)
  • GeoSplit (tool)
  • rdp-grab (tool)
  • smb-grab-linux (tool)
  • syno.bin (tool)
  • backup_dfs.py (tool)
  • curl_replay.sh (tool)
  • PCAP Deep Analysis Toolkit (tool)
  • Hashcat (tool)
  • Hashtopolis (tool)
  • CyberStrike (framework)
  • Masscan (tool)

🟱 Indice de vĂ©rification factuelle : 67/100 (haute)

  • ⬜ socradar.io — source non rĂ©fĂ©rencĂ©e (0pts)
  • ✅ 92632 chars — texte complet (fulltext extrait) (15pts)
  • ✅ 186 IOCs dont des hashes (15pts)
  • ✅ 2/7 IOCs confirmĂ©s (AbuseIPDB, MalwareBazaar, ThreatFox, URLhaus, VirusTotal) (12pts)
  • ✅ 19 TTPs MITRE identifiĂ©es (15pts)
  • ✅ date extraite du HTML source (10pts)
  • ⬜ aucun acteur de menace nommĂ© (0pts)
  • ⬜ pas de CVE Ă  vĂ©rifier (0pts)

IOCs confirmés externellement :

  • 85.11.187.8 (ip) → AbuseIPDB (28% confiance, 32 signalements) + VT (14/91 dĂ©tections)
  • 193.8.187.2 (ip) → AbuseIPDB (100% confiance, 110 signalements) + VT (8/91 dĂ©tections)

🔗 Source originale : https://socradar.io/resources/whitepapers/dismantling-fortibleed-inside-a-russian-fortinet-compromise-operation/