Comment trouver 75 000 failles de type injections SQL


Github
GitHub est un site web d'hébergement et de gestion de projets. On y trouve souvent des logiciels libres dont on peut étudier ouvertement le code source. Il connaît un tel succès, qu'au dernier recensement qui a eu lieu en 2013, il hébergeait plus de 5 millions de repositories.

Mais il y a un hic. En effet, il est possible d'utiliser le moteur de recherche pour trouver des vulnérabilités dans le code source des applications et ceci de façon industrialisée.

Voici un exemple avec la requête suivante, qui permet de trouver toutes les variables PHP GET qui ne sont pas contrôlées et qui sont ensuite utilisées directement dans des requêtes SQL :

extension:php mysql_query $_GET

En d'autres termes, ce type de recherche permet de trouver toutes les failles de type injections SQL possibles, dans des applications PHP de n'importe quelle nature. Et il y a de quoi sursauter quand on regarde le nombre de résultats : plus de 75 000 entrées sont concernées. Si l'on essaye avec $_POST, on trouve sensiblement le même nombre de résultats.

Failles SQL dans les projets GitHub

 

Il ne reste plus qu'à patcher...

Source


7 Commentaires pour "Comment trouver 75 000 failles de type injections SQL"

Flux des commentaires de cet article Ajouter un commentaire
  •  

    On voit que le magic_quote a encore de beaux jours devant lui :(

    RépondreRépondre
    TitAnz35 , le 3 juin 2013 à 14:07
  •  

    Je suis pas tout à fait d'accord car l'exemple de requête ne prend pas en compte une éventuelle vérification préliminaire voir un (pseudo)-transtypage. Et ne permet pas de détecter le fait qu'on ai par exemple fait un [code]
    settype($_GET["id"], "integer");
    [/code] auparavant !

    RépondreRépondre
    Kext , le 3 juin 2013 à 17:14
  •  

    salut,

    intéressant, cependant, je plussoie @Kext, ta requête prends aussi ceux qui peut-être protègent leur variables avec des mysql_escape_string etc.

    Par contre, est-ce que les requêtes qui utilisent PDO sont infaillibles à l'injection SQL?

    RépondreRépondre
    fabienwang , le 3 juin 2013 à 21:53
  •  

    Oui, il semble que le PDO soit vraiment bien sécurisé contre ce type d'attaques, pour peu que tu le fasse bien. C'est comme partout, il faut faire attention a ce que l'on fait.

    RépondreRépondre
    SoftwareGuy , le 3 juin 2013 à 22:33
  •  

    Ça fonctionne aussi pour trouver des failles XSS. Voici la requete: extension:php <?=$_GET

    RépondreRépondre
    Ahmed , le 4 juin 2013 à 01:07
  •  

    Il y a une des requêtes qui est sécurisé car il y a un cast vers un Int mais bon passons, sinon ça fait vraiment peur comme certains font n'importe quoi avec php.

    RépondreRépondre
    Wapaca , le 7 juillet 2013 à 04:19
  •  

    Toujours pas patché... 153 000 resultats

    RépondreRépondre
    Theo , le 8 juillet 2014 à 15:14
 

Ajouter un commentaire

actualité android apache apple astuce astuces bash bilboblog blog boot chrome clavier commande commandes conky date debian Desktop développement elementary exploit faille fedora firefox flash gimp gnome google graphique Graphisme hack hacking Hardware humour intel internet iphone jailbreak Jeux Kde kernel libre Linux log logiciels Logiciels Libres lucid lynx maemo mail maquette metasploit microsoft mobile mockup monitoring mozilla multi-touch musique mysql n900 nautilus nokia noyau openoffice open source password photos php Planet publicité redhat red hat rpm réseau screenshot script serveur serveurs shell sql ssh statistiques sysadmin system Sécurité thème tux-planet tv twitter ubuntu unity vidéo vidéos vlc voyage wallpaper windows wordpress yum