Archives: requêtes préparées

  • Les requêtes préparées pour prévenir certaines injections SQL

    Accéder à « Les requêtes préparées pour prévenir certaines »

    Lorsqu'une requête SQL doit utiliser une valeur tirée d'une variable, nous exposons notre base de données aux injections SQL. Il s'agit d'une technique utilisée par les « hackers » pour tenter d'obtenir des informations sensibles tirées de la base de données.

    Les variables utilisées dans la requête pourraient tirer leur valeur d'un formulaire Web ($_POST), d'un paramètre dans l'URL ($_GET), d'un cookie ($_COOKIE), etc. Donc, si nous ne prenons pas nos précautions, un utilisateur malveillant pourrait entrer comme valeur des caractères particuliers qui modifieraient le comportement de la requête. Il pourrait ainsi obtenir des accès sans connaître le mot de passe, modifier les données stockées dans la BD, etc.

    C'est pourquoi, lorsqu'une requête contient une valeur tirée d'une variable, nous utiliserons toujours des requêtes préparées, aussi appelées requêtes paramétrables, afin de protéger nos données contre les injections SQL.

    (suite…)
  • Comment les « hackers » réussissent les injections SQL

    Accéder à « Comment les « hackers » réussissent les injecti »

    Une injection SQL consiste à entrer des caractères précis dans une variable qui sera utilisée dans une requête SQL. Ces caractères feront en sorte que la requête originale sera déviée de son but afin d'ouvrir des portes aux utilisateurs malveillants. Ils pourraient, par exemple, s'authentifier sans connaître le mot de passe, créer un nouvel usager administrateur dont ils connaîtront le mot de passe, détruire une table, bousiller les données, etc.

    Mais où ces injections peuvent-elles être entrées ? À n'importe quel endroit où les données peuvent être modifiées par un usager : dans une case de saisie, dans un URL, dans un cookie, etc.

    (suite…)