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

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Et la securité dans tout ca....

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

[PHP] Et la securité dans tout ca....

n°257057
Grouzou
Recycling ...for everybody ...
Posté le 29-11-2002 à 13:39:35  profilanswer
 

Bonjour a tous....
 
Apres avoir lu le topic sur le e-commerce je me pose une grande question...
 
Est ce qu'il existe des ouvrages ou des sites expliquant comment securiser au mieux son site internet fait en php...
 
Car j'apprend le php en autodidacte...et je suis convaincu qu'il pourrait y avoir plein de probleme avec ce que je fais....
 
Merci a ceux qui pourront m'aider...
 
 
A+
 
Grouzou

mood
Publicité
Posté le 29-11-2002 à 13:39:35  profilanswer
 

n°257071
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 29-11-2002 à 13:44:32  profilanswer
 

Y a un début là : http://www.php.net/manual/fr/security.php


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°257098
Grouzou
Recycling ...for everybody ...
Posté le 29-11-2002 à 14:00:36  profilanswer
 

Merciiii je vais y jete un oeil :-)
 
Si vous avez d'autres link n'hésitez pas....

n°283687
beleg
黑社會
Posté le 10-01-2003 à 16:52:57  profilanswer
 

donc voila la suite du topic securité  :)  
 
Donc jai programmé en debut de semaine et cette nuit, je suis tombé la dessus :
http://www.phpsecure.org/index.php?zone=pArticle
Pas mal d'infos sur les failles de lupload, les includes, les variables globales ...
 
 
Je mettrais dans la suite ce que jai fait ( et sans doute ce que javais oublié), mais ca prendra peut etre un peu de temps, donc je voudrais savoir si certains pourraient tester ce que ca donne  
[:totoz]
 
(vais essayer de faire mieux que la banque de credit maritime  ;)  pr ceux qui se rappelle)
 
je laisse les urls un ptit peu, apres je les enleves.
 
http://XXX/nonox/index.php
apache/mysql configuré moyen, faudrait que je my plonge.
register_global off
safe_mode on
affichage des erreurs off
listing des repertoires
 
le site en prod
http://www.XXX.com/
apache/mysql on fait confiance a ovh  
register_global on OVH  :o  ( je dois arriver a le mettre a 0 via ini_set)
safe_mode on
affichage des erreurs off
listing des repertoires mais htacess, index.html
 
voili voilou


Message édité par beleg le 10-01-2003 à 17:19:34
n°283707
ethernal
Chercheur de vérité...
Posté le 10-01-2003 à 17:14:57  profilanswer
 

on peut pas s'inscrire ??

n°283713
beleg
黑社會
Posté le 10-01-2003 à 17:20:40  profilanswer
 

ethernal a écrit :

on peut pas s'inscrire ??


 
ste honte ... je regarde
edit : une ligne rajoutée a 2h27 un peu en trop, on peut rien faire sans etre loggué, nimporte koi. c corrigé.
 
DSL


Message édité par beleg le 10-01-2003 à 17:24:06
n°283720
Sh@rdar
Ex-PhPéteur
Posté le 10-01-2003 à 17:35:11  profilanswer
 

moi jsuis couvert, ethernal m'a fait un audit :sol:  
 
au fait jte dois combien ?  :whistle:


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°283744
ethernal
Chercheur de vérité...
Posté le 10-01-2003 à 18:07:42  profilanswer
 

Sh@rdar a écrit :

moi jsuis couvert, ethernal m'a fait un audit :sol:  
 
au fait jte dois combien ?  :whistle:  


 
:lol:
prix d'ami : gratuit !
 
bon je suis pas non plus un pirate de la mort qui tue comme il en existe certainement... donc je garanti rien.
un code propre limite les dégats, c'est tout, une faille, le site ou le serveur sont en périls.  
 
un résumé :

  • include : dangeureux !!  

