Faille SQL

Fermé
franck9595 Messages postés 5 Date d'inscription mercredi 27 mai 2015 Statut Membre Dernière intervention 9 juillet 2015 - 9 juil. 2015 à 11:26
jordane45 Messages postés 38255 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 18 octobre 2024 - 10 juil. 2015 à 01:20
Bonjour,
Je suis étudiant et j'aimerai faire des attaques sql sur ma base donnée je vous envoi mes fichiers de configuration, je pense que mon attaque devrait fonctionner, je me demande si ce n'est pas ma base de donnée qui contre les attaques.

J'ai deux fichiers un fichier qui me créer un formulaire pour entrer mes identifiants et un deuxième qui fait la connexion à la base mysql.
J'ai entrer ' OR 1=1 OR 1=' comme identifiant et je ne comprend pas pourquoi la faille ne fonctionne pas. avez-vous une idée?

formulaire.html
<html>
<head>
<title>Connexion au site</title>
</head>
<body>
<form method="post" action="5_connexion.php">
<table border="0" width="400" align="center">
<tr>
<td width="200"><b>Vôtre login</b></td>
<td width="200">
<input type="text" name="login">
</td>
</tr>
<tr>
<td width="200"><b>Vôtre mot de passe<b></td>
<td width="200">
<input type="password" name="password">
</td>
</tr>
<tr>
<td colspan="2">
<input type="submit" name="submit" value="login">
</td>
</tr>
</table>
</form>
</body>
</html>


connexion.php
<?php
ini_set('display_errors','off');
$host = "localhost"; /* L'adresse du serveur */

$login= $_POST['login'];
$password = $_POST['password'];

global $host, $login, $password, $base;
$db = mysql_connect($host,$login,$password );


echo "l'identidiant est : ";
echo $login;
echo " le mot de passe est :" ;
echo "$password";


if ($db==FALSE) {
echo "Erreur de connexion à la base de donnée";
}
else {
echo "Connexion réussi avec l'utilisateur : ";
echo $login;

}


?>

A voir également:

1 réponse

jordane45 Messages postés 38255 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 18 octobre 2024 4 692
10 juil. 2015 à 01:20
Bonjour,

La faille dont tu parles fonctionne sur les exécutions de requêtes .... ... pas sur la connexion à la BDD....

Au passage.. on ne passe jamais les identifiants de connexion d'une BDD par un formulaire POST ..... ces informations sont normalement stockées dans un fichier à part....

Pour ce qui est de gérer des "comptes" à partir d'une BDD ... cela se fait en créant, dans ta BDD, une table (par exemple :"utilisateurs" avec les champs : id, login,password, nom,prenom...etc.... )
C'est ensuite, via une requête de type SELECT ... que tu interroges cette table et donc que tu autorises l'accès ou non à ton site !

Les identifiants de connexion à une BDD (ceux utilisés dans le mysql_connect) ne servent qu'à connecter ton SITE à ta BDD ... pas tes users !!!

Au passage.. si tu commences tout juste à coder... passes à la PDO ...
l'extension mysql_ est considérée comme obsolete.
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top

PS: A l'avenir.. merci d'utiliser la coloration syntaxique (les balises de code) pour poster tes codes sur le forum.
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

.

1