🔍 Contexte
Publié le 18 août 2026 par Hunt.io, ce rapport d’analyse technique détaille l’opération CameraSwarm, une campagne de compromission massive de caméras IP Dahua menée entre le 17 juin et le 22 juillet 2026. Les CERTs nationaux concernés ont été notifiés le 10 août 2026 et le PSIRT de Dahua a été informé avant publication (TLP:AMBER).
🎯 Portée et impact
- 14 530+ appareils compromis en 35 jours par un opérateur unique
- 1 923 caméras portent un compte backdoor persistant (
p2pwn/p2password) installé via RPC, survivant aux changements de mot de passe et aux réinitialisations usine - 283 caméras atteintes par numéro de série seul via le relais cloud Dahua, sans adresse IP ni credentials
- 89,4 % des numéros de série actifs ne requièrent aucune authentification
- Concentration géographique : Ukraine (part la plus importante) et Russie, avec des balayages initiaux sur des plages mexicaines et vietnamiennes
⚙️ Chaîne d’attaque
Trois chemins d’exploitation parallèles :
- Brute-force de credentials (moteur asyncio
asleep_scanner) : 12 324 adresses IP uniques atteintes sur TCP/37777 (protocole Easy4IP de Dahua), concurrence adaptative jusqu’à 4 000 workers - Chaîne de bypass d’authentification (p2pwn) : binaire Go chaînant CVE-2021-33044 (confiance inconditionnelle au type client
NetKeyboard) et CVE-2021-33045 (usurpation d’adresse source127.0.0.1), sans mot de passe requis - Exploitation du relais P2P cloud (
easy4ipcloud.com:8800) : accès aux caméras derrière NAT via numéro de série seul, exploitant des credentials SDK Dahua hardcodés dans chaque client légitime
🛠️ Toolkit
- p2pwn : binaire Go assemblé depuis 4 sources tierces (khoanguyen-3fc, MaximilianoFelice, itres-labs, 0x5477), installe le backdoor via RPC
- asleep_scanner : moteur asyncio public (d34db33f-1007), commentaires en russe
- scannerdahua : chaîne trois techniques (bypass HTTP, DahuaConsole, brute-force 16 paires)
- shodan_collect.py : collecte de numéros de série via Shodan et DDNS Dahua sans contacter les caméras
- seria2/asfefwq.py : génération hors-ligne de codes de récupération administratifs par numéro de série
- SalatStealer (binaire Windows UPX-packed, SHA-256 :
de03a0ae5c7aa0c237ae36a649875f986fd9701ac06857dd214054367ce5090c) : stealer Go commodity stagé sur le même hôte, sans lien direct avec la campagne caméras - Script PowerShell : 5 méthodes redondantes de désactivation de Windows Defender incluant persistance Group Policy
🏗️ Infrastructure
- Serveur opérateur : 154.86.119.60 (Cloud Innovation Ltd / AS197574, Amsterdam), actif depuis avril 2025, réutilisé pour cette campagne
- Répertoire HTTP exposé accidentellement le 23 juillet 2026 : 2 616 fichiers, 234 sous-répertoires, 407 Mo
- Exfiltration des credentials vers un canal Telegram avec lien VKontakte hardcodé
- Export enterprise en XML compatible SMART PSS (13 229 enregistrements, 52 fichiers)
- Certificat TLS cloné
rbc.rusur port 443 avec bannière QRATOR spoofée, présent sur 11 000+ adresses mondiales — artefact d’un outil proxy (Telemt/MTProxyMax), non spécifique à cet opérateur - Second hôte : 185.132.53.56 présentant le même payload SalatStealer deux jours après
📋 Type d’article
Rapport d’analyse technique approfondi publié par Hunt.io, basé sur le corpus récupéré d’un répertoire ouvert exposé par l’opérateur lui-même, re-vérifié par télémétrie interne. But principal : documenter les chemins d’exploitation, les artefacts et les indicateurs pour les défenseurs.
🧠 TTPs et IOCs détectés
TTP
- T1595.001 — Active Scanning: Scanning IP Blocks (Reconnaissance)
- T1596.005 — Search Open Technical Databases: Scan Databases (Reconnaissance)
- T1190 — Exploit Public-Facing Application (Initial Access)
- T1110.003 — Brute Force: Password Spraying (Credential Access)
- T1136.001 — Create Account: Local Account (Persistence)
- T1113 — Screen Capture (Collection)
- T1567.004 — Exfiltration Over Web Service: Exfiltration Over Webhook (Exfiltration)
- T1027.002 — Obfuscated Files or Information: Software Packing (Defense Evasion)
- T1562.001 — Impair Defenses: Disable or Modify Tools (Defense Evasion)
- T1210 — Exploitation of Remote Services (Lateral Movement)
- T1112 — Modify Registry (Defense Evasion)
- T1553.004 — Subvert Trust Controls: Install Root Certificate (Defense Evasion)
- T1614.001 — System Location Discovery: System Language Discovery (Discovery)
IOC
- IPv4 :
154.86.119.60— AbuseIPDB · VT · ThreatFox - IPv4 :
185.132.53.56— AbuseIPDB · VT · ThreatFox - Domaines :
easy4ipcloud.com— VT · URLhaus · ThreatFox - Domaines :
dahuaddns.com— VT · URLhaus · ThreatFox - Domaines :
quickddns.com— VT · URLhaus · ThreatFox - Domaines :
oxycod.one— VT · URLhaus · ThreatFox - URLs :
https://vk.com/wall-163997495— URLhaus - URLs :
https://discord.gg/cctv— URLhaus - SHA256 :
de03a0ae5c7aa0c237ae36a649875f986fd9701ac06857dd214054367ce5090c— VT · MalwareBazaar - SHA256 :
694bfbe44bcd9b4844e15294be74dafe86ff8ae40b8b1067f4dae70a6ef75da8— VT · MalwareBazaar - SHA256 :
be2738c8a2beb55ac484d71c329381f3caabac80664283ad9a24dbab82b5b590— VT · MalwareBazaar - SHA256 :
7a963211a052a78899a8881d36b42b55690c02e95c1485f5d78d3cfdb3d2842a— VT · MalwareBazaar - SHA256 :
083c9ee06ed2ee1bc0051358b3eeb3242f474eacea4c88b3b10b06d15389b753— VT · MalwareBazaar - SHA256 :
5f60e5b4e5cd6c7ac98b7db11b3b6a806a20a7946377da4698aaba3ebe72d088— VT · MalwareBazaar - SHA256 :
4a4a346df72c839272ea835e4717cd88f843333b3563e745e657895347ea3dbe— VT · MalwareBazaar - CVEs :
CVE-2021-33044— NVD · CIRCL - CVEs :
CVE-2021-33045— NVD · CIRCL - Fichiers :
1.exe - Fichiers :
xeno.exe - Fichiers :
p2pwn - Fichiers :
cidrs.txt - Fichiers :
add-defender-exclusions.ps1 - Fichiers :
start_all.sh - Fichiers :
run_auth_brute.sh - Fichiers :
shodan_collect.py - Fichiers :
async_brute.py - Fichiers :
dahua.py - Fichiers :
geolocation.py - Fichiers :
bot.py - Fichiers :
export.py - Fichiers :
asfefwq.py - Fichiers :
dahua-sn-brute2.py - Chemins :
/root - Chemins :
/var/xdwd/ - Chemins :
C:\Users\SystemX\Downloads\seria
⚠️ À propos de ces IOC — ils sont extraits automatiquement de l’article original le 20 août 2026 et n’ont pas fait l’objet d’une vérification externe. Un indicateur peut avoir été réattribué depuis : une IP de C2 peut redevenir un service légitime, un domaine sinkholé peut changer de propriétaire. Aucune garantie d’exactitude ni d’actualité — contrôlez leur validité avant tout usage opérationnel, en particulier avant de les injecter dans une blocklist ou un SIEM.
Malware / Outils
- p2pwn (tool)
- SalatStealer (stealer)
- asleep_scanner (tool)
- scannerdahua (tool)
- CCTV-Scanner (tool)
- DahuaConsole (tool)
- masscan (tool)
🟢 Indice de vérification factuelle : 75/100 (haute)
- ⬜ hunt.io — source non référencée (0pts)
- ✅ 62142 chars — texte complet (fulltext extrait) (15pts)
- ✅ 35 IOCs dont des hashes (15pts)
- ✅ 3/10 IOCs confirmés (AbuseIPDB, MalwareBazaar, ThreatFox, URLhaus, VirusTotal) (15pts)
- ✅ 13 TTPs MITRE identifiées (15pts)
- ✅ date extraite du HTML source (10pts)
- ⬜ aucun acteur de menace nommé (0pts)
- ✅ 2/2 CVE(s) confirmée(s) (CIRCL) (5pts)
IOCs confirmés externellement :
154.86.119.60(ip) → AbuseIPDB (61% confiance, 317 signalements) + VT (5/91 détections)185.132.53.56(ip) → VT (5/91 détections)de03a0ae5c7aa0c2…(sha256) → VT (51/76 détections)
🔗 Source originale : https://hunt.io/blog/operation-cameraswarm-dahua-cameras-compromised