hztm82
Messages postés2Date d'inscriptionjeudi 9 décembre 2004StatutMembreDernière intervention14 février 2008 14 févr. 2008 à 16:14
Plutôt que d'exclure certains type de fichier, il serait plus prudent de n'autoriser que certains. (zip, jpg...) et effectivement, avec un répertoire en dur on est tranquille.
sean1305
Messages postés8Date d'inscriptionvendredi 29 septembre 2006StatutMembreDernière intervention 9 mai 2009 9 janv. 2008 à 13:19
Et les nuages dans le ciel ...
webdeb
Messages postés488Date d'inscriptionsamedi 5 avril 2003StatutMembreDernière intervention31 mars 20094 8 janv. 2008 à 17:39
Sache une chose : la faille de sécurité se trouve entre le clavier et la chaise ^^
sean1305
Messages postés8Date d'inscriptionvendredi 29 septembre 2006StatutMembreDernière intervention 9 mai 2009 8 janv. 2008 à 17:28
Non, je ne suis pas naïf, tu ne me connais pas donc ...
Cela dit c'est vrai que y'a que dans les films ricains (mais non je suis pas raciste ! XD) où les serveurs et tout ça sont ultra sécurisés mdr.
Mais il existe quand même des programmes très puissants pour sécuriser des serveurs, comme le pare feu Phénix (qui supprimerait toutes les donneés d'un ou de disque(s) dur(s) si une intrusion importante serait détectée).
webdeb
Messages postés488Date d'inscriptionsamedi 5 avril 2003StatutMembreDernière intervention31 mars 20094 7 janv. 2008 à 19:42
>> De nos jours les serveurs sont sécurisés ...
Ah bon tu crois ? tu es bien naïf dis donc ^^ Il n'y a que dans les films américains que les serveurs sont ultra sécurisés lol
econs
Messages postés4030Date d'inscriptionmardi 13 mai 2003StatutMembreDernière intervention23 décembre 200824 7 janv. 2008 à 17:01
En récupérant les fichiers de logs, on peut imaginer qu'il pourra récupérer des infos sensibles. Imagine un peu que CodeS-SourceS soit codé en PHP, que ta page soit disponible sur le server.
En récupérant les logs, on pourrait y voir des choses du style "L'utilisateur toto/mdptoto s'est connecté". => Et pan ! des infos personnelles récupérées.
Tu pourrais y trouver l'IP de la personne qui s'est connectée, tout ce qu'elle a fait sur le site, retrouver son email ...
Et là, le server a beau être sécurisé, tu récupères les infos que tu as trouvées, et tu te loggues avec. Ca va passer.
Donc les logs ne doivent JAMAIS pouvoir être téléchargeables. Dès qu'un service possède une base de donnée pour ses clients, tu trouves inévitablement des infos personnelles qui trainent dans les logs.
sean1305
Messages postés8Date d'inscriptionvendredi 29 septembre 2006StatutMembreDernière intervention 9 mai 2009 7 janv. 2008 à 16:47
J'oublais quels type d'informations dit un "hacker", pourrait récupérer ?
De nos jours les serveurs sont sécurisés ...
sean1305
Messages postés8Date d'inscriptionvendredi 29 septembre 2006StatutMembreDernière intervention 9 mai 2009 7 janv. 2008 à 16:45
Encore faudrait-il connaître le nom de ces fichiers et sur quel type de serveur (LINUX dans 75% des cas) est hébergé le site ...
Et si tu peux bien fais-le XD
webdeb
Messages postés488Date d'inscriptionsamedi 5 avril 2003StatutMembreDernière intervention31 mars 20094 7 janv. 2008 à 14:48
>> A ma connaissance les extensions .ini ou .log ne sont pas des extensions de PHP, uniquement celles-ci :
Oui ce ne sont pas pas des extensions de PHP et alors ? Avec ton système, je peux récupérer les fichiers de configs du serveur. Ces fichiers regorgent d'informations utiles pour un hacker...
sean1305
Messages postés8Date d'inscriptionvendredi 29 septembre 2006StatutMembreDernière intervention 9 mai 2009 7 janv. 2008 à 12:17
A ma connaissance les extensions .ini ou .log ne sont pas des extensions de PHP, uniquement celles-ci :
.php[3|4|5]
.inc
.phtml
Bien sur on peut créer ses extensions personnalisées si on est l'administrateur du serveur Apache.
sean1305
Messages postés8Date d'inscriptionvendredi 29 septembre 2006StatutMembreDernière intervention 9 mai 2009 5 janv. 2008 à 19:25
Lol j'ai oublié de mettre les extensions .phpX.
Bref sinon quand j'ai dit "simplement" ben c'est simplement.
webdeb
Messages postés488Date d'inscriptionsamedi 5 avril 2003StatutMembreDernière intervention31 mars 20094 5 janv. 2008 à 12:41
Ton code est super dangereux... Tu as tenté de restreindre le téléchargement de certains fichiers (.php, .inc...) mais si mes fichiers porte les extensions suivantes :
* .php4, .php5, .php3
* .ini
* .log
* ...
Bref je pourrais quand même accéder à des fichiers tous aussi sensibles que les fichiers php de ton appli.
En plus ton code me permet d'aller récupérer des fichiers qui se trouvent en dehors de la racine web. Il suffit pour moi d'essayer de deviner ce qu'il se passe au dessus de ton répertoire www pour aller y récupérer des fichiers de configuration de PHP ou MySQL par exemple.
Sache également que ta façon de récupérer une extension est loin d'être efficace puisqu'elle dépend de la taille de l'extension (que tu as fixé à 4 caractères). PHP propose la fonction native pathinfo() qui te permet de récupérer l'extension sans te soucier de sa longueur.
Il faudrait également que tu vérifies que dans le nom du fichier php passé dans l'url, qu'il n'y ait pas les caractères ".." qui te permettent de remonter d'un niveau.
Enfin, dans ce genre de script, il est bon de forcer le téléchargement de fichiers qui se trouvent uniquement dans un répertoire donné. En forçant en dur par exemple un répertoire nommé "downloads_publics", on s'assure que le script ira chercher uniquement dans ce répertoire si le fichier existe. Dans le cas contraire, on ne pourras pas télécharger un fichier qui se trouve en dehors de ce répertoire.
13 janv. 2012 à 19:34
9 mai 2009 à 23:30
Tu veux dire comment ne pas montrer le "fichier.gif" (comme dans ton exemple) ?
9 mai 2009 à 23:29
A l'époque j'étais un noob de PHP, maintenant je maitrise mais je suis pas un encore un professionel.
1 mai 2009 à 19:45
comment je cache le paramètre d'envoie parle href?
puisque les propriété de téléchargement afiche l'instruction complete
comme suite:
http://www.exemple.com/dossier/download.php?variable=fichier.gif
14 févr. 2008 à 16:14
9 janv. 2008 à 13:19
8 janv. 2008 à 17:39
8 janv. 2008 à 17:28
Cela dit c'est vrai que y'a que dans les films ricains (mais non je suis pas raciste ! XD) où les serveurs et tout ça sont ultra sécurisés mdr.
Mais il existe quand même des programmes très puissants pour sécuriser des serveurs, comme le pare feu Phénix (qui supprimerait toutes les donneés d'un ou de disque(s) dur(s) si une intrusion importante serait détectée).
7 janv. 2008 à 19:42
Ah bon tu crois ? tu es bien naïf dis donc ^^ Il n'y a que dans les films américains que les serveurs sont ultra sécurisés lol
7 janv. 2008 à 17:01
En récupérant les logs, on pourrait y voir des choses du style "L'utilisateur toto/mdptoto s'est connecté". => Et pan ! des infos personnelles récupérées.
Tu pourrais y trouver l'IP de la personne qui s'est connectée, tout ce qu'elle a fait sur le site, retrouver son email ...
Et là, le server a beau être sécurisé, tu récupères les infos que tu as trouvées, et tu te loggues avec. Ca va passer.
Donc les logs ne doivent JAMAIS pouvoir être téléchargeables. Dès qu'un service possède une base de donnée pour ses clients, tu trouves inévitablement des infos personnelles qui trainent dans les logs.
7 janv. 2008 à 16:47
De nos jours les serveurs sont sécurisés ...
7 janv. 2008 à 16:45
Et si tu peux bien fais-le XD
7 janv. 2008 à 14:48
Oui ce ne sont pas pas des extensions de PHP et alors ? Avec ton système, je peux récupérer les fichiers de configs du serveur. Ces fichiers regorgent d'informations utiles pour un hacker...
7 janv. 2008 à 12:17
.php[3|4|5]
.inc
.phtml
Bien sur on peut créer ses extensions personnalisées si on est l'administrateur du serveur Apache.
5 janv. 2008 à 19:25
Bref sinon quand j'ai dit "simplement" ben c'est simplement.
5 janv. 2008 à 12:41
* .php4, .php5, .php3
* .ini
* .log
* ...
Bref je pourrais quand même accéder à des fichiers tous aussi sensibles que les fichiers php de ton appli.
En plus ton code me permet d'aller récupérer des fichiers qui se trouvent en dehors de la racine web. Il suffit pour moi d'essayer de deviner ce qu'il se passe au dessus de ton répertoire www pour aller y récupérer des fichiers de configuration de PHP ou MySQL par exemple.
Sache également que ta façon de récupérer une extension est loin d'être efficace puisqu'elle dépend de la taille de l'extension (que tu as fixé à 4 caractères). PHP propose la fonction native pathinfo() qui te permet de récupérer l'extension sans te soucier de sa longueur.
Il faudrait également que tu vérifies que dans le nom du fichier php passé dans l'url, qu'il n'y ait pas les caractères ".." qui te permettent de remonter d'un niveau.
Enfin, dans ce genre de script, il est bon de forcer le téléchargement de fichiers qui se trouvent uniquement dans un répertoire donné. En forçant en dur par exemple un répertoire nommé "downloads_publics", on s'assure que le script ira chercher uniquement dans ce répertoire si le fichier existe. Dans le cas contraire, on ne pourras pas télécharger un fichier qui se trouve en dehors de ce répertoire.
++