Hugo Lapointe Di Giacomo Failles de sécurité INJECTION Sommaire Définition Exemples Solution Injection Qu’est-ce que l’injection? Définition Définition « Une faille d'injection, telle l'injection SQL, OS et LDAP, se produit quand une donnée non fiable est envoyée à un interpréteur en tant qu'élément d'une commande ou d'une requête. Les données hostiles de l'attaquant peuvent duper l'interpréteur afin de l'amener à exécuter des commandes fortuites ou accéder à des données non autorisées. » Injection SQL Types d’Injection Une injection SQL est un type d'exploitation d'une faille de sécurité d'une application interagissant avec une base de données, en injectant une requête SQL non prévue par le système et pouvant compromettre sa sécurité. Injection OS Types d’Injection Une injection OS est un type d'exploitation d'une faille de sécurité d'une application, en injectant une commande relative au système non prévue et pouvant compromettre sa sécurité. Injection LDAP Types d’Injection Une injection LDAP est un type d'exploitation d'une faille de sécurité d'une application interagissant avec un service d’authentification basé sur le protocole LDAP, en injectant une requête non prévue par le système et pouvant compromettre sa sécurité. Exemples Injection Injection SQL • Afin de pénétrer dans une base de données par une faille SQL, il faut passer par deux étapes : la détection de la faille (manuel) et l’exploitation de la faille (peut être automatisé). • Voici quelques exemples : – http://www.youtube.com/watch?v=h-9rHTLHJTY (manuel) – http://www.youtube.com/watch?v=4_rV-fc-IfY (automatisé) Solutions Injection EMPÊCHER CETTE ATTAQUE Prévenir une injection nécessite de séparer les données non contrôlées des requêtes ou des commandes. • La meilleure option consiste à utiliser une API sécurisée qui permet de se passer de l’interpréteur ou qui fournit une interface de paramétrage des requêtes. Méfiez vous des API, comme les procédures stockées, qui sont paramétrées mais qui peuvent introduire des injections en profondeur. • Si vous ne disposez pas d’une API de paramétrage des requêtes, vous devez faire extrêmement attention à échapper les caractères spéciaux en utilisant la syntaxe particulière de l’interpréteur. ? Mais, attendez… Il y a plus. Suite! Support disponible • Plusieurs organismes offres des solutions à l’injection et propose plusieurs moyens selon vos besoins. • OWASP : https://www.owasp.org