Injection de commandes
Qu'est-ce que Injection de commandes ?
Injection de commandesAttaque où une entrée utilisateur est transmise sans assainissement à un shell système, amenant l'application à exécuter des commandes fournies par l'attaquant.
L'injection de commandes (OS command injection) survient lorsqu'une application construit une commande système en concaténant des entrées non fiables et la transmet à un shell. Des métacaractères comme ;, &, |, $() ou les guillemets inversés permettent à l'attaquant d'enchaîner des commandes supplémentaires qui s'exécutent avec les privilèges du processus applicatif. Les conséquences vont de la lecture-écriture arbitraire de fichiers au mouvement latéral, en passant par des shells inverses et la prise de contrôle complète du serveur. Les défenses consistent à éviter complètement le shell via des API qui acceptent des tableaux d'arguments, à utiliser des listes blanches, à valider et échapper avec des bibliothèques éprouvées, à isoler dans des sandbox, à exécuter les services avec des privilèges minimes et à filtrer le trafic sortant pour limiter l'impact.
● Exemples
- 01
Un utilitaire ping qui concatène un nom d'hôte permet à 127.0.0.1; cat /etc/shadow d'exposer des empreintes de mots de passe.
- 02
Un endpoint de traitement d'images appelant ImageMagick exécute une commande de l'attaquant via un nom de fichier forgé.
● Questions fréquentes
Qu'est-ce que Injection de commandes ?
Attaque où une entrée utilisateur est transmise sans assainissement à un shell système, amenant l'application à exécuter des commandes fournies par l'attaquant. Cette notion relève de la catégorie Attaques et menaces en cybersécurité.
Que signifie Injection de commandes ?
Attaque où une entrée utilisateur est transmise sans assainissement à un shell système, amenant l'application à exécuter des commandes fournies par l'attaquant.
Comment se défendre contre Injection de commandes ?
Les défenses contre Injection de commandes combinent habituellement des contrôles techniques et des pratiques opérationnelles, comme détaillé dans la définition ci-dessus.
Quels sont les autres noms de Injection de commandes ?
Noms alternatifs courants : Injection de commandes système, Shell injection.