Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1395 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Parametres par URL & "Securite"

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Parametres par URL & "Securite"

n°700229
lkolrn
<comment ça marche?>
Posté le 15-04-2004 à 15:09:22  profilanswer
 

bonjour a tous!
 
je suis en train de finir une FAQ dynamique, avec a peu pres le meme fonctionnement que ce qu'ils nomment un "forum" a l'APJV http://www.afjv.com/actu_forums.htm :D
Grosso modo c du post de questions dans des rubriques préfaites, et du post de reponses a ces questions... Bref, rien de bien sorcier :sweat: [:aras qui rit]
Pour faire fonctionner tout ca, j'utilise des parametres, comme par exemple

action=question/reponse&rubriqueID=3&msgID=1&jecpokoi=472

, que je passe en GET a d'autres pages, cad par l'URL. La non plus, rien de nouvo sous le soleil [:skyx@v]
Seulement jme demande: toutes ces variables passées par URL, c po "dangereux" :??: Voir des vrais ID d'enregistrements MySQL, ca peut po etre genant :??:
Si mon utilisateur s'amuse a trifouiller ces parametres, il pouré ptet bien faire des conneries...
 
Je suis encore newbie des langages & des "concepts" liés a l'Internet, donc je me demande [:airforceone]
 
MERCI D'AVANCE :jap:


Message édité par lkolrn le 15-04-2004 à 15:36:38
mood
Publicité
Posté le 15-04-2004 à 15:09:22  profilanswer
 

n°700281
Sygus
Posté le 15-04-2004 à 15:43:52  profilanswer
 

je me pose la meme question...
c'est vrai que si t'as une url du type :
 
delete.php?id=$id
 
ou la page efface l'id correspondant, ya rien de difficile à effacer toute la table ^^

n°700288
lkolrn
<comment ça marche?>
Posté le 15-04-2004 à 15:48:29  profilanswer
 

il existerait po un moyen de faire des GET (par le biais de liens hypertexte ou de 'header()') en rendant les parametres "invisibles" :??:
 
(je conçois qu'il est possible de "masquer" ses parametres en leur donnant des noms bidon, mais c un peu le "niveau 0" de l'invisibilite! ^^)


Message édité par lkolrn le 15-04-2004 à 15:50:33
n°700320
boulax
Inserer phrase hype en anglais
Posté le 15-04-2004 à 16:07:50  profilanswer
 

Dans le cas d'un formulaire tu peu faire
 
<form name=f onSubmit='envoi()'>
 
avec en javascript
 
function envoi()
{
     f.method = 'POST';
     f.action = $Lien ;
     f.submit();
}
 
Dans la page qui traite les données tu récupère les valeurs avec $_POST["nomVariable"] et les valeurs n'apparaissent pas dans l'url.


Message édité par boulax le 15-04-2004 à 16:08:47

---------------
Posté depuis des chiottes, sales. Me gusta.
n°700349
lkolrn
&lt;comment ça marche?&gt;
Posté le 15-04-2004 à 16:28:35  profilanswer
 

SANS javascript, ca donnerait koi :??: :D

n°700365
Dj YeLL
$question = $to_be || !$to_be;
Posté le 15-04-2004 à 16:41:03  profilanswer
 

il faudrait aussi faire une vérif sur l'autre page, pour tester le referent ... s'il n'existe pas (càd si le lien a été entré à la main) tu stop le script
 
++
 
 
Edit : Attention toutefois, car cette variable peut "facilement" etre modifiée par un utilisateur un peu bidouilleur...
 
Ah oui, la variable est $_SERVER['HTTP_REFERER']


Message édité par Dj YeLL le 15-04-2004 à 16:45:12
n°700367
Tentacle
Posté le 15-04-2004 à 16:41:46  profilanswer
 

<form method="post" action="tonscript.php">
 
mais de toute façon, si un utilisateur veut foutre le bordel il pourra quand même ... c'est de ton côté qu'il faut faire en sorte que tes données soient protégées ... par exemple en évitant les scripts stype delete.php où en les protegeant (mot de passe par exemple). Mais si tu ne fais que de la lecture, pourquoi connaître l'id du message serait dangereux ? sauf si tu as des données sensibles mais tu peux toujours imaginer un système de privilèges.

n°700369
dropsy
et bonne chance surtout...
Posté le 15-04-2004 à 16:42:35  profilanswer
 

bien sur que c'est dangereux si vos scripts derrière font des maj / suppressions sur la base.
dans ce genre de cas, il faut vérifier que l'id reçu en paramètre soit bien du type attendu. (integer en général) et que l'utilisateur aie (?) bien le droit d'agir sur cet enregistrement.


Message édité par dropsy le 15-04-2004 à 16:43:01
n°700380
lkolrn
&lt;comment ça marche?&gt;
Posté le 15-04-2004 à 16:54:42  profilanswer
 

okok [:skyx@v]
 
Merci de m'avoir mis sur la piste :hello:

n°700383
Tentacle
Posté le 15-04-2004 à 16:57:47  profilanswer
 

Effectivement on peut trafiquer les requêtes MySQL via les arguments passés mais, sans vérifier son type, un bon traitement de l'argument (par exemple en le mettant entre quotes sans oublier de doubler toutes les quotes à l'intérieur) ne pourra que faire échouer la requête. À toi de vérifier le type pour fournir une erreur ciblée

mood
Publicité
Posté le 15-04-2004 à 16:57:47  profilanswer
 

n°700452
T509
$job-&gt;GetJob(now)
Posté le 15-04-2004 à 18:13:48  profilanswer
 

Tentacle a écrit :

<form method="post" action="tonscript.php">
 
mais de toute façon, si un utilisateur veut foutre le bordel il pourra quand même ... c'est de ton côté qu'il faut faire en sorte que tes données soient protégées ... par exemple en évitant les scripts stype delete.php où en les protegeant (mot de passe par exemple). Mais si tu ne fais que de la lecture, pourquoi connaître l'id du message serait dangereux ? sauf si tu as des données sensibles mais tu peux toujours imaginer un système de privilèges.


 
genre un peu dynamique du type : md5('password de protection'.strftime("%D%M%Y" ))
 
au retour tu contrôles ta chaine md5
 
Le seul souci est de générer la page à 23h59 et d'avoir le clic à 0h00 le lendemain.


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
n°709177
lkolrn
&lt;comment ça marche?&gt;
Posté le 26-04-2004 à 22:24:47  profilanswer
 

T509 a écrit a écrit :

Le seul souci est de générer la page à 23h59 et d'avoir le clic à 0h00 le lendemain.


Parce que ??


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Parametres par URL & "Securite"

 

Sujets relatifs
[BD & url](html+js+xml+xsl+xsp)Frames HTML - Question de sécurité
est il possible de passer en SSL avec une url relative ?Comment son passé les paramètres et les arguments ?
passage de variable par url avec esay php[Php et classes] valeur par default pour des parametres de fonctions
[C++] Socket - envoyer URLCacher l'URL avec response.redirect en ASP.NET
Extraire le nom du lien d'une url[html/js] Conseil sécurité et formulaire html
Plus de sujets relatifs à : Parametres par URL & "Securite"


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR