Attaques et menaces
Injection SQL
Aussi appelé: SQLi
Définition
Attaque insérant des fragments SQL contrôlés par l'attaquant dans des requêtes construites avec des entrées non fiables, permettant vol, modification ou compromission totale de la base.
L'injection SQL (SQLi) se produit lorsqu'une application concatène des entrées utilisateur dans des instructions SQL sans séparation correcte entre code et données. Avec des charges utiles telles que ' OR 1=1-- ou UNION SELECT, un attaquant peut contourner l'authentification, lire des tables arbitraires, modifier ou supprimer des enregistrements et, sur des bases mal configurées, exécuter des commandes système. Les variantes incluent les injections basées sur les erreurs, sur UNION, aveugles (booléennes ou temporisées) et hors bande. La vulnérabilité figure régulièrement au Top 10 OWASP. La défense de référence repose sur les requêtes paramétrées (prepared statements) avec variables liées, complétées par la validation d'entrée, des comptes BD au moindre privilège, des ORM durcis et un WAF en contrôle compensatoire.
Exemples
- Un formulaire de connexion où utilisateur='admin'--' permet de se connecter sans mot de passe.
- Un endpoint de recherche qui expose la colonne password_hash via un UNION SELECT forgé.
Termes liés
Injection NoSQL
Injection visant des bases documentaires, clé-valeur ou orientées graphe, où l'attaquant glisse des opérateurs ou du JavaScript dans les objets de requête.
Command Injection
Command Injection — definition coming soon.
Parameterized Query
Parameterized Query — definition coming soon.
Input Validation
Input Validation — definition coming soon.
OWASP Top 10
OWASP Top 10 — definition coming soon.
Pare-feu applicatif web (WAF)
Filtre en reverse proxy qui inspecte le trafic HTTP/HTTPS pour bloquer les attaques web (injection SQL, XSS, abus de bots) avant qu'elles n'atteignent l'application.