JeuWeb - Crée ton jeu par navigateur
Le hashage peut-il entraîner une injection SQL ? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Le hashage peut-il entraîner une injection SQL ? (/showthread.php?tid=4654)

Pages : 1 2


Le hashage peut-il entraîner une injection SQL ? - Ter Rowan - 20-03-2010

je sens qu on va se moquer de moi mais ....

supposons qu on crypte un mot de passe en md5 (ou sha perché ou autre)

et ce mode de passe crypté, ben il faut le sauver en bdd...

jusque là tout va bien

sauf que... hum (j'ai honte)

en cryptant l'algorithme transforme des caractères en d'autres caractères

qu'est ce qui empêche que le cryptage génère une injection SQL ?

ça voudrait dire qu'il faut blinder l'insertion d'un machin crypté ?


RE: existe-t-il une faille liée à l'utf8 ou unicode? - Anthor - 20-03-2010

On a pas encore vu à ma connaissance de hash qui permettait une injection !
Dans tout les cas, avec le bon échappement, ça ne doit pas arriver, quel que soit la chaine de caractère passée.

Mais je ne suis pas sûr d'avoir compris la question ?


RE: existe-t-il une faille liée à l'utf8 ou unicode? - php_addict - 20-03-2010

(20-03-2010, 07:30 PM)Ter Rowan a écrit : qu'est ce qui empêche que le cryptage génère une injection SQL ?

tu peut toujours faire une recherche dans ta variable cryptée des chaines de caracteres pouvant être des injection sql...theoriquement cela doit etre possible mais faut vraiement pas avoir de bol!!! surtout si l'on utilise un grain de sel en plus du cryptage...


RE: existe-t-il une faille liée à l'utf8 ou unicode? - My Hotel - 20-03-2010

(20-03-2010, 07:54 PM)php_addict a écrit : tu peut toujours faire une recherche dans ta variable cryptée des chaines de caracteres pouvant être des injection sql...

Pour moi, md5 et sha1, les plus utilisés, ne génèrent que des chaînes avec lettres/chiffres... Donc je pense pas que des simples lettres et chiffres puissent être à l'origine d'une injection...
Et de toute façon, c'est impossible de trouver une chaine à partir d'un hash final, sinon on pourrait décoder tous les mots de passes...

Bye


RE: existe-t-il une faille liée à l'utf8 ou unicode? - Anthor - 20-03-2010

(20-03-2010, 08:43 PM)My Hotel a écrit : [quote='php_addict' pid='79989' dateline='1269107665']
Et de toute façon, c'est impossible de trouver une chaine à partir d'un hash final, sinon on pourrait décoder tous les mots de passes...

Bye

Les tables de hash sont très complète aujourd'hui au niveau du md5 ^^
Tu trouveras plein de sites rapidement avec Google en 2 minutes.


RE: existe-t-il une faille liée à l'utf8 ou unicode? - php_addict - 21-03-2010

(20-03-2010, 08:43 PM)My Hotel a écrit : Et de toute façon, c'est impossible de trouver une chaine à partir d'un hash final, sinon on pourrait décoder tous les mots de passes...

malheureusement c'est déjà fait, pas facile sans doute mais faisable...


RE: existe-t-il une faille liée à l'utf8 ou unicode? - Argorate - 21-03-2010

Oui, faut faire gaff pour le md5, si la chaine n'est pas réélement complexe, c'est comme si elle était non crypté...
Ca m'a d'aillieurs bien embeter quand j'ai découvert un site qui fait la "traduction" d'un md5...


RE: existe-t-il une faille liée à l'utf8 ou unicode? - Sephi-Chan - 21-03-2010

Une contre-mesure à l'utilisation de rainbow tables consiste à saler les mots de passes avant d'en calculer le hash.


Sephi-Chan


RE: existe-t-il une faille liée à l'utf8 ou unicode? - My Hotel - 21-03-2010

@Anthor : oui je connais le principe des rainbow table, mais l'utilisation d'un algorithme plus puissant que md5, du style sha1 ou mieux encore sha256/512 empêche l'utilisation de table de hash...
D'ailleurs md5 seul est de moins en moins utilisé (j'espère)... Quoique, il y a encore des sites qui ne cryptent pas les mots de passe.

Bye


RE: Le hashage peut-il entraîner une injection SQL ? - Ter Rowan - 21-03-2010

ben merci pour vos réponses

ça y répond un peu même si deux possibilités

Citation :Pour moi, md5 et sha1, les plus utilisés, ne génèrent que des chaînes avec lettres/chiffres... Donc je pense pas que des simples lettres et chiffres puissent être à l'origine d'une injection...

dans ce cas, ça ne le permet pas

Citation :Dans tout les cas, avec le bon échappement, ça ne doit pas arriver, quel que soit la chaine de caractère passée.
mais au cas où ^^

sachant que je ne pensais pas forcément à une injection volontaire de celui qui met son mot de passe

mais, en dehors de plage de caractères spécifiques (ou de règles internes à l'algo) je craignais (et finalement crains encore ^^) que la transformation ne génère elle même une faille