Comment sécuriser mon uploader ?

cs_aszqwx Messages postés 6 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 12 juin 2008 - 7 juin 2008 à 18:37
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 12 juin 2008 à 18:51
Bonjour,

J'ai les codes qu'il me faut pour faire mon hébergeur d'images (uploader), mais j'ai déjà une fois été hacké (un imbécile a chargé autre chose qu'une image et a vidé tout le dossier qui contenait mes images).

Je souhaiterais donc sécuriser mon code. Que dois-je faire ?

P.S. Je suis un gros débutant, donc n'y allez pas trop fort dans les explication
P.S. 2 : mes fichiers sont download.php, index.php et resize.php

Merci !

19 réponses

nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
7 juin 2008 à 18:57
Salut,

il faut vérifier que le fichier uploader corresponde a une extension que tu veus bien laisser passer...

Exemple ?

if ($_FILES['fichier']['type'] != 'bmp' && $_FILES['fichier']['type'] != 'jpg' && $_FILES['fichier']['type'] != 'png' && $_FILES['fichier']['type'] != 'jpeg' && $_FILES['fichier']['type'] != 'gif') {

// le code a executer

} else {

echo "petit farceur, tu ne m'aura pas aussi facilement";

}

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
vilhjalms Messages postés 591 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 16 juillet 2009 2
7 juin 2008 à 19:10
Saell og blesuð

L extension ! lol il est prefereable de verifier le type de mime

Vilhjálms
Sigurðsdóttir aka Frëyjá
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
7 juin 2008 à 19:16
oui, mais l'extension c'est déja pas mal, après derrière on peut rajouter le type mime pour un max de sécurité...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
cs_aszqwx Messages postés 6 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 12 juin 2008
7 juin 2008 à 19:23
Bonsoir,

Merci pour la réponse. Comme je l'ai dit, je suis un grand débutant, donc je vais avoir du mal avec tout ça, sauf si on me dit bien quoi exactement et où le mettre ;-)

Voilà mon code php :

<?
function sort_by_mtime($file1,$file2) {
    $time1 = filemtime($file1);
    $time2 = filemtime($file2);
    if ($time1 == $time2) {
        return 0;
    }
    return ($time1 < $time2) ? 1 : -1;
    }
function GetExtensionName($File)
{
 $Ext = strtolower(substr($File, strrpos($File, '.')));
 return $Ext;
}


 $domain= "http://********";
     $folder = "depot/";
 //$dossier = opendir($folder);
   
$html_array = glob($folder."*");


usort($html_array,"sort_by_mtime");


 foreach ($html_array as $Fichier) {
  if (GetExtensionName($Fichier)==".zip") {
   $bimg1="";
   $bimg2="";
  } else
  {
   $bimg1="";
  }
  if ($Fichier != "." && $Fichier != "..") {
   echo (
   '&nbsp;
   lien direct'
   );
  }
 }
 //closedir($dossier);
?>

Que dois-je ajouter pour qu'il n'y ait que et absolument que les images qui soient acceptées ?
En fait, ce que le hacker a fait (pour que vous compreniez), c'est qu'il a su intégrer son vers en mettant un fichier nom.php.jpg
Et comme l'extension jpg est autorisée, ça a été accepté. Comment éviter ça ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
7 juin 2008 à 19:27
tu fais une expression régulière qui vérifie qu'il n'y ai qu'un "." dans le fichier si c'est le cas tu fais les autres vérifications et si le fichier est bon tu l'accepte sinon tu ne l'accepte pas et tu fais ce que tu veus...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
cs_aszqwx Messages postés 6 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 12 juin 2008
7 juin 2008 à 19:30
Merci pour tes réponses déjà :)

Ce serait exactement ce qu'il me faudrait. Mais je te dis je n'y connais strictement rien, et tu m'embrouille déjà un peu hihi

Tu pourrais me faire ça dans mon code ?

Merci beaucoup !
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
7 juin 2008 à 19:41
ba vu que tu es débutant que dirai tu que je te donne des tutoriaux qui t'aiderons a réaliser ça...

déja je t'es donner le code pour vérifier l'extension...

Je vais te mettre un lien pour les expressions régulière...

désolé de t'embrouiller, pour les type mime demande à vilhjalms, elle s'y connais beaucoup mieux que moi...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
cs_aszqwx Messages postés 6 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 12 juin 2008
7 juin 2008 à 19:53
Je vais attendre sa réponse ici, j'espère qu'elle repassera bientôt
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
7 juin 2008 à 20:11
ok, bonne chance, tiens nous au courant de si ça marche...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
7 juin 2008 à 23:31
salut

nicomilville, tu fais erreur... c'est un mimetype, pas une extention qu'on recois...

cf http://www.phpcs.com/codes/TUTO-SECURITE-UPLOAD-TELNET_31841.aspx
et http://www.phpcs.com/codes/FAILLES-TOUT-GENRE_34088.aspx
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
8 juin 2008 à 09:13
ok, désolé...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
cs_aszqwx Messages postés 6 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 12 juin 2008
12 juin 2008 à 15:32
up
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
12 juin 2008 à 15:42
DOWN !

on t'a repondu, tu veux qu'on ajoute quoi ???
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
12 juin 2008 à 18:01
oui, au fait, merci coucou747 pour tes liens, cela m'a permis d'approfondir mes connaissances sur les failles, sutout sur les failles XSS car pour les autres, je n'ai pas tout compris...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
cs_aszqwx Messages postés 6 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 12 juin 2008
12 juin 2008 à 18:29
Citation :


<table style= "WIDTH: 100%; BORDER-BOTTOM: black 1px solid">

----,

ba vu que tu es débutant que dirai tu que je te donne des tutoriaux qui t'aiderons a réaliser ça...

déja je t'es donner le code pour vérifier l'extension...

Je vais te mettre un lien

pour les expressions régulière...

désolé de t'embrouiller, pour les type mime demande à vilhjalms , elle s'y connais beaucoup mieux que moi...

a +

</td>

----

 



</td>
</tr>
<tr style ="COLOR: black; BACKGROUND-COLOR: white">
<td valign="top">



Re : Comment sécuriser mon uploader ?
le 07/06/2008 19:53:11





aszqwx

,
Je vais attendre sa réponse ici, j'espère qu'elle repassera bientôt





</td>
</tr>
</tbody>
</table>
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
12 juin 2008 à 18:35
ok... mais je crois que coucou747 t'a fournit un lien qui explique comment se protèger en manipulant le mime type...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
12 juin 2008 à 18:39
en fait nicomilville, justement, j'explique dans mes liens que le mime type n'est pas fiable...

aszqwx j'ai repondu a ta question par des liens, tu ne crois tout de meme pas que je vais te faire tout ton travail a ta place ???
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
12 juin 2008 à 18:44
ba alors faut vérifier quoi ? car dans tes explication tu explique aussi que vérifier l'extension ne sert a rien car on arrive facilement a faire passer un fichier sur le serveur et après avec telnet remettre son extension d'origine...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
12 juin 2008 à 18:51
c'est tout le dileme... la verification de l'extention te sert a savoir si ton fichier sera executable ou non, mais ne t'informe pas sur son contenu...

la verification du mimetype ne t'apporte aucune info
0
Rejoignez-nous