- auscultez ce que vous incluez, interdire les includes distants
- faire attention à ce que l'ont ne puisse pas non plus inclure des pages de l'administration dans le site de base et passer outre les protections, voir afficher des fichiers de l'ordinateur (j'ai déjà affiché un autoexec.bat dans une page html d'un site, c'est assez drôle...)

  • readfile, fopen, file, : idem surtout si vous l'afficher après, ou que vous le transmettez pour un download (ça pourrait être assez embettant de transférer le fichier qui contient vos login/pwd)
  • en cas de post par les utilisateurs :  

- pas de html (pour la mise en page)
- attention au Cross scripting (code javascript qui permet de transmettre vos cookies à qq d'autre)

  • query sql :  

- ne jamais afficher la query en cas d'erreur
- toujours tester les valeurs qui seront utilisées pour la query
- les encadrer par des '' même si c'est un chiffre

  • upload : très dangeureux

- vérifier le contenu du fichier uploadé
- son nom (un nom de type ../../htaccess irait écraser votre fichier de pwd sous linux).
- attention à votre méthode de protection... renommer les fichiers uploadés en .txt ou . gif, on pourrait renommer vos fichier php avec une extension autre ce qui permettrait de le lire en clair ;)

  • logiciels/programme :

- ne jamais croire que les scripts que l'ont trouve gratuitement sur le net sont sécurisé... genre une gallerie photo (j'en ai déjà vu qui permettent de lister les répertoires et d'afficher les fichiers php en clair)
- toujours empêcher le listing des répertoires
- se tenir à jour sur les failles de sécurité d'apache ou de php

  • inclassable :

- ne pas laisser ses pwd/login dans des exemples que l'ont diffuse sur son site... classique
 
bon je suis fatigué là :)
a+

n°283748
Sh@rdar
Ex-PhPéteur
Posté le 10-01-2003 à 18:10:21  profilanswer
 

ethernal a écrit :


- ne pas laisser ses pwd/login dans des exemples que l'ont diffuse sur son site... classique


 
PTDR !!  :lol:  :lol:  :lol:


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°283755
Sh@rdar
Ex-PhPéteur
Posté le 10-01-2003 à 18:18:30  profilanswer
 

j'ajoute ma pierre à l'édifice
 
 
utilisez plus le switch() et ajoutez toujours un else{}  aux if{}
 
pourquoi ?
 
le switch() permet d'avoir une valuer default; qui prendra le relais en cas de résultat inattendu, idem pour le else
 
toujours prévoir une porte de sortie "propre" (pour moi c'est page blanche sans msg d'erreur ou un minimum) pour éviter des "aléas"
 
dans tout les cas, il faut bien réfléchir AVANT de coder, et ne PAS faire confiance au visiteur, à fortiori encore plus quand on code coté serveur.


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
mood
Publicité
Posté le 10-01-2003 à 18:18:30  profilanswer
 

n°283756
ethernal
Chercheur de vérité...
Posté le 10-01-2003 à 18:19:17  profilanswer
 

Sh@rdar a écrit :


 
PTDR !!  :lol:  :lol:  :lol:  


c'est du vécu :lol:
 
si tu vois d'autres choses, n'hésite pas :)
j'ai faim donc je réfléchis mal :D

n°283766
beleg
黑社會
Posté le 10-01-2003 à 18:31:23  profilanswer
 

ethernal a écrit :


c'est du vécu :lol:
 
si tu vois d'autres choses, n'hésite pas :)
j'ai faim donc je réfléchis mal :D
 


 
je fais des crepes, jai du porc au vin blanc, des noodles, de la biere  :)  
 
je posterais des trucs a mon retour ce soir

n°283769
ethernal
Chercheur de vérité...
Posté le 10-01-2003 à 18:36:55  profilanswer
 

beleg a écrit :


 
je fais des crepes, jai du porc au vin blanc, des noodles, de la biere  :)  
 
je posterais des trucs a mon retour ce soir


j'en ai l'eau à la bouche (y a pas de smileys qui bavent??)
a demain

n°283788
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 10-01-2003 à 19:28:17  profilanswer
 

interessant ce topic :)

n°283797
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 10-01-2003 à 19:44:30  profilanswer
 

un petit conseil: porter 10 x plus d'attention lorsqu'il sagit d'un fonction importante dans un script par exemple "rajouter un modo,admin super admin dans un forum".Cette action devrait etre au minimum entouré d'un protection par cookies,d'un verification de mot de passe dans la base de donné avant d'executer la requete.
-pour les formulaire de mail,ne pas oublier de proteger contre le flood,car si le gars rafraichit la page 1000 fois :D
-htmlentities() et htmlspecialchar() est presque obligatoire pour un formulaire ou autre donné entré par l'utilisateur.
-toujours crypter les mots de passe dans la base de donné,comme ca si on vous pirate la bdd,le mot de passe resterons secret.
 
si j'ai dis des betises,dite le moi. :jap:


Message édité par forummp3 le 10-01-2003 à 19:45:40
n°283814
Sh@rdar
Ex-PhPéteur
Posté le 10-01-2003 à 20:14:57  profilanswer
 

pas de conneries mais quelques généralités ou imprécisions
 

forummp3 a écrit :

un petit conseil: porter 10 x plus d'attention lorsqu'il sagit d'un fonction importante dans un script par exemple "rajouter un modo,admin super admin dans un forum".Cette action devrait etre au minimum entouré d'un protection par cookies,d'un verification de mot de passe dans la base de donné avant d'executer la requete.
 
hum, bien sur qu'il faut vérifier les systèmes d'admins, par contre la protection par cookie => sécurité = 0
 
-pour les formulaire de mail,ne pas oublier de proteger contre le flood,car si le gars rafraichit la page 1000 fois :D
pour TOUS les formulaires en fait, parce rajouter un post 120 fois dans un forum c'est chiant..
 
