Marketing

Comment prévenir une attaque par injection SQL ?

 

Utilisez des déclarations préparées avec des requêtes paramétrées

Cette méthode d’assainissement des entrées de la base de données oblige les développeurs à définir d’abord tout le code SQL, puis à ne passer que des paramètres spécifiques à la requête SQL : les données saisies ont explicitement une portée limitée qu’elles ne peuvent pas dépasser. Cela permet à la base de données de faire la distinction entre les données qui sont saisies et le code qui doit être exécuté, quel que soit le type de données fournies dans le champ de saisie. Certaines bibliothèques de mappage objet-relationnel sont couramment utilisées à cette fin car certaines versions nettoient automatiquement les entrées de la base de données.

Échappez à toutes les entrées fournies par l’utilisateur

Lors de l’écriture du langage SQL, certains caractères ou mots ont une signification particulière. Par exemple, le caractère « * » signifie « tout ». Pour éviter que les utilisateurs ne saisissent ces caractères par accident ou par malveillance dans une demande d’API adressée à la base de données, les données fournies par l’utilisateur peuvent être échappées. L’échappement d’un caractère est un moyen d’indiquer à la base de données de ne pas l’analyser comme une commande ou une condition mais de le traiter comme une entrée littérale.

Utilisez des procédures stockées

Bien qu’il ne s’agisse pas d’une stratégie de sécurité solide en soi, les procédures stockées peuvent contribuer à limiter le risque associé à l’injection SQL. En limitant correctement les autorisations du compte de la base de données qui exécute les requêtes SQL, même le code d’application non robuste qui est vulnérable à l’injection SQL n’aura pas les autorisations nécessaires pour manipuler des tables de base de données non liées. Les procédures stockées peuvent également vérifier le type des paramètres d’entrée, empêchant ainsi la saisie de données qui ne correspondent pas au type que le champ est censé recevoir. Dans les cas où les requêtes statiques sont insuffisantes, les procédures stockées sont généralement à éviter.

Appliquez le principe du moindre privilège

En règle générale, dans tous les cas où un site Web doit utiliser du SQL dynamique, il est important de réduire l’exposition à l’injection SQL en limitant les autorisations à la portée la plus étroite possible pour exécuter la requête concernée. Dans sa forme la plus évidente, cela signifie qu’un compte administratif ne devrait en aucun cas exécuter des commandes SQL à la suite d’un appel API provenant d’une requête non autorisée. Si les procédures stockées sont mieux utilisées pour les requêtes statiques, l’application du principe du moindre privilège peut contribuer à réduire les risques des requêtes SQL dynamiques.

Au-delà de toutes ces recommandations, vous pouvez utiliser des outils pour vous protéger. Souvent développés par des sociétés spécialisées comme Cloud Protector, ces outils vous seront très utiles pour déceler les attaques avant qu’elles ne vous impactent. Pour découvrir un aperçu de ces outils, vous pouvez naviguer sur le net ou bien vous rendre sur les pages dédiées des entreprises professionnelles du secteur.

Maxime Richard

Redacteur web et entrepreneur dans le milieu du marketing digital depuis plus de 5 ans.

Recent Posts

Pourquoi le label Ecovadis est devenu incontournable pour les entreprises engagées

Face à l’urgence climatique et aux attentes croissantes des consommateurs, la responsabilité sociétale des entreprises…

4 jours ago

Confiez vos projets à une entreprise de rénovation à Colombes : un choix stratégique pour valoriser votre bien

Que vous soyez propriétaire d’un appartement ancien, d’une maison familiale ou d’un local professionnel, entreprendre…

4 jours ago

Découvrez le BTS NDRC : une formation d’avenir pour intégrer le monde commercial

Dans un monde où les relations clients et la négociation occupent une place prépondérante dans…

4 jours ago

Le monte-escalier : une aide précieuse pour mieux vivre chez soi

Vieillir chez soi est un souhait partagé par de nombreuses personnes. Pourtant, lorsque monter les…

2 semaines ago

Pourquoi faire appel à un avocat après un accident de moto ?

Les accidents de moto sont malheureusement fréquents et souvent graves. Les motards, plus exposés que…

3 semaines ago

Étudier à l’étranger : pourquoi choisir une année scolaire en Irlande ?

Dans un monde toujours plus connecté et concurrentiel, offrir à son enfant une immersion scolaire…

4 semaines ago