Enchaînement de failles zero-day dans Ivanti Connect Secure pour une compromission sans authentification
Detection stack
- AIDR
- Alert
- ETL
- Query
Résumé
Un acteur menaçant inconnu suivi sous le nom de UTA0576 a exploité une chaîne de vulnérabilités zero-day dans les appareils VPN Ivanti Connect Secure pour obtenir une exécution de code au niveau root non authentifiée. L’attaque combinait un contournement d’authentification, une exécution de code à distance via une condition de compétition, et une élévation de privilèges. L’acteur s’est principalement concentré sur le vol d’informations d’identification concernant Active Directory, LAPS, et les clés de récupération BitLocker.
Enquête
Volexity a identifié la compromission grâce au suivi de la sécurité réseau et a mené une investigation judiciaire en utilisant l’imagerie mémoire et disque. Comme l’attaquant s’appuyait sur des corrections en mémoire et supprimait les journaux, les chercheurs ont utilisé la plate-forme Volcano pour reconstituer la chaîne d’exploitation à partir des vidages du noyau et de la mémoire système. L’enquête a également révélé que les requêtes HTTPS étaient utilisées comme canal de commande au lieu de la traditionnelle infrastructure C2.
Atténuation
Les organisations devraient appliquer immédiatement les correctifs d’Ivanti abordant le contournement d’authentification et les vulnérabilités RCE. Les équipes de sécurité devraient surveiller les en-têtes X-DSCGI-PATH et les volumes élevés de requêtes vers /dana-na/auth/url_default/welcome.cgi. Il est également fortement recommandé de faire tourner le vérificateur d’intégrité d’Ivanti et de mettre à niveau les appareils affectés vers des versions non vulnérables.
Réponse
Lorsqu’une activité suspecte est détectée, les organisations devraient mener des investigations judiciaires des appareils VPN ICS, avec une attention particulière aux preuves de mouvements latéraux. La recherche en mémoire est fortement recommandée car une grande partie de la chaîne d’exploitation fonctionne en mémoire et laisse peu d’artéfacts sur le disque. Passez en revue le répertoire /tmp/ pour des scripts non autorisés et inspectez les journaux d’audit pour des signes de manipulation.
Flux d’Attaque
Nous mettons encore à jour cette partie.
Détections
Tentative d’exploitation CVE-2026-104935 (chaîne RCE Ivanti) (via le serveur web)
Un fichier caché a été créé sur l’hôte Linux (via file_event)
IOCs (SourceIP) pour détecter : Une série d’événements non authentifiés : exploitation en chaîne des zero-days Ivanti Connect Secure
IOCs (DestinationIP) pour détecter : Une série d’événements non authentifiés : exploitation en chaîne des zero-days Ivanti Connect Secure
Détection d’exploitation du zero-day dans Ivanti Connect Secure [Événement Fichier Linux]
Exécution de simulation
-
Narration de l’attaque & Commandes : L’adversaire vise à exploiter la vulnérabilité d’Ivanti Connect Secure en simulant l’accès à un point de terminaison CGI malveillant connu utilisé dans la chaîne d’exploitation. Après avoir accédé au chemin
/home/webserver/htdocs/dana/fb/smb/wu.cgi, l’attaquant tente de mettre en place une web shell ou un kit post-exploitation en écrivant un fichier dans le répertoire spécifique/home/runtime/tmp/. Cela imite l’exécution de code à distance non authentifié et la manipulation de fichiers ultérieure observée dans l’exploitation de zero-day dans le monde réel. -
Script de test de régression :
#!/bin/bash # Script de simulation pour la détection d'exploitation d'Ivanti Connect Secure # 1. Configuration : Créer la structure de répertoire nécessaire pour la simulation echo "[+] Configuration de l'environnement de simulation..." sudo mkdir -p /home/webserver/htdocs/dana/fb/smb/ sudo mkdir -p /home/runtime/tmp/ # 2. Créer le fichier CGI "malveillant" echo "[+] Création du fichier CGI malveillant..." sudo touch /home/webserver/htdocs/dana/fb/smb/wu.cgi sudo chmod 777 /home/webserver/htdocs/dana/fb/smb/wu.cgi # 3. Simuler l'exploitation : Accès au fichier (déclenche les selection_paths) echo "[+] Simulation de l'accès au chemin CGI malveillant..." cat /home/webserver/htdocs/dana/fb/smb/wu.cgi > /dev/null # 4. Simuler la mise en place de la charge utile (déclenche les selection_tmp) echo "[+] Simulation du dépôt de charge utile dans /home/runtime/tmp/..." echo "<?php system($_GET['cmd']); ?>" | sudo tee /home/runtime/tmp/shell.php > /dev/null echo "[+] Simulation terminée. Vérifiez le SIEM pour les alertes." -
Commandes de nettoyage :
#!/bin/bash # Script de nettoyage pour supprimer les artefacts de simulation echo "[+] Nettoyage des artefacts de simulation..." sudo rm -f /home/webserver/htdocs/dana/fb/smb/wu.cgi sudo rm -f /home/runtime/tmp/shell.php sudo rmdir /home/webserver/htdocs/dana/fb/smb/ 2>/dev/null sudo rmdir /home/webserver/htdocs/dana/fb/ 2>/dev/null sudo rmdir /home/webserver/htdocs/dana/ 2>/dev/null sudo rmdir /home/webserver/htdocs/ 2>/dev/null sudo rmdir /home/webserver/ 2>/dev/null sudo rmdir /home/runtime/tmp/ 2>/dev/null sudo rmdir /home/runtime/ 2>/dev/null echo "[+] Nettoyage terminé."