Injection SQL
Kiira1000
Messages postés
26
Date d'inscription
Statut
Membre
Dernière intervention
-
Kiira1000 Messages postés 26 Date d'inscription Statut Membre Dernière intervention -
Kiira1000 Messages postés 26 Date d'inscription Statut Membre Dernière intervention -
Bonjour (:
Je suis entrain de tester la sécurité du site que je gère avec des potes.
En particulier les injections SQL.
Donc j'ai commencé par le basique, qu'on trouve sur le net: 'OR=1=1', #, ect... et tout était sécurisé. Donc pas de problèmes.
Seulement, quand on entre par exemple 'OR=1=1', il y a un message d'erreur qui s'affiche, comme quoi il y a une erreur à la ligne 1, et me renvoi la requête.
Je me suis dit qu'à priori ça ne représentais pas de danger. Mais avec ce modèle, on peut créer une requête personnalisée... et le site s'en fout! J'ai testé avec des variables au pif, mais il ne trouve pas d'erreur, il renvoi juste qu'il ne connait pas la variable...
Est-ce que cela peut représenter un danger potentiel? Comment trouver une façon de l'exploiter et comment régler le problème, si c'est dangereux?
Merci...
Je suis entrain de tester la sécurité du site que je gère avec des potes.
En particulier les injections SQL.
Donc j'ai commencé par le basique, qu'on trouve sur le net: 'OR=1=1', #, ect... et tout était sécurisé. Donc pas de problèmes.
Seulement, quand on entre par exemple 'OR=1=1', il y a un message d'erreur qui s'affiche, comme quoi il y a une erreur à la ligne 1, et me renvoi la requête.
Error Number: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=1=1'' at line 1 SELECT name FROM playerProfile WHERE name='Nemesis' AND passphrase=''OR=1=1' Filename: /var/www/-----/-------/--------.php Line Number: 133
Je me suis dit qu'à priori ça ne représentais pas de danger. Mais avec ce modèle, on peut créer une requête personnalisée... et le site s'en fout! J'ai testé avec des variables au pif, mais il ne trouve pas d'erreur, il renvoi juste qu'il ne connait pas la variable...
Error Number: 1054 Unknown column 'admin' in 'where clause' SELECT name FROM playerProfile WHERE name='Nemesis' AND passphrase='blabla' AND admin='1' Filename: /var/www/-------/------/-----.php Line Number: 133
Est-ce que cela peut représenter un danger potentiel? Comment trouver une façon de l'exploiter et comment régler le problème, si c'est dangereux?
Merci...
A voir également:
- Injection SQL
- Logiciel sql - Télécharger - Bases de données
- Sql lister les tables ✓ - Forum Programmation
- Tectro sre 703 injection notice - Forum PDF
- Jointure sql ✓ - Forum MySQL
- Depart du camion du point d'injection shein - Forum Consommation & Internet
2 réponses
Bonjour
Puisque c'est ton sujet, as-tu compris comment marchait l'injection ?
OR=1=1 ne veut rien dire et c'est normal que ça provoque une erreur de syntaxe. Ce ne serait pas plutôt OR 1=1 ?
De même, le 'admin=1' ne peut provoquer un danger que si tu as réellement un champ qui s'appelle 'admin'. Si tu n'en as pas, tu obtiens le message que tu vois.
Il y a bien un danger potentiel, mais il est très facile à éliminer si tu comprends d'où vient le problème. Il suffit d'utiliser la fonction mysql_real_escape_string si tu travailles avec les fonctions mysql_, ou bien d'utiliser les requêtes préparées avec paramètres si tu utilises PDO.
Puisque c'est ton sujet, as-tu compris comment marchait l'injection ?
OR=1=1 ne veut rien dire et c'est normal que ça provoque une erreur de syntaxe. Ce ne serait pas plutôt OR 1=1 ?
De même, le 'admin=1' ne peut provoquer un danger que si tu as réellement un champ qui s'appelle 'admin'. Si tu n'en as pas, tu obtiens le message que tu vois.
Il y a bien un danger potentiel, mais il est très facile à éliminer si tu comprends d'où vient le problème. Il suffit d'utiliser la fonction mysql_real_escape_string si tu travailles avec les fonctions mysql_, ou bien d'utiliser les requêtes préparées avec paramètres si tu utilises PDO.