-htmlentities() et htmlspecialchar() est presque obligatoire pour un formulaire ou autre donné entré par l'utilisateur.
pas forcément selon les cas (en vrac générer du PDF qui ne prend pas en code l'encodage HTML, tu te retrouve avecdes " partout
 
par contre, pour un affichage sur une page web, TOUJOURS désactiver les < > et "  pour éviter des attaques basiques à coup de javascript

 
-toujours crypter les mots de passe dans la base de donné,comme ca si on vous pirate la bdd,le mot de passe resterons secret.
pas toujours ou avec parcimonie, un password crypté en MD5 est irrécupérable, impossible de l'envoyer par mail..
si un pirate chope ta base, t'as plus rien à foutre de ce qui y était stocké, donc le minimum c'est de changer TOUS les passwords une fois la faille éliminée

 
si j'ai dis des betises,dite le moi. :jap:
c'est fait :D


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°283847
AGA
La boîte à Bokeh!
Posté le 10-01-2003 à 21:01:27  profilanswer
 

pour les <> et '' tu peux developper?
 
Pour les Variables globales quels sont les risques?
 :jap:

n°283853
Sh@rdar
Ex-PhPéteur
Posté le 10-01-2003 à 21:07:54  profilanswer
 

laisser un utilisateur saisir hors encodage html des caractères comme > < ou " lui permettra de faire
 
<script language="php">
echo get_defined_vars();
</script>
 
ou
 
<?php ... ?>
 
par exemple
 
 
tu saisis l'importance de < ou > ?


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°283865
beleg
黑社會
Posté le 10-01-2003 à 21:36:55  profilanswer
 

AGA a écrit :

pour les <> et '' tu peux developper?
 
Pour les Variables globales quels sont les risques?
 :jap:  


 
tu saisis ca ici
[i mg] http://forum.hardware.fr/images/perso/shakalagoons.gif" onmouseover="alert('huhu';) [/i mg]
 
c remplacé par
<img src="http://forum.hardware.fr/images/perso/shakalagoons.gif" onmouseover="alert('huhu';) ">
 
taffiches le post, tu passes ta souris dessus et hop
 
avec le " encodé :
<img src="http://forum.hardware.fr/images/perso/shakalagoons.gif" onmouseover="alert('huhu';) ">
croix rouge et basta
 
doit etre possible de rentrer quelque chose comme ca :
blablabla "; print_r($GLOBAL); echo " blablabla
dans un formulaire
 
et le php a l'affichage du poste fera
echo "$texte"; donc
echo "blablabla "; print_r($GLOBAL); echo " blablabla";
 
je vais me faire un petit serveur de test avec des formulaires non securisés [:seyar]


Message édité par beleg le 10-01-2003 à 21:47:08
n°283915
beleg
黑社會
Posté le 10-01-2003 à 23:09:04  profilanswer
 

  • controler les variables fournies par _GET et _POST (et utiliser les _POST _GET _COOKIE _SESSION plutot que les variables globales (voir phpsecure)


-les entiers : intval()
ca evite les page.php?id=666%20or%201=1&action=effacer
delete from table where idtable = $id;  
delete from table where idtable = 666 or 1=1; :fou:  
 
de maniere generale mes delete, update, select avec une condition sur l'identifiant comporte un limit 1.  
 
-les chaines de caracteres svt issues des formulaires pr aller en base : htmlentities / htmlspecialchars
ou remplacer le html par ""
idem pr le javascript
remplacer " par "
utiliser des balises proprio [mail]
 
a laffichage : replacer les balises par du html.
 
-les noms de fichiers (cf ethernal)
a lupload : verifier extension, type, presence de chemin
en ouverture : url au lieu de local, fichier systeme  
 

  • perso :  

jutilise des classes interfaces/generiques pr les user / admin / database.
Dune ca me facilite la vie avec la base de données
$db->Query($query,1);
while ($db->Next())
{
   $dbpassword = $db->Get("password",1);  
   $dbuser = $db->Get("iduser",1);  
   $dbmail = $db->Get("email",1);  
}
$db->Free();
 
De deux, l'ensemble classe/sessions/database est puissant et permet une grande securité, a linterieur des fonctions le scope des variables est + limité.
 
classe admin
admin()
{
ouvrir session
si _SESSION["admin"]
{
   aller chercher date de fin de session
   si terminé
        this->deconnecter
   sinon
        augmenter date de fin de session
}
else
{ _SESSION["admin"] = false }
}
 
verifier(login, pass)
{
pass = crypt(pass)
pass2 = aller chercher le pass pour le login
si pass2 = pass
{
   //cest un admin
   _SESSION["admin"] = true
   augmenter date de fin de session
}
}
 
deconnecter()
{
  detruire variable de session
  fermer session  
}
}
 
 
 
apres une page admin.php de la section admin peut etre :
A = new admin()
D = new database()
si existe (_GET["action"])
   action = _GET["action"]
si A non admin
  action = ""
 
fonction1(param, param, param, param)
{
PHP
...
?>
 
HTML
 
<?
}  
fonction2(param, param, param, param)
{
PHP
...
?>
 
HTML
 
<?
}
 
switch(action) {
case "afficher" : fonction1 (D, _GET["param"], _POST["param"], _POST["param"])  
case "login" : fonction2 (D, _GET["param"], _POST["param"], _POST["param"])  
default : rien
}
 
jaurais une grosse tendance a utiliser admin.php pour laffichage et admin_valid pour les traitements, tt mes formulaires pointent sur admin_valid.php qui traitent les données et redirige sur admin.php avec un identifiant d'erreur si besoin. ca evite le rechargement des formulaires et ca permet de separer un max traitement PHP et HTML.
 

  • stocker les includes et autres variables/config important a part dans un repertoire protégé


  • je mets rien dimportant dans les cookies.


  • mot de passes cryptes pr admin, direct pr user (renvoi par mail)


param serveur :
 
listing repertoire interdit
variable_global off
affichage erreur off
.php .php3 .php4 .inc => Interpreteur PHP
mettre des mots de passes aux users MySQL
 
oups je me suis emporté, désolé, mon livre paraitra donc aux editions guy tredaniel ... pas cher [:zebra33]


Message édité par beleg le 10-01-2003 à 23:16:13
n°284010
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 11-01-2003 à 11:51:54  profilanswer
 

Sh@rdar a écrit :

pas de conneries mais quelques généralités ou imprécisions
 
 


 
merci pour cette corection.Pour la securité de l'admin,je disait ca pour dire qu'un authentification pour rentrer dans la section admin n'est pas suffisant.Il faut ensuite reverifier si les cookies sont bont en referifient les mot de passe.
exemple sur ce forum,on peut poster sur le forum private sans ya voir accés,donc l'identité du posteur n'est pas referifier quand on poste,donc une faille et il parait que ca fait deux version qu'elle est pas corrigé :D ( car joce le sais)
 
Sinon ya aussi un autre forum ou ethernal avit reussi a devenir admin,meme super-admin a l'aide d'un simple url.(il avait le code source quand meme ;) )
 
