[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Tentatives possible réussies attaque serveur



Merci de la piqûre de rappel ci-dessous concernant les
langages dynamiques Web.

Les documents sur la sécurité abondent en ce sens,
dont surtout la réinjection de codes dans les pages Web.

La question initiale était :
/index.php?rev=../../../../../../../../../etc/passwd 
HTTP Response 200, possible tentatives avec succès..." 

Mais rien n'empêche de taper directement ceci :
"www.monsite.com/../../../../... /etc/passwd

Le fait d'avoir une page d'index ou non,
"/index.php?rev=../../../../../../../../../etc/passwd"
ne doit pas changer grand chose...

André

On Friday 09 October 2015 14:30:54 Sébastien NOBILI wrote:
> Le vendredi 09 octobre 2015 à 13:27, andre_debian@numericable.fr a écrit :
> > Je ne sais plus qui, je ne sais plus quand (ça a été tronqué) a écrit :
> > > pour la sécurité d'une page Internet dynamique tout 
> > > les arguments passés a une page Internet, qu'ils soit 
> > > par l'URL ou par des formulaires, sont à considérer
> > > comme potentiellement dangereux :
> > 
> > Le PHP est un langage de sites dynamiques,
> > comment faire autrement ?
> 
> PHP a une très mauvaise réputation de nid à failles. Cette réputation n'est 
pas
> forcément très objective mais parmi les arguments qui l'ont faite, on 
trouve :
>     - que l'API n'est pas très rigoureuse;
>     - qu'on peut développer un site en PHP sans trop de connaissances (et 
donc
>       sans forcément trop de sécurité non plus).
> 
> > "php.ini" traite les variables de formulaires,
> > selon le mode "register_global = off",
> > avec transmission de la variable à la page de traitement par :
> > ...$_POST["name"]...
> > Que peut-on faire de plus ?
> 
> Ma réponse est indépendante du langage utilisé et vaut autant pour PHP que 
pour
> tout autre langage utilisé pour créer des sites dynamiques (et même d'une
> manière large des programmes client/serveur) :
> 
>     Ne _jamais_ faire confiance à ce qui arrive du client !
> 
> Tu considères que tout est douteux et tu vérifies _scrupuleusement_ tout ce 
qui
> arrive :
>     - est-ce que le nombre que tu attends est bien seulement un nombre;
>     - est-ce que la chaîne que tu attends ne contient pas de quoi faire de
>       l'injection SQL;
>     - est-ce que la chaîne que tu attends ne contient pas de quoi faire du 
XSS;
>     - etc.
> 
> Pour ça, les expressions rationnelles sont un très bon allié.
> 
> Sébastien
> 
> 


Reply to: