OpenHands ZombAI Exploit: Prompt Injection To Remote Code Execution
Mis à jour :
Exploitation de vulnérabilités dans OpenHands : de l’injection de prompts à l’exécution de code à distance
Une faille de sécurité a été identifiée dans OpenHands, un agent développé par All Hands AI, permettant à des données non fiables d’être utilisées pour prendre le contrôle total du système. Cette vulnérabilité, exploitant l’injection de prompts, peut transformer une instance d’OpenHands en un “ZombAI”, un agent sous le contrôle d’un attaquant.
L’exploitation consiste à tromper l’agent pour qu’il télécharge, exécute un logiciel malveillant, puis se connecte à un serveur de commande et de contrôle (C2) contrôlé par l’attaquant. L’attaque peut être déclenchée simplement en incitant l’agent à visiter un site web contenant des instructions malveillantes, ou via des données non fiables traitées par l’agent, comme des problèmes GitHub. L’agent, dans sa fonction de recherche d’informations, clique sur des liens et suit les instructions trouvées, menant à l’exécution de commandes sur le système hôte. Une autre technique démontrée est l’ “AI ClickFix”, où l’agent exécute des commandes directement depuis le terminal après les avoir copiées depuis une source malveillante.
L’impact potentiel de cette faille touche la confidentialité, l’intégrité et la disponibilité du système, permettant une exécution de code à distance et le contrôle total des ressources informatiques, ainsi que l’accès aux informations sensibles et aux clés API.
Points Clés :
- Nature de la Vulnérabilité : Injection de prompts dans les applications basées sur les LLM.
- Mécanisme d’Attaque : Hijacking de l’agent via des instructions malveillantes dans des données non fiables (sites web, issues GitHub).
- Conséquence : Exécution de code à distance, installation de malware, connexion à un serveur C2 (création d’un “ZombAI”).
- Méthodes Spécifiques : Utilisation de la même charge utile que pour l’agent Claude Computer-Use d’Anthropic, exploitation de l’ “AI ClickFix”.
Vulnérabilités :
- Bien que l’article ne fournisse pas de CVE spécifiques, la vulnérabilité est intrinsèque à la manière dont les agents traitent des données externes et exécutent des actions basées sur celles-ci sans vérification adéquate.
Recommandations :
Pour le fournisseur (All Hands AI) :
- Mettre à jour la documentation pour informer les utilisateurs sur les risques d’injection de prompts.
- Implémenter des mécanismes de surveillance des prompts, similaires à ceux d’OpenAI Operator.
- Fournir des conseils aux clients pour l’utilisation de solutions de protection de point de terminaison et de surveillance, ainsi que la collecte de journaux.
- Envisager des fonctionnalités pour contrôler l’accès réseau sortant.
- Ajouter une fonctionnalité demandant l’autorisation de l’utilisateur avant d’exécuter des commandes dans le terminal ou de naviguer sur des sites web.
Pour les utilisateurs :
- Isolation : Exécuter la version locale d’OpenHands dans un environnement isolé (sandbox) comme recommandé, et utiliser des règles de pare-feu pour limiter les connexions réseau sortantes aux domaines de confiance.
- Prudence : Utiliser OpenHands avec prudence, en limitant l’accès aux données sensibles, au code ou aux secrets.
- Traitement comme un acteur potentiellement malveillant : Considérer les agents comme des “employés” potentiellement compromis et les sécuriser en conséquence.