poue le mail je disait car on y pense pas toujours,alors que pour un forum,le premier truc qu'on pense c'est le flood dans un topic.Il faut aussi penser le flood dans les inscription,car si on met pas de limite,on peu avoir des milliers d'inscrit en une journé meme des millions.
 
pour le htmlentities() et htmlspecialchars() c'est le premier truc a se demander lorsque l'on fait un formulaire.On en a besoin dans 99% des cas meme lorsque l'on fait des echo""
 
ce n'est que des conseil pour debutant,car je le suis moi meme et j'ai fait des erreur similaire.
 
Si vous avez d'autre truc & astuce  [:taill]


Message édité par forummp3 le 11-01-2003 à 11:52:50
n°284018
ethernal
Chercheur de vérité...
Posté le 11-01-2003 à 12:00:26  profilanswer
 

j'ai oublié qq ch de très important pour les querys :
toujours escaper les ' et ", si la config du serveur ne le fait pas automatiquement... (\' \" )
$query= "select login from bd where login='$login' and password='$pwd'"
formlaire:  
- login= login_existant
- pwd= test' or 'test'='test
sans l'escape de ' tu rentres sous le login que tu veux, avec non.
ça vaut pour toute les infos rentrée par les utilisateurs.

n°284021
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 11-01-2003 à 12:01:52  profilanswer
 

ethernal a écrit :

j'ai oublié qq ch de très important pour les querys :
toujours escaper les ' et ", si la config du serveur ne le fait pas automatiquement... (\' \" )
$query= "select login from bd where login='$login' and password='$pwd'"
formlaire:  
- login= login_existant
- pwd= test' or 'test'='test
sans l'escape de ' tu rentres sous le login que tu veux, avec non.
ça vaut pour toute les infos rentrée par les utilisateurs.


 
ca veut dire koi escaper :??:

n°284027
ethernal
Chercheur de vérité...
Posté le 11-01-2003 à 12:12:32  profilanswer
 

c'est mettre un backslash (\) devant un caractère.
on le fait devant tout les caractères spéciaux '"()[]\ en fonction de leur signification dans le code que l'on utilise.
un htmlentities($var, ENT_QUOTES) permet de changer le " en &#quote, mais si tu veux garder un texte intacte, tu l'escape plutot que de le modifier en caractère html

n°284028
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 11-01-2003 à 12:13:49  profilanswer
 

en fait tu dit qu'il faut utiliser la fonction addslashes() ?

