đ Contexte
PubliĂ© le 23 juin 2026 par SicuraNext (blog.sicuranext.com), cet article prĂ©sente une recherche read-only menĂ©e le 11 juin 2026 sur une campagne active exploitant CVE-2026-26980, une injection SQL dans l’API publique Content de Ghost CMS (versions 3.24.0 Ă 6.19.0, corrigĂ©e en 6.19.1 en fĂ©vrier 2026).
âïž MĂ©canisme d’attaque
L’exploitation se dĂ©roule en deux Ă©tapes :
- Lecture via Content API (sans authentification) pour extraire la clé Admin API stockée en base de données
- Ăcriture via Admin API avec la clĂ© volĂ©e pour injecter un loader JavaScript malveillant dans les corps de posts
Le loader injectĂ© (ghost_once_footer_<id>) utilise une porte localStorage (exĂ©cution unique par navigateur), encode l’origine victime via btoa(location.origin), et charge un second stage depuis un C2 via une URL base64 encodĂ©e. La chaĂźne mĂšne Ă une page FakeCAPTCHA/ClickFix incitant les visiteurs Ă exĂ©cuter des commandes ou installer un malware.
đ RĂ©sultats du scan
- 3 153 hostnames Ghost analysés (source : Shodan)
- 287 compromis (251 domaines uniques), taux de reconfirmation : 97,9%
- 284/287 pointent vers un seul C2 :
restrictes[.]com - 17 sites déjà patchés mais toujours compromis (le loader persiste dans la base de données)
- 887 sites vulnérables sans injection détectée
- Répartition : 240 sur Ghost 5.x, 47 sur Ghost 6.x
- Hébergement : ~42% DigitalOcean, ~20% Cloudflare, ~10% Amazon
đŻ Attribution et infrastructure
Deux clusters identifiés par toolchain :
- Actor A (285 résultats) : loader ClickFix avec marqueurs
ghost_once_footer_,btoa(location.origin), path stable/11z77u3.php, domaines C2 rotatifs à courte durée de vie - Actor B (2 résultats) : signature distincte (
/api/css.js, famillescript-dev.*), nettoyés entre les deux passes
Timeline des domaines C2 Actor A :
com-apps[.]cc(enregistré 2025-09-23, suspendu)jalwat[.]com(2026-02-24, actif)clo4shara[.]xyz(2026-04-26, actif)cloud-verification[.]com(2026-05-03, actif)platecrumbs[.]com(2026-05-14, suspendu)restrictes[.]com(2026-05-21, actif, dominant)
Le domaine restrictes[.]com Ă©tait absent de toutes les sources publiques au moment du scan ; une seule dĂ©tection (LevelBlue, “phishing”) est apparue le 19 juin 2026.
đ Type d’article
Recherche CTI originale Ă visĂ©e communautaire : documentation d’une campagne active, partage de mĂ©thode de dĂ©tection reproductible, et publication d’IoCs dĂ©fangĂ©s sans exposition des victimes.
đ§ TTPs et IOCs dĂ©tectĂ©s
TTP
- T1190 â Exploit Public-Facing Application (Initial Access)
- T1059.007 â Command and Scripting Interpreter: JavaScript (Execution)
- T1027 â Obfuscated Files or Information (Defense Evasion)
- T1071.001 â Application Layer Protocol: Web Protocols (Command and Control)
- T1565.001 â Stored Data Manipulation (Impact)
- T1552.001 â Credentials In Files (Credential Access)
- T1204.002 â User Execution: Malicious File (Execution)
- T1036 â Masquerading (Defense Evasion)
IOC
- Domaines :
restrictes.comâ VT · URLhaus · ThreatFox - Domaines :
com-apps.ccâ VT · URLhaus · ThreatFox - Domaines :
jalwat.comâ VT · URLhaus · ThreatFox - Domaines :
clo4shara.xyzâ VT · URLhaus · ThreatFox - Domaines :
cloud-verification.comâ VT · URLhaus · ThreatFox - Domaines :
platecrumbs.comâ VT · URLhaus · ThreatFox - URLs :
https://restrictes.com/11z77u3.phpâ URLhaus - URLs :
https://com-apps.cc/11z77u3.phpâ URLhaus - CVEs :
CVE-2026-26980â NVD · CIRCL - Chemins :
/11z77u3.php
Malware / Outils
- ClickFix (loader)
- FakeCAPTCHA (other)
đą Indice de vĂ©rification factuelle : 65/100 (haute)
- ⏠blog.sicuranext.com â source non rĂ©fĂ©rencĂ©e (0pts)
- â 27841 chars â texte complet (fulltext extrait) (15pts)
- â 10 IOCs (IPs/domaines/CVEs) (10pts)
- â 3/5 IOCs confirmĂ©s (ThreatFox, URLhaus, VirusTotal) (15pts)
- â 8 TTPs MITRE identifiĂ©es (15pts)
- â date extraite du HTML source (10pts)
- ⏠aucun acteur de menace nommé (0pts)
- ⏠0/1 CVE(s) confirmée(s) (0pts)
IOCs confirmés externellement :
restrictes.com(domain) â VT (5/91 dĂ©tections)com-apps.cc(domain) â VT (21/91 dĂ©tections)jalwat.com(domain) â VT (21/91 dĂ©tections)
đ Source originale : https://blog.sicuranext.com/ghost-stories-investigating-an-undocumented-clickfix-c2-in-ghost-cms/