Type d'un fichier [Résolu]

audayls 373 Messages postés samedi 9 juillet 2005Date d'inscription 11 août 2008 Dernière intervention - 23 juil. 2008 à 22:37 - Dernière réponse : audayls 373 Messages postés samedi 9 juillet 2005Date d'inscription 11 août 2008 Dernière intervention
- 4 août 2008 à 11:25
Salut,

    Avant lorsque je faisais un upload et que je n'acceptais que les images, j'utilisais la fonction "getimagesize". Mais après avoir fait quelques tests, j'ai pu voir que lorsqu'on met du PHP à la fin du code de l'image, ce dernier n'est pas detecté ...

    J'ai donc essayé en vain de trouver comment on pouvait connaître le type d'un fichier. Tout ce que je parvient à trouver c'est qu'il faut récupérer les 3 premiers octets qui sont la signature hexadécimale (du moins si j'ai bien compris...).

J'aimerai savoir comment peut on être sur du type du fichier ?
Merci d'avance pour vos réponses !

For every choice, a consequence (Fable)
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention - 24 juil. 2008 à 01:21
3
Merci
salut

on ne peut pas etre sur du type du fichier.

Merci coucou747 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 91 internautes ce mois-ci

Commenter la réponse de coucou747
Meilleure réponse
yoman64 962 Messages postés samedi 19 janvier 2002Date d'inscription 2 août 2010 Dernière intervention - 24 juil. 2008 à 10:12
3
Merci
Salut,

Je vois pas trop le lien avec telnet et l'injection SQL.
Je ne vois pas non plus le problème à cacher du code php à la fin d'une image, si le fichier n'a pas l'extension .php (ou toutes autres définies par le serveur), le code ne sera jamais interprété donc pas de danger

Il n'y a aucun moyen d'être sur à 100% d'un fichier, après tout, un fichier n'est qu'une suite d'octet, et dans n'importe quel fichier il peut y avoir n'importe quel octets  Parce que la méthode dont tu parles, récupéré les trois premiers octets, servent à déterminer le type oui, mais ils ne prennent pas en compte le reste du fichier !

Bon, si tu es vraiment inquiêt et que les fichiers en question sont des images, tu peux aussi les faires passer par GD (Sans forcément les manipuler, juste les réenregistrer) ce qui va te laisser une image pure .

-------------------
Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ??
Et bien c'est la : www.e3b.org  

Merci yoman64 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 91 internautes ce mois-ci

Commenter la réponse de yoman64
nicomilville 3498 Messages postés lundi 16 juillet 2007Date d'inscription 28 février 2014 Dernière intervention - 24 juil. 2008 à 08:49
0
Merci
Salut,

Coucou747++

Tu devrai aller voir dans le profil de coucou747 pour trouver la source ou le tutorial qu'il a écrit sur les injection avec fichier, sql, par l'url, etc...

Et tu verrai qu'on peut changer le type d'un fichier avec telnet (si je me souviens bien...) !

a++

Si la réponse vous convient, pensez : Réponse acceptée !
Commenter la réponse de nicomilville
nicomilville 3498 Messages postés lundi 16 juillet 2007Date d'inscription 28 février 2014 Dernière intervention - 24 juil. 2008 à 10:18
0
Merci
@yoman : il n'y a pas de rapport entre telnet et une injection SQL...

Je parlais du tutorial, il parle de comment faire pour faire passer un fichier sur le serveur et ensuite en changer l'extension (avec telnet) pour ensuite pouvoir l'éxécuter en se rendant a son adresse...

Enfin bon, je ne suis même plus sur que l'article est de coucou747, je l'ai lu il y a 1 mois...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
Commenter la réponse de nicomilville
coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention - 24 juil. 2008 à 18:20
0
Merci
j'ai effectivement fait des choses du genre :
une source avec un passage d'un .php avec comme type : image/jpeg
une source avec differentes failles dont des injections sql
Commenter la réponse de coucou747
nicomilville 3498 Messages postés lundi 16 juillet 2007Date d'inscription 28 février 2014 Dernière intervention - 24 juil. 2008 à 20:06
0
Merci
oui, voila, je parle de ces sources la...

D'ailleur je te remercie de les avoir postés, elle m'ont beaucoup apprit et aidé !

a++

Si la réponse vous convient, pensez : Réponse acceptée !
Commenter la réponse de nicomilville
codefalse 1127 Messages postés mardi 8 janvier 2002Date d'inscription 21 avril 2009 Dernière intervention - 24 juil. 2008 à 20:38
0
Merci
L'idée de Yoman, de traiter le fichier en le nettoyant avec gd semble etre une solution viable.

On peux faire beaucoup de mauvaises choses avec un fichier mal formé ! :/
Personnellement je ne vois pas d'autres solutions !

http://www.ReFlectiv.Net
Commenter la réponse de codefalse
audayls 373 Messages postés samedi 9 juillet 2005Date d'inscription 11 août 2008 Dernière intervention - 4 août 2008 à 11:25
0
Merci
Merci à tous pour vos conseils et désolé du retard pour ma réponse !
Je pense également que la solution de Yoman94 soit la plus utilisable pour les images.

@Nicomilville : Je connais le script de Coucou747, par contre tu n'as pas compris le telnet : Tu peux envoyer des données d'une page à une page à l'aide d'un formulaire. En passant par un telnet tu peux "simuler" le formulaire, et donc envoyer un fichier PHP avec un MIME Jpeg...

Encore une fois merci pour vos réponses =)

For every choice, a consequence (Fable)
Commenter la réponse de audayls

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.