n°284040
ethernal
Chercheur de vérité...
Posté le 11-01-2003 à 12:24:04  profilanswer
 

ça dépend de la config du serveur php.
certaines config rajoutent automatiquement des \ devant les caractères spéciaux reçus par $_GET, $POST, $_COOKIE, donc il ne faut pas le faire.
Si le serveur n'est pas configuré comme ça, oui il faut les rajouter.
 
php.ini : magic_quotes_gpc= On  
tester la config du serveur: get_magic_quotes_gpc()
ps : gpc= Get Post Cookie
 
à savoir aussi :
certains serveurs sont configurés pour rajouter des \ lors de l'extraction de données de fichiers/bd/exec.
php.ini : magic_quotes_runtime= On
tester la config du serveur: get_magic_quotes_runtime()
 
il faut donc les enlever avec stripslashes() avant de les afficher...

n°284056
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 11-01-2003 à 12:56:57  profilanswer
 

et keski ce passe si on met addslashes et que le serveur rajoute deja les slash?

n°284057
ethernal
Chercheur de vérité...
Posté le 11-01-2003 à 12:58:29  profilanswer
 

AGA a écrit :


Pour les Variables globales quels sont les risques?


voir exemple : http://forum.hardware.fr/forum2.ph [...] subcat=393


Message édité par ethernal le 11-01-2003 à 12:59:01
n°284059
ethernal
Chercheur de vérité...
Posté le 11-01-2003 à 13:01:45  profilanswer
 

forummp3 a écrit :

et keski ce passe si on met addslashes et que le serveur rajoute deja les slash?


1. tu postes '"
2. le serveur ajoute ses \ --> \'\"
3. tu ajoutes des \ --> \\\'\\\"
ça devient illisible et presque irrécupérable...  
à éviter ;)
 
pour faire un code compatible quel que soit le serveur d'hébergement, il faut tester la config du serveur avant d'ajouter/retirer des \ avec addslashes et stripslashes

n°284065
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 11-01-2003 à 13:18:34  profilanswer
 

et il faut faire quoi comme teste alors?
 
if(??????)
addslashes()

n°284067
ethernal
Chercheur de vérité...
Posté le 11-01-2003 à 13:26:22  profilanswer
 

(cfr 3 poste plus haut)
 
réception de données à stocker (bd,fichier):
if (get_magic_quotes_gpc()==0)
  $_GET['var']= addslashes($_GET['var']);
}
 
Affichage de données réceptionnées :
echo stripslashes($_GET['var']);
 
 
affichage de données provenant de bd, fichiers, exec()
if (get_magic_quotes_runtime()==1)
  $var= stripslashes($var);
}

n°284077
_Raynor_
Posté le 11-01-2003 à 13:46:41  profilanswer
 

Suite au point des  
<script language="php">  
echo get_defined_vars();  
</script>  
 
ou  
 
<?php ... ?>  
 
