Sécuriser objet dans session

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Sécuriser objet dans session

par costadelo » 07 nov. 2007, 21:39

Merci pour vos réponses :!:

par AB » 07 nov. 2007, 19:46

Oui mais j'ai l'habitude d'utiliser toujours mysql_real_escape_string() même pour des valeurs numériques (normalement ça gène pas).
public function quote_smart($value){
	   // Stripslashes
	   if (get_magic_quotes_gpc()) { $value = stripslashes($value); }

	   // Protection si ce n'est pas un entier
	   $value = !is_numeric($value)? "'" . mysql_real_escape_string($value) . "'" : mysql_real_escape_string($value);

	   return $value;
}
Mais cela ne te dispenses pas de faire un echo htmlentities(row['champ']) pour l'affichage des données

par costadelo » 07 nov. 2007, 16:52

Est ce que ce genre de protection lors de l'insertion de variables postées via formulaire dans mes requêtes SQL est elle suffisante pour protégé mes scripts contres des attaques malveillantes ?
public function quote_smart($value){
	   // Stripslashes
	   if (get_magic_quotes_gpc()) {
		  $value = stripslashes($value);
	   }
	   // Protection si ce n'est pas un entier
	   if (!is_numeric($value)) {
		  $value = "'" . mysql_real_escape_string($value) . "'";
	   }
	   return $value;
}
[/php]

par AB » 07 nov. 2007, 02:44

Bonsoir,

Cela pourrait être l'appel à des pages à l'aide de variables externes non vérifiées + include() , ou de tout ce que pourrait envoyer l'utilisateur via des formulaires et qui ne serait pas vérifié ou protégé à l'affichage par exemple...

par costadelo » 07 nov. 2007, 01:26

Personne n'a d'idée à ce sujet ?

par costadelo » 05 nov. 2007, 15:22

Pourrais-tu me citer des exemples de failles dans des scripts php ?

par AB » 05 nov. 2007, 02:26

Ou sinon il faudrait une grosse faille de sécurité dans ton script.

par Sékiltoyai » 05 nov. 2007, 02:11

Dans la mesure où les données de session ne sont accessibles que par toi, si tu ne donnes pas tes identifiants de ftp ou d'administrateur au premier venu, je ne vois pas pourquoi on pourrait accéder aux données de session.
A moins que tu fasses un var_dump() sur toutes tes pages, mais dans la mesure où ce n'est pas fait pour, j'en doute…

par costadelo » 04 nov. 2007, 16:17

euh...je ne compte pas récupérr ces variables...je souhaite simplement savoir s'il y'a un moyen d'empêcher qu'elles s'affchent lors de l'éxécution d'un var_dump. Ma question est la suivante en fin de compte : Est - il possible qu'une personne mal intentionnée puisse accéder aux informations de la session qui lui a été attribuée ?

par Calimero » 02 nov. 2007, 19:38

Il n'y as pas de solution ? vraiment ?
La solution est de ne pas utiliser var_dump() comme cela. Var_dump sert au déboguage et a donc tendance à en montrer plutot trop que pas assez.

utilise plutot get_object_vars() à la place. http://fr2.php.net/get_object_vars

par costadelo » 02 nov. 2007, 18:08

Il n'y as pas de solution ? vraiment ?

Sécuriser objet dans session

par costadelo » 01 nov. 2007, 13:32

Bonjour @ tous,

Je souhaitais savoir s'il étais possible de sauvegarder un objet dans une session en protégeant (via private ou protected) l'accès aux propriétés de l'objet. Effectivement, lorsque j'affiche un var_dump($_SESSION), je vois la valeur des propriétés de mon objet, ce que j'aimerais éviter...

exemple de ce que me retourne un var_dump($_SESSION) :
array(9) { ["admin"]=>  string(2) "ok" ["lang"]=>  string(2) "fr" ["host:private"]=>  string(9) "localhost"}