Sécurité dans forum

Répondre
moogli
le 24/12/2004 à 01:19
moogli
lut,

pour faire simple oui :) (c'est pas limitatif)

addslashes on va dire que c'est pour éviter les injection sql
et htmlentities c'est pour éviter le saloperies en html du genre <script language="javascript"> document.location.href="monsiteamon.com";</script> au quel tu penser !

quand au fait que tu n'est pas réussi a executé du php en l'insérant dans un forum je pense que c'est du au fait qu'il est considérer comme tu text quand tu récupère de ta base et que tu ne fait rien pour qu'il s'éxécute (y a moyen il me semble mais je sais plus comment)!

il existe aussi htmlspecialchars, striptags et certainement d'autre que j'oublie.

Il ne faut pas oublier que la manière de coder est aussi importante que ce genre de focntion !

bonne lecture (j'espère ne pas avoir dis trop de ceonnerie smiley)

smiley
Il en faut peu pour être heureux !!!!!
Bzh
le 24/12/2004 à 01:27
Bzh
Ok ! Merci...

Peut être que mon code php c 'est pas éxécuté parce que j' avais déjà mis stripslashes() !!!

Bye...
moogli
le 24/12/2004 à 01:34
moogli
eu stripslashes ne fait que retirer les \ qui échappe ' et " donc ton code été comme rentrée dans la txt area (hormis autre fonction)

@+
Il en faut peu pour être heureux !!!!!
Lefounard
le 24/12/2004 à 01:44
Lefounard
RTFM about SQL injection and XSS ! voila ;)
Ciao,
I am singing in the rain , I am happy again !!
mobman02
le 25/12/2004 à 22:01
mobman02
en faite, moi avec htmlentities() je suis tranquille,
les visiteurs peuvent saisir du code (des < >), les caractere speciaux seront traduit en html (ce qui donne ca: &lt; &gt; ) donc php n'interprete pas.

Il faut aussi mettre le addslashes pour eviter que ca bug lorsque l'utilisateur met des ' !
http://damienalexandre.fr/
Bzh
le 26/12/2004 à 15:40
Bzh
Ok !!! Merci...

Oui, en effet, donc
htmlentities()
et
addslashes()
suffisent à avoir une protection acceptable !!!

Merci...

Bye... smiley
darealya
le 31/12/2004 à 09:48
darealya
Oui pour exemple à ceux qui n'ont pas très bien suivi ce dialogue :
Afin de limiter les utilisateurs malveillants lors d'une inscription par exemple, on peut avoir cette fonction :
<?php
function login( $username, $password )
// on regarde si username and password existent dans la db
// si ils y sont, on retourne vrai (return true)
// sinon on retourne faux (return false)
{
$username = trim( addslashes( htmlspecialchars( $username ) ) ); # parsing du login
$password = trim( addslashes( htmlspecialchars( $password ) ) ); # parsing du password
// script testé avec 'or''='
// on regarde si username est unique
if( ( strlen( $username ) != 0 ) && ( strlen( $password ) != 0 ) ){
$req = mysql_query( ' SELECT * FROM membres
WHERE username = "'.$username.'"
AND password = "'.$password.'" ' );
if( !$req )
return 0;

if( mysql_num_rows( $req ) > 0 )
return 1;
else
return 0;
}
mysql_free_result( $req );
}
?>


Sans oublier bien évidemment de placer la protection md5(); pour le password que je n'ai pas mis là pour la clarté du script.
Be YourSelf - Be Inspired
Spirit Of Doc
le 31/12/2004 à 10:28
Spirit Of Doc
ouai enfin c'est pas top comme protection.
Si tu ne met que ça tout le monde peut passer outre t'es protection. (j'vais pas faire de cours de hack car j'en suis incapable :p) mais regarde du côté de ce carractère
#


Il est super pratique ... pour outrepasser les demandes de passe et de login (super aussi pour recup le compte de l'admin)

J'vous conseil pas de l'utiliser car tout site (normalement) n'as pas cette faille...
Vous avez besoin d'un script ou d'aide ??? je peux vous le fournir gratuitement.
Répondre
LoadingChargement en cours