Injection sql et $_POST

papipsycho Messages postés 45 Date d'inscription samedi 24 mai 2003 Statut Membre Dernière intervention 1 janvier 2008 - 24 juin 2005 à 09:21
cs_Isengard Messages postés 83 Date d'inscription jeudi 19 juin 2003 Statut Membre Dernière intervention 10 février 2006 - 24 juin 2005 à 12:11
bonjour a tous voila se matin je me suis dit que jallait fait la chasse
o faille sur mon site j'ai commencer par les xss sa c fini mais les
injection sql j'ai un peut plus de mal



donc voila le script hack.htm



<html>

<FORM action="http://127.0.0.1/admin/menu_admin.php?admin=news&db1=add_news" name="general" method="post">

titre


categori <select name="cat_news">
<option value="General">General</option>

</select>


news <textarea name="news" cols="50" rows="15"></textarea>


pseudo




</form>

</html>



et voila mon script pour add a la bdd



case 'add_news':





$pseudo = preg_replace("([\'"<>&/\;$!@#%^*()])","?",addslashes($_POST['pseudo']));

$titre = preg_replace("([\'"<>&/\;$!@#%^*()])","?",addslashes($_POST['titre']));

$news = preg_replace("([\'"<>&/\;$!@#%^*()])","?",addslashes($_POST['news']));

$cat = preg_replace("([\'"<>&/\;$!@#%^*()])","?",addslashes($_POST['cat_news']));

$time = time();

$date = getdate($time);

$date2 = "$date[mday]/$date[mon]/$date[year] $date[hours]:$date[minutes]";

mysql_query("INSERT INTO news VALUES ('','$pseudo','$date2','$titre','$news','$cat') ") or die ("erreur insert ".mysql_error());

echo "<center>$lang_redi_add_1

</centre>


<center>$lang_redi_all

<meta http-equiv="refresh" content="3; URL=$config_url_site/admin/menu_admin.php">";

break;



merci de m'aider dsl pour les fautes de francais

--==Papi Psycho==--

4 réponses

papipsycho Messages postés 45 Date d'inscription samedi 24 mai 2003 Statut Membre Dernière intervention 1 janvier 2008
24 juin 2005 à 10:14
jai oublie une petit presiction normalement pour avoir accer a cette
parti du site il fo etre admin la il me me mais bien comme si jetait un
intru mais il poste quand meme
--==Papi Psycho==--
0
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
24 juin 2005 à 10:49
Tu met un " if ($level !== 'admin') die('Pas admin']; " Et comme ca, t'as plus accès à la page.



Après pour rentrer les dates, tu peux faire dans ta DB SQL un champ type DATETIME, et quand tu fais un INSERT, ca donne ca :

INSERT INTO news VALUES ('','$pseudo',NOW(),'$titre','$news','$cat') ");

Ca t'évite de te faire chier avec time() et getdate($time) en php :)
0
papipsycho Messages postés 45 Date d'inscription samedi 24 mai 2003 Statut Membre Dernière intervention 1 janvier 2008
24 juin 2005 à 11:04
jai deja un $level == admin mes plus au



if (session_is_registered("authentification") && $_SESSION['privilege'] == "admin"){

}

else {

header("Location:../index.php?erreur=intru");

}

--==Papi Psycho==--
0
cs_Isengard Messages postés 83 Date d'inscription jeudi 19 juin 2003 Statut Membre Dernière intervention 10 février 2006
24 juin 2005 à 12:11
De toute facon on peut pas forcer des sessions non ?

"Celui qui brise une chose pour découvrir ce que c'est a quitté le chemin de la sagesse"
0
Rejoignez-nous