• STATISTIQUES
  • Il y a eu un total de 0 membres et 47243 visiteurs sur le site dans les dernières 24h pour un total de 47 243 personnes!
    Membres: 2 605
    Discussions: 3 579
    Messages: 32 816
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [EN] Rosecode
    Programming: 36, Math: 29, Probability: 5, Sequence: 7, Crypto: 4, Brainf**k: 13, TimeRace: 4, Hack: 9
    Challenges
    [FR] Infomirmo
    Challenge présenté sous la forme de 6 niveaux de difficultés diverses et variées avec chacun plusieurs chall...
    Challenges
    [EN] Security Traps
    Site de challenge qui prétend être construit non pas dans le but de parfaire vos connaissances, mais plutôt dan...
    Challenges
    [EN] SecurityFocus
    SecurityFocus a été conçu pour faciliter la discussion sur des sujets liés la sécu...
    Vulnérabilités
    [EN] CS Tutoring Center
    Site de challenge spécialisé dans les challenges de programmation C++ et java cependant, d'autres langages pe...
    Challenges
    [FR] Developpez.net
    Un forum communautaire qui se veut pour les développeurs en générale. Avec presque 500 000 membr...
    Programmation
    [FR] WeChall
    Audio: 3, Coding: 11, Cracking: 9, Crypto: 18, Encoding: 11, Exploit: 44, Forensics: 1, Fun: 6, HTTP: 6, Image: 8, Java:...
    Challenges

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
injection de code malicieux sur des fichiers images
12-01-2015, 22h15
Message : #3
ark Hors ligne
Psyckomodo!
*****



Messages : 1,033
Sujets : 48
Points: 317
Inscription : Sep 2011
RE: injection de code malicieux sur des fichiers images
Salut,

Difficile de repondre a ta question, mais je vais essayer de synthetiser.
Alors, en fait, si tu veux te proteger de ce genre de failles, il y a deux regles tres importantes: premierement, fais attention quand tu code, et deuxiemement, ne fais jamais confiance a tout ce que l'utilisateur peut modifier.

Pour faire simple, l'utilisateur peut modifier TOUS les paramettres que tu passes via tes requetes, il convient donc de verifier si ce que tu recoit reste correct.

Imaginons par exemple, que tu aies un formulaire d'upload d'image, pour un avatar sur ton forum ou autre. Dans ce cas, il convient de s'assurer que le fichier est reellement une image. En effet, un utilisateur malicieux pourrait essayer de faire passer du code php pour une image.
Et la precisement, tu te retrouve avec un probleme! En effet, si l'utilisateur peut upload son fichier sur ton serveur, il est donc en mesure d'executer du code php sur cette machine, et donc peut y faire tout et n'importe quoi (poser une backdoor, rooter la machine et y laisser un rootkit...)
Sur ce genre de vulnerabilites, en general, la meilleure solution va etre de verifier les extensions du fichier (etablir une liste d'extension autorisees, .gif, .png, .jpg, etc) et rejeter tous les fichier ayant une autre extension que celles presentent dans la liste. Tu peux ensuite recuperer les donnees de l'image, et verifier que le header soit bien present, et que les informations y sont valides.

Cependant, bien que ton formulaire soit plutot securise apres que tu aies effectues ces modifications, il se peut pour autant qu'une autre vulnerabilite soit presente, prennons l'exemple d'une page php, qui inclue une page dont le nom est passe en parametre a la requete.

par exemple:
www.foo.bar/?page=index.php

Ici, que ce passerait-il si l'utilisateur modifie le nom de cette page dans l'url? Il pourrait acceder a n'importe quelle page du site. Pas tres important? Erreur! :p

En effet, si ce parametre n'est pas verifie, l'utilisateur va pouvoir inclure tout fichier present sur le serveur, et ainsi avoir un acces en lecture sur une grande majorite des fichiers disponibles (/etc/passwd etant le favori sur les serveurs linux :p)

Bon, avoir un acces en lecture, c'est genant, mais c'est pas ca le pire. Le pire, c'est que l'utilisateur, juste avant, il a uploade une jolie image pour faire son avatar, et il a mis du code php dans le code de l'image... Qu'est ce qu'il se passe si il inclue son image en modifiant le parametre?

Et ben il execute son code php! Et la encore, domage pour ton serveur, mais tu peux songer a reinstaller ^^

En bref, NEVER TRUST USER INPUT !!!
Penses a verifier toutes les entrees utilisateurs, meme les plus annodines, escape tout ce que tu envoi en base de donnee avec mysql_real_escape_string() ou un equivalent si tu n'utilise pas mysql. Penses a convertir les characteres speciaux en utilisant l'encodage html, etc.

voili voilou :)

Sinon, hesites pas a taper un peu sur les challenges (particulierement dans les sections hacking et javascript) pour mieux comprendre ce qui ne va pas avec les manques de verification.
+1 (1) -1 (0) Répondre


Messages dans ce sujet
RE: injection de code malicieux sur des fichiers images - par ark - 12-01-2015, 22h15

Atteindre :


Utilisateur(s) parcourant ce sujet : 6 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut