code chelou - PHP - Programmation
Marsh Posté le 23-06-2005 à 21:29:27
zend encoder non ?
Ou passé via un mod_gzip
Marsh Posté le 23-06-2005 à 21:38:46
ah zend encoder, je connaissais pas. ça à l'air puissant comme truc.
les fichiers compressé via Zlib n'ont pas une extension .gz? rien à voir?
Marsh Posté le 23-06-2005 à 21:39:53
pmusa a écrit : |
On peut faire de la compression/decompression à la volée, c'est transparent pour l'utilisateur, et ça fait transiter moins de données. Par exemple, il me semble que ce forum l'uytilise (va voir dans les options)
Marsh Posté le 23-06-2005 à 21:43:58
ok.
j'viends de regarder vite fait et il semblerai que cette page gere une image GD.
je vais essayer un gzdecompress(), ça m'intrigue c'truc.
Marsh Posté le 23-06-2005 à 21:47:12
pmusa a écrit : ok. |
C'est faisable aussi
http://rincevent.dyndns.org/cgi-bin/image.sh
http://rincevent.dyndns.org/cgi-bin/image.txt
http://rincevent.dyndns.org/cgi-bin/image.php
Marsh Posté le 24-06-2005 à 15:19:35
comme t'ad feyyy?
on peut voir la source?
mon gzuncompress() donne rien.
Marsh Posté le 24-06-2005 à 15:22:47
Ca pourrait etre un fichier (binaire) avec un header(content-type: plain/text)
Marsh Posté le 24-06-2005 à 15:29:10
|
Marsh Posté le 24-06-2005 à 16:20:17
pmusa a écrit : uè mais c'est du cgi. |
Le principe change pas, on spécifie le content-type, et on envoie le flux
Marsh Posté le 24-06-2005 à 16:28:27
pmusa a écrit : en me baladant sur je ne sais plus quel site, un click sur un lien m'a permis de telecharge un page au format php. |
C'est pas par hasard une image qui a la mauvaise extension simplement ? Il y a quoi au tout début du fichier ?
Marsh Posté le 24-06-2005 à 16:32:09
non non même pas antp.
extension en .php
Elianor, je pourrais avoir un exemple en php stp? ou juste un listing des fonctions directrices.
edit:
un extrait des premières lignes:
Code :
|
Marsh Posté le 24-06-2005 à 16:37:53
pmusa a écrit :
|
C'est un fichier jpeg créé par la librairie GD.
http://www.php.net/manual/en/ref.image.php
exemple 1
Marsh Posté le 24-06-2005 à 16:39:09
bah ouais c'est certainement une image envoyée sans le bon type mime
Marsh Posté le 24-06-2005 à 16:40:56
pmusa a écrit : non non même pas antp.
|
Heu ton truc c'est clairement un JPEG... renomme ça en .jpg et tu verras le vrai contenu
Donc c'est exactement ce que je disais
Marsh Posté le 24-06-2005 à 16:43:06
j'ai deja fais remarquer qu'il s'agissait d'un GD.
je vais essayer antp.
edit:
antp is right. j'ai un image.
et c'est quoi le problème alors avec ce fichier? le gars a renommé son mon_fichier.jpg en mon_fichier.php?
comment se fait-il que je puisse telecharger ce fichier? mauvais MIME vous avez dit?
Marsh Posté le 24-06-2005 à 17:41:26
pmusa a écrit : et c'est quoi le problème alors avec ce fichier? le gars a renommé son mon_fichier.jpg en mon_fichier.php? |
Non, il a généré dynamiquement l'image
Marsh Posté le 24-06-2005 à 17:42:40
pmusa a écrit : |
tu utilise firefox ou mozilla ?
Marsh Posté le 24-06-2005 à 17:48:47
MSIE. (uè c'ey mal mais je suis pas sur mon peycey... le mien est HS now )
Elianor explique moi ton tuc avec l'image et le fichier txt. stp
Marsh Posté le 24-06-2005 à 17:50:35
pmusa a écrit : |
Une extension, ça ne veut rien dire
Marsh Posté le 24-06-2005 à 17:55:24
ué je crois comprendre. tu envoie des header specifiques au serveur?
c marrant comme truc.
crache le code.
Marsh Posté le 24-06-2005 à 17:56:20
Ca fait deux fois que je crache le code. Une fois en shell pour un cgi, et une fois en PHP, ça ssuffit, il faut suivre un peu
Marsh Posté le 24-06-2005 à 18:02:14
pmusa a écrit : MSIE. (uè c'ey mal mais je suis pas sur mon peycey... le mien est HS now ) |
1- Ton navigateur ne connait pas les extensions, et à vrai dire il s'en branle, il n'a pas à les connaître, les extensions de fichiers sont illogiques.
2- Donc le navigateur va utiliser un autre mécanisme, qu'on appelle le type mime (MIME-TYPE). Ce type MIME lui est envoyé par le serveur web juste avant le fichier lui même (dans les headers HTTP).
Le principe, c'est que le serveur dit au navigateur "là je vais t'envoyer un fichier du type X", puis il envoie le fichier et le navigateur le traite comme il le peut/veut.
Résultat, avec une lib de création d'images tu peux créer ton image via du code PHP (ou Python, ou Perl, ou n'importe quoi d'autre), tu demandes au serveur web d'envoyer un type MIME correspondant à ton image et tu balances l'image.
Elle n'aura pas une extension d'image (son extension sera .php, .phtml, .psp, .cgi, .jsp ou n'importe quoi d'autre) mais elle n'en sera pas moins une image, et le navigateur la traitera normalement comme telle...
si l'administrateur et le codeur n'ont pas oublié de bien gérer leurs types mime au niveau de la config du serveur et de la création du script...
Marsh Posté le 24-06-2005 à 18:04:20
oh pardon je t'ai faché(e).
--> content-type is da rule
bon bah c'est tout ce que je voulais savoir.
.... ou pt'être: on peut decoder ce truc pourris là?
edit:
Masklinn t'es trop serviable.
donc si j'ai suivi, le webmaster qui a developpé le fichier que j'ai pu download à omis d'indiquer le content-type? ça ne genère pas d'erreur pourtant sous la lib GD d'oublier de le stipuler en debut de fichier?
Marsh Posté le 24-06-2005 à 18:09:04
pmusa a écrit : oh pardon je t'ai faché(e). |
Non, c'est son état normal.
Enfin, il était même très calme là
Marsh Posté le 24-06-2005 à 18:15:24
MSIE concidere le type mime "text/plain" si :
- il ne recoit aucun type mime
- il n'arrive pas a reconnaitre le type de données
donc le mec qui a crée le script qui genere l'image a effectivement oublié de specifier le type mime :
header("Content-type: image/jpeg" ); |
(si cest du jpg biensur )
Marsh Posté le 24-06-2005 à 18:17:33
c'est moi qui lui fait cet effet?
faut me pardonner, je suis long à la detente hein. je decouvre php tous les jours un peu plus...
ok psyjc.
Marsh Posté le 24-06-2005 à 18:41:01
pmusa a écrit : donc si j'ai suivi, le webmaster qui a developpé le fichier que j'ai pu download à omis d'indiquer le content-type? |
C'est plus que probable.
Citation : ça ne genère pas d'erreur pourtant sous la lib GD d'oublier de le stipuler en debut de fichier? |
La lib GD ne crée pas de fichier, elle crée des données.
Le fichier n'est qu'un conteneur, GD sert à générer ce qui est à l'intérieur complètement indépendement du fichier lui même, et les headers sont les meta-informations du fichier.
Comment GD pourrait-elle ne serait-ce que voir des informations sur le fichier alors qu'elle même ne s'occupe même pas du fichier dans son ensemble? C'est totalement découplé. C'est un peu comme demander pourquoi la manette de réglage du siège conducteur de ta voiture n'est pas capable de détecter si t'as laissé tes phares allumés
Marsh Posté le 24-06-2005 à 18:45:39
azubal a écrit : donc le mec qui a crée le script qui genere l'image a effectivement oublié de specifier le type mime :
|
Il peut même faire express.
Marsh Posté le 24-06-2005 à 18:51:04
non non je me suis mal exprimé Masklinn... je voulais parler du "moteur php". il n'affiche pas de message d'erreur?
là, si on omet le content-type, c'est comme si dans une session on oubliait un session_start et quon commencerai à mettre des valeurs dans des varaibles de session. nan?
ultime affirmation:
je peux creer un fichier "mon_image.paidai" et mentionner mon mime-type et le serveur va parser le code qu'il y a dedans???
mais pourquoi le serveur lui même va le trater?? c'est vrai, la "page" n'est envoyé au serveur que si son extension est .php, .phtml, etc... or la c'est le client qui devrait directement m'afficher la source, carrement, sur une page, ou me la proposer en telechargement s'il ne reconnait pas l'extension.
oui aujourd'hui c'est vendredi, j'ai fais des heures supp', et je suis chiant.
edit:
@the-shadow >> pourkoi il ferait exprès?
Marsh Posté le 24-06-2005 à 18:57:12
pmusa a écrit : non non je me suis mal exprimé Masklinn... je voulais parler du "moteur php". il n'affiche pas de message d'erreur? |
Le moteur PHP s'en branle, il ne s'en occupe pas, celui qui gère ça est le serveur web (apache, IIS, ...) et les serveurs web ont des MIMES par défaut si aucun type MIME ne correspond et qu'aucun n'a été envoyé par la page.
Citation : je peux creer un fichier "mon_image.paidai" et mentionner mon mime-type et le serveur va parser le code qu'il y a dedans??? |
Ca dépend du serveur que tu veux.
Si tu dis à Apache par exemple que les fichiers ".paidai" doivent être traités par l'interpréteur PHP, alors oui Apache va envoyer les fichiers à PHP, celui ci va les parser et les exécuter et va envoyer le résultat à Apache.
Si tu dis à Apache que les fichiers .paidai sont des images gif alors il va les envoyer au client en tant qu'images GIF
Citation : mais pourquoi le serveur lui même va le trater?? |
parce que c'est son boulot
Citation : c'est vrai, la "page" n'est envoyé au serveur que si son extension est .php, .phtml, etc... |
non.
Le serveur, c'est le serveur HTTP auquel ton PC se connecte pour demander des pages. Toi ce dont tu parles, c'est de l'interpréteur PHP. PHP n'est pas un serveur, c'est un logiciel appelé par le serveur HTTP quand on l'a configuré pour.
Citation : @the-shadow >> pourkoi il ferait exprès? |
Pour forcer un téléchargement ou montrer un code source.
C'est probablement pas le cas ici, mais c'est l'une des possibilités
Marsh Posté le 24-06-2005 à 19:05:08
okey je vois, tu m'as bien compris et repris.
quote Masklinn: "ou montrer un code source"
pour lui c'est pas gagné.
on peut arriver à dechiffrer son truc? et quand j'y pense... ça pourrais même être une faille de secu ça non?
Marsh Posté le 24-06-2005 à 19:07:20
pmusa a écrit : on peut arriver à dechiffrer son truc? et quand j'y pense... ça pourrais même être une faille de secu ça non? |
Pourquoi cela.
Un script PHP qui génère une image reste un script PHP parsé par le serveur et éliminé du code chez le client.
Marsh Posté le 24-06-2005 à 19:09:28
pmusa a écrit : on peut arriver à dechiffrer son truc? et quand j'y pense... ça pourrais même être une faille de secu ça non? |
Pas plus que d'ouvrir une image dans ton éditeur de texte préféré
Marsh Posté le 24-06-2005 à 19:10:33
t'es sur que c'est pas peut-être la source même que j'ai là? parce que si il avait été interprété, j'aurai pas pu le telecharger.
Marsh Posté le 24-06-2005 à 19:12:17
pmusa a écrit : t'es sur que c'est pas peut-être la source même que j'ai là? parce que si il avait été interprété, j'aurai pas pu le telecharger. |
Ca te dérange tant que ça d'essayer de comprendre ce que j'écris?
En quoi le fait que tu l'ais téléchargé empêche que ça ait été interprété?
Marsh Posté le 24-06-2005 à 19:13:20
pmusa a écrit : t'es sur que c'est pas peut-être la source même que j'ai là? parce que si il avait été interprété, j'aurai pas pu le telecharger. |
Sisi
Tiens, regarde sur le site de ma femme : http://www.gloriette-artemis.net
va dans les albums photos http://www.gloriette-artemis.net/index.php?page=25
et fait "afficher l'image" (si tu es sous FireFox) sur une image ou fais enregistrer l'image.
Marsh Posté le 24-06-2005 à 19:14:13
masklinn a écrit : Pas plus que d'ouvrir une image dans ton éditeur de texte préféré |
ah ué!
ultime question:
grossièrement, ce que je viens de telecharger c'est ni plus ni moins une image jp(e)g?
Marsh Posté le 24-06-2005 à 19:15:26
pmusa a écrit : |
Non, pas grossièrement, c'est tout à fait ça.
Marsh Posté le 23-06-2005 à 21:28:56
en me baladant sur je ne sais plus quel site, un click sur un lien m'a permis de telecharge un page au format php.
je l'ai sur mon HD.
on y trouve du code genre:
mais keyckeceyyk ce bordeyyyl de code chelou?
c'est des données cryptées? encodées? compressées?
et pourquoi que j'ai pu le telecharger?