Attaques de sites Web alimentées par l’IA utilisant des agents autonomes
Detection stack
- AIDR
- Alert
- ETL
- Query
Résumé
Les chercheurs en sécurité ont observé des attaques automatisées ciblant les sites web d’entreprises japonaises via des agents pilotés par l’IA. Ces agents utilisent des outils tels que curl, sqlmap et des scripts Python personnalisés pour effectuer de la reconnaissance et exploiter des vulnérabilités. L’activité est marquée par une grande adaptabilité, une prise de décision rapide et la capacité à modifier dynamiquement les techniques d’attaque en fonction des réponses du serveur.
Enquête
L’équipe Scutum WAF a déployé un mécanisme de surveillance conçu pour distinguer le trafic piloté par l’IA des outils d’attaque automatisés conventionnels. Les chercheurs ont identifié au moins trois adresses IP distinctes menant différentes étapes d’activité, allant du balayage de base à l’exploitation complexe à plusieurs étapes. L’analyse a indiqué que des modèles d’IA plus performants généraient un comportement d’attaque de plus en plus efficace et adaptatif.
Atténuation
Les organisations doivent s’assurer que les applications web et les API sont rapidement corrigées contre les vulnérabilités connues pour minimiser la surface d’attaque disponible. Le déploiement d’un WAF haute performance capable d’une analyse comportementale plutôt que de se fier uniquement à la correspondance de signatures est fortement recommandé. Une gestion continue des vulnérabilités est également essentielle pour se défendre contre les menaces adaptatives pilotées par l’IA.
Réponse
Lorsque l’activité d’attaque pilotée par l’IA est détectée, les équipes de sécurité doivent enquêter sur les modèles d’adaptation dynamique des requêtes. Surveillez les changements rapides d’User-Agents et le comportement de balayage en plusieurs étapes. Consultez la télémétrie du WAF pour identifier des séquences de requêtes hautement adaptatives pouvant indiquer qu’un agent automatisé navigue et sonde activement la structure de l’application.
Flux d’attaque
Nous mettons encore à jour cette partie.
Détections
Un fichier sensible possible a été demandé (via serveur web)
Augmentation des réponses des codes HTTP Status 40* pour une seule IP (via serveur web)
Possible téléchargement de Webshell via requête Put ou Post (via serveur web)
Modèles d’User-Agent suspects (via web)
Modèles possibles d’injections MSSQL (via web)
Modèles possibles d’injections SQL aveugles à retardement (via web)
Modèle possible de traversée de chemin dans l’URL (via serveur web)
User-Agent des bibliothèques client HTTP vers les points de terminaison d’authentification (via proxy)
IOCs (SourceIP) pour détecter : Alerte sur les attaques contre les sites Web via des agents IA
IOCs (DestinationIP) pour détecter : Alerte sur les attaques contre les sites Web via des agents IA
Attaques Web par agent IA depuis des IP spécifiques [Serveur Web]
## Exécution de la simulation
-
Narration de l’attaque & Commandes : L’attaquant effectue une reconnaissance automatisée pour identifier la posture de sécurité et l’architecture de backend du serveur. Ils simulent spécifiquement un modèle de balayage « Agent IA ». L’attaquant usurpera ou utilisera les IP spécifiques définies dans la règle de détection pour demander des fichiers sensibles (
/.well-known/security.txtand/_search) pour vérifier si la cible est vulnérable à une divulgation d’informations ou à une exploitation Elasticsearch. -
Script de test de régression :
#!/bin/bash # Script de simulation pour déclencher la règle de détection 'Attaques Web par agent IA'. # REMARQUE : Dans un vrai test, nous simulons la génération d'entrée de journal. # Étant donné que nous ne pouvons pas facilement usurper l'IP source vue par le serveur # sans manipulation au niveau du réseau, nous ajouterons directement des lignes de log simulées # au fichier journal web pour valider la règle SIEM. LOG_FILE="/var/log/nginx/access.log" echo "[INFO] Démarrage de la simulation de validation de détection..." # Sélection de déclencheurs 1 : IP 38.54.56.121 accédant à security.txt echo '38.54.56.121 - - [16/Oct/2026:10:00:01 +0000] "GET /.well-known/security.txt HTTP/1.1" 200 150 "-" "AI-Agent-Scanner/1.0"' >> $LOG_FILE echo "[SUCCESS] Déclencheur sélection_ip_1 activé" # Sélection de déclencheurs 2 : IP 185.196.220.130 accédant à robots.txt echo '185.196.220.130 - - [16/Oct/2026:10:00:02 +0000] "GET /robots.txt HTTP/1.1" 200 45 "-" "AI-Agent-Scanner/1.0"' >> $LOG_FILE echo "[SUCCESS] Déclencheur sélection_ip_2 activé" # Sélection de déclencheurs 3 : IP 192.236.229.229 accédant au point de terminaison Elasticsearch echo '192.236.229.229 - - [16/Oct/2026:10:00:03 +0000] "GET /_search HTTP/1.1" 401 12 "-" "AI-Agent-Scanner/1.0"' >> $LOG_FILE echo "[SUCCESS] Déclencheur sélection_ip_3 activé" echo "[INFO] Simulation terminée. Vérifiez les alertes SIEM." -
Commandes de nettoyage :
# Utilisez sed pour supprimer les lignes de log simulées du journal d'accès pour éviter la pollution de log sudo sed -i '/38.54.56.121/d' /var/log/nginx/access.log sudo sed -i '/185.196.220.130/d' /var/log/nginx/access.log sudo sed -i '/192.236.229.229/d' /var/log/nginx/access.log echo "[INFO] Nettoyage terminé."