🔍 Contexte

Publié le 2 avril 2026 par la Microsoft Defender Security Research Team, cet article constitue une analyse technique approfondie d’une technique d’attaque observée dans des environnements d’hébergement Linux partagés. L’équipe documente l’abus de webshells PHP contrôlés par cookies HTTP comme canal de commande furtif.

Au lieu d’exposer les fonctionnalités malveillantes via des paramètres d’URL ou le corps des requêtes, ces webshells restent dormants jusqu’à la réception de valeurs de cookies spécifiques fournies par l’attaquant. Le mécanisme repose sur la superglobale PHP $_COOKIE, permettant une activation discrète sans modification fréquente des fichiers sur disque.

Trois variantes ont été observées :

  • Loader avec double obfuscation : reconstruction dynamique des noms de fonctions caractère par caractère, décodage base64 en deux étapes, écriture conditionnelle d’un payload secondaire via include
  • Stager direct par cookie : segmentation du cookie pour reconstruire les composants opérationnels, écriture conditionnelle d’un payload secondaire
  • Webshell interactif cookie-gated : un seul cookie comme clé d’exécution, opération en script unique sans payload secondaire

🔄 Persistance via tâches planifiées (cron)

Le flux d’attaque documenté inclut une persistance auto-régénérante :

  1. L’attaquant obtient l’accès au compte d’hébergement (via panneau de contrôle légitime)
  2. Enregistrement d’un cron job via l’interface cPanel / jailshell
  3. Le cron reconstruit périodiquement le loader PHP obfusqué dans un répertoire web-accessible via le pattern echo | base64 -d > file.php
  4. Des permissions restrictives sont appliquées pour compliquer la suppression manuelle
  5. Si le loader est supprimé, le cron le recrée automatiquement au cycle suivant (mécanisme « self-healing »)

🛠️ Méthodes de déploiement observées

  • Processus php-fpm spawning des commandes shell pour reconstruire les fichiers PHP obfusqués
  • Exécution dans des shells restreints (/usr/local/cpanel/bin/jailshell)
  • Utilisation de tee, curl, wget pour l’écriture ou le téléchargement de payloads
  • Reconstruction inline : echo <blob> | base64 -d > <file.php>

📊 Techniques MITRE ATT&CK documentées

  • T1190 – Exploit Public-Facing Application
  • T1505.003 – Server Software Component: Web Shell
  • T1027 – Obfuscated/Encrypted File or Information
  • T1140 – Deobfuscate/Decode Files or Information
  • T1105 – Ingress Tool Transfer
  • T1059.004 – Command and Scripting Interpreter: Unix Shell
  • T1053.003 – Scheduled Task/Job: Cron
  • T1222.002 – File and Directory Permissions Modification

📄 Nature de l’article

Il s’agit d’une analyse technique publiée par Microsoft Defender Security Research, visant à documenter un tradecraft observé en conditions réelles, fournir des requêtes Advanced Hunting (KQL) pour Microsoft Defender XDR, et lister les détections disponibles dans l’écosystème Microsoft.

🧠 TTPs et IOCs détectés

TTP

  • T1190 — Exploit Public-Facing Application (Initial Access)
  • T1505.003 — Server Software Component: Web Shell (Persistence)
  • T1027 — Obfuscated Files or Information (Defense Evasion)
  • T1140 — Deobfuscate/Decode Files or Information (Defense Evasion)
  • T1105 — Ingress Tool Transfer (Command and Control)
  • T1059.004 — Command and Scripting Interpreter: Unix Shell (Execution)
  • T1053.003 — Scheduled Task/Job: Cron (Persistence)
  • T1222.002 — File and Directory Permissions Modification: Linux and Mac File and Directory Permissions Modification (Defense Evasion)

IOC

  • Fichiers : index.php
  • Chemins : /usr/local/cpanel/bin/jailshell
  • Chemins : /var/www

Malware / Outils

  • Cookie-controlled PHP webshell (backdoor)
  • PHP loader (obfuscated) (loader)

🟢 Indice de vérification factuelle : 70/100 (haute)

  • ✅ microsoft.com — source reconnue (liste interne) (20pts)
  • ✅ 23017 chars — texte complet (fulltext extrait) (15pts)
  • ✅ 3 IOCs (IPs/domaines/CVEs) (10pts)
  • ⬜ pas d’IOC vérifié (0pts)
  • ✅ 8 TTPs MITRE identifiées (15pts)
  • ✅ date extraite du HTML source (10pts)
  • ⬜ aucun acteur de menace nommé (0pts)
  • ⬜ pas de CVE à vérifier (0pts)

🔗 Source originale : https://www.microsoft.com/en-us/security/blog/2026/04/02/cookie-controlled-php-webshells-tradecraft-linux-hosting-environments/