passés dans par formulaire j'ai fait quelques tests moi aussi, j'ai tapé <?php echo "test"; ?> dans un formulaire qui est affiché directement sans protection ni fonctions quelconque. Le commentaire (j'ai utilisé mon script de commentaire a cet effet) est vide, rien ne s'affiche.
Dans phpMyAdmin j'ai bien le texte <?php echo "test"; ?> qui est rentré dans la base.
et de plus si j'affiche la source HTML de la page générée par Apache j'ai <td><?php echo "test"; ?></td> en clair.
 
Je ne sais pas exactement quoi en conclure mais j'espère avoir porté ma petite contribution :)

n°284080
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 11-01-2003 à 13:59:51  profilanswer
 

_Raynor_ a écrit :

Suite au point des  
<script language="php">  
echo get_defined_vars();  
</script>  
 
ou  
 
<?php ... ?>  
 
passés dans par formulaire j'ai fait quelques tests moi aussi, j'ai tapé <?php echo "test"; ?> dans un formulaire qui est affiché directement sans protection ni fonctions quelconque. Le commentaire (j'ai utilisé mon script de commentaire a cet effet) est vide, rien ne s'affiche.
Dans phpMyAdmin j'ai bien le texte <?php echo "test"; ?> qui est rentré dans la base.
et de plus si j'affiche la source HTML de la page générée par Apache j'ai <td><?php echo "test"; ?></td> en clair.
 
Je ne sais pas exactement quoi en conclure mais j'espère avoir porté ma petite contribution :)


 
essaye de mettre coucou";<?php echo "test"; ?>"coucou

n°284086
beleg
黑社會
Posté le 11-01-2003 à 14:05:30  profilanswer
 

forummp3 a écrit :


 
essaye de mettre coucou";<?php echo "test"; ?>"coucou


 
qqun a essayé :
mettre  
blablabla "; print_r($GLOBAL); echo " blablabla
dans un formulaire
 
et le php a l'affichage du poste fera
echo "$texte"; donc
echo "blablabla "; print_r($GLOBAL); echo " blablabla";

n°284088
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 11-01-2003 à 14:07:27  profilanswer
 

beleg a écrit :


 
qqun a essayé :
mettre  
blablabla "; print_r($GLOBAL); echo " blablabla
dans un formulaire
 
et le php a l'affichage du poste fera
echo "$texte"; donc
echo "blablabla "; print_r($GLOBAL); echo " blablabla";
 


 
ca me met des backslashes  :??:

n°284098
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 11-01-2003 à 14:25:37  profilanswer
 

prkoi ca marche pas ce que je fait.
 
j'ai comme code source:
 

Citation :

<?
$id=stripslashes($id);
echo"$id";
 
?>


 
je met dans l'url

Citation :

??id=blabla";echo"<script>alert(123)</script>";echo"blabla


 
et j'ai ca comme resultat:
 

Citation :

blabla";echo"";echo"blabla


Message édité par forummp3 le 11-01-2003 à 14:27:09
n°284148
beleg
黑社會
Posté le 11-01-2003 à 16:05:24  profilanswer
 

forummp3 >
 
test.php :
<?
$a1 = 666;
$a3 = "$a1";
$a4 = '$a1';
$a5 = "$a1 $a2 $a3 $a4";
echo "<br>".$a5;
?>
 
test.php?a2=$a1
renvoie
666 $a1 666 $a1
 
le contenu des variables _GET _POST ... ne sont pas evaluées (supposition).


Message édité par beleg le 11-01-2003 à 16:08:32
n°284239
dropsy
et bonne chance surtout...
Posté le 11-01-2003 à 18:49:54  profilanswer
 

et en terme de flood, qu'est-ce qu'y a comme technique qui marche bien?

n°284290
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 11-01-2003 à 20:36:56  profilanswer
 

dropsy a écrit :

et en terme de flood, qu'est-ce qu'y a comme technique qui marche bien?


 
tu veut un technique pour flooder ou pour eviter le flood?  :heink:

n°284294
dropsy
et bonne chance surtout...
Posté le 11-01-2003 à 20:43:31  profilanswer
 

forummp3 a écrit :


 
tu veut un technique pour flooder ou pour eviter le flood?  :heink:  


 
pour éviter le flood bien sur

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

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

  [PHP] Et la securité dans tout ca....

 

Sujets relatifs
PHP et sécurité, exécution de scripts via un formulaire.[Sécurité PHP] Y a quand même des Webmasters qui doutent de rien...
PHP et sécurité[PHP-MySQL] Sécurité lors des requêtes SQL avec script de commentaires
[PHP] pb de sécurité avec un include[PHP]probleme lié à la securité de son site
[PHP] sécurité[PHP] - Sécurité des informations
Trou de sécurité PHP : mises à jour disponibles[PHP] [HTML] Structure de site et securite
Plus de sujets relatifs à : [PHP] Et la securité dans tout ca....


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