Decryptage php

Fermé
Signaler
Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008
-
 mistic100 -
Bonjour,


Je me trouve dans l'embarras: j'ai monté un galerie photos avec un fichier contact.php pour que la famille et les amis puissent me faire parvenir leurs photos.
Le problème c'est que j'ai bien trouvé un script en php mais ce dernier ne permet d'envoyer que des images et qui n'excèdent pas 1 Mo ce qui est très limité. Les photos que je prends font 2.5Mo.Ce fichier est crypté et je voudrais voir s'il est possible d'augmenter le poids des fichiers en uploads.
Je suis incapable de remplir le bon de commande qui est en allemand ici: http://www.virtualsystem.de/kundenverwaltung/bestellform.php
et en plus débourser pour quelque chose dont je n'ai pas la certitude que cela fonctionne, je voudrais tester avant car j'ai déjà eu des mauvaises surprises.
Comment décrypter ce fichier.
J'espère que quelqu'un pourra me dépanner merci d'avance.

Cordialement

Voici le script:
<?php

######################################
# VS-Kontaktformular #
# Copyright 2005 Hans Reisenauer #
# http://www.virtualsystem.de #
# Die Copyright Hinweise #
# dürfen nicht entfernt werden! #
# Please don't remove any (c) #
######################################


require ("./inc/settings.inc.php");

$_F=__FILE__;$_X='P2lCPw1WDVYNVnpNdlFzek0+KCJYaD1aV2guTWU5TXpYLj1ZVyIpOw1Wek12UXN6TT4oIlho­PVpXaD1PWl89WldYLj1ZVyIpOw1Wek12UXN6TT4oIlhoPVpXaHlPSD1leT1fPVpXWC49WVciKTsNVg1WTTIuTz4iQj­x6PmhpQjlzYz5lV3N4SFNcIjJNSD1NelwiaW1PfU16TTkmSDxuWjs8cSZIPG5aO0JlPi56TUFTXCIuPT1aOmhofX19­WGNzej1RZVducW49TVlYOU1cIj49cz1XTVNcIkdPbj1NSFdPbk0+bXRtLXAyenNaPU0+QSZRUVlXO3o+e008WWVuPU­16XCI+PWV6eE09U1wiXzxXZUh5XCJpY3N6PVFlV25xbj1NWVg5TUJoZWlCaDlzY2lCPHo+aGkiOw1WDVZ6TXZRc3pN­PigiWGg9WldoQU9PPU16WC49WVciKTsNVg1WP2kNVg==';$_D=strrev('edoced_46esab');eval($_D('JF9YPW­Jhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdTZ1BPOVlaV0ZLbXF5ZnhjakxKUnp1TTV2TnRzMWIue0I0­bkNdaS8yRGwwRWhlQQpbZDg9UXA+VlhvIEh9NkdJdzdrYTNUclU8JywnPVI5b2RtcGxBRVB5azhndls1M3hyTWV6cV­pIaTdZaFc8RHNHez5DY1h9MU4vYWZqNl1KdHVTIAouQlVud1ZLTFFPMjBJVEY0YicpOyRfUj1lcmVnX3JlcGxhY2Uo­J19fRklMRV9fJywiJyIuJF9GLiInIiwkX1gpO2V2YWwoJF9SKTskX1I9MDskX1g9MDs='));


?>

9 réponses

Messages postés
3671
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 004
Bonjour,

Il suffit de lire très attentivement le texte du fichier php. Il n'est pas réellement crypté, mais "offusqué", c'est à dire que le code est rendu imbitable exprès. Mais ce n'est pas du chiffrage : il suffit de savoir lire du PHP pour s'y retrouver. Pas besoin de connaître une clé de décodage ou autre.

Première étape, découper en fonction des ";" pour isoler les instructions, et les remettre ligne à ligne.

$_F=__FILE__;    // ça c'est facile, on attribut à une variable au nom peu évocateur une constante qui l'était trop.

$_X='P2lCPw1WDVYNVnpNdlFzek0+KCJYaD1aV2guTWU5TXpYLj1ZVyIpOw1Wek12UXN6TT4oIlho­­PVpXaD1PWl89WldYLj1ZVyIpOw1Wek12UXN6TT4oIlhoPVpXaHlPSD1leT1fPVpXWC49WVciKTsNVg1WTTIuTz4iQ­j­x6PmhpQjlzYz5lV3N4SFNcIjJNSD1NelwiaW1PfU16TTkmSDxuWjs8cSZIPG5aO0JlPi56TUFTXCIuPT1aOmhofX­19­WGNzej1RZVducW49TVlYOU1cIj49cz1XTVNcIkdPbj1NSFdPbk0+bXRtLXAyenNaPU0+QSZRUVlXO3o+e008WWV­uPU­16XCI+PWV6eE09U1wiXzxXZUh5XCJpY3N6PVFlV25xbj1NWVg5TUJoZWlCaDlzY2lCPHo+aGkiOw1WDVZ6TXZR­c3pN­PigiWGg9WldoQU9PPU16WC49WVciKTsNVg1WP2kNVg==';    // Là, en effet, on peut penser que c'est du crypté (et même, ça l'est, mais php le décrypte tout seul via la fonction idoine ; voir plus bas)

$_D=strrev('edoced_46esab');    // strrev est une fonction qui inverse l'ordre des lettres. Donc $_D contient 'base64_decode', qui est le nom de la fonction qui permettra de décrypter le bloc précédent.

// et enfin
eval($_D('J­F9YPW­Jhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdTZ1BPOVlaV0ZLbXF5ZnhjakxKUnp1TTV2TnRzMW­Iue0I0­bkNdaS8yRGwwRWhlQQpbZDg9UXA+VlhvIEh9NkdJdzdrYTNUclU8JywnPVI5b2RtcGxBRVB5azhndls1M3h­yTWV6cV­pIaTdZaFc8RHNHez5DY1h9MU4vYWZqNl1KdHVTIAouQlVud1ZLTFFPMjBJVEY0YicpOyRfUj1lcmVnX3Jl­cGxhY2Uo­J19fRklMRV9fJywiJyIuJF9GLiInIiwkX1gpO2V2YWwoJF9SKTskX1I9MDskX1g9MDs='));    
/* La fonction 'eval' prend en argument une chaine de caractère, et l'exécute comme si c'était du php. Par exemple, on pourrait écrire eval('$x = 2'); qui fait exactement la même chose que $x = 2; Ca permet de passer des noms de fonction en paramètre, de façon dynamique, plutôt que d'utiliser directement la fonction elle-même : à rapprocher des pointeurs de fonctions dans d'autres langages. */

Donc, sur cette dernière ligne, on voit que eval est appliqué à $_D(...). Donc, en fait, à base64_decode(...).

Pour savoir de quoi il s'agit, on crée une page php basique dans laquelle on tape cette ligne, mais en remplaçant eval($_D(...) par echo base64_decode(...).
Ce qui affiche (après remise en forme) :
$_X=base64_decode($_X);
$_X=strtr($_X,'SgPO9YZWFKmqyfxcjLJRzuM5vNts1b.{B4nC]i/2Dl0EheA [d8=Qp>VXo H}6GIw7ka3TrU<','=R9odmplAEPyk8gv[53xrMezqZHi7YhWCcX}1N/afj6]JtuS .BUnwVKLQO20ITF4b');
$_R=ereg_replace('__FILE__',"'".$_F."'",$_X);
eval($_R);
$_R=0;
$_X=0;

C'est à nouveau codé.

Commençons par prendre les deux premières lignes :
En faisant un "echo" de ça, comme précédemment, on trouve :
$_X = '?NC? K K KreqnireV("LJUplJhetderLhUml"); KreqnireV("LJUplJUop_UplLhUml"); KreqnireV("LJUplJko2UtkU_UplLhUml"); K KeahoV"C'

Ça semble incompréhensible, mais on commence à reconnaître du php.

La suite, c'est une fonction de remplacement : ereg_replace, qui permet de remplacer des caractères par d'autres dans une chaine.
En l'occurrence, elle utilise $_F qui contient le nom du fichier source. Pour le trouver exactement, tu peux relancer la page chiffrée en question en ayant pris soin de mettre, tout en bas :
echo "<br><br>$_F";
En lançant la page, tu verras, en bas, s'afficher le contenu de cette constante (chemin d'accès + nom du fichier, normalement). Copie-le pour le replacer dans le code qui suit. Je ne peux pas aller plus loin sur mon PC, il me manque des infos. Mais voilà la marche à suivre pour finalement décoder tout ça :

Dans une page PHP vierge, colle l'instruction suivante :
$_R=ereg_replace('__FILE__',"'#####'", '?NC? K K KreqnireV("LJUplJhetderLhUml"); KreqnireV("LJUplJUop_UplLhUml"); KreqnireV("LJUplJko2UtkU_UplLhUml"); K KeahoV"C');
echo $_R;


Remplace les ##### par ce que tu as copié juste au-dessus. Et exécute cette dernière page.

Si tout va bien, tu devrais voir apparaître à l'écran l'ensemble des instructions réellement exécutées par cette page !

Xavier
5
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 41989 internautes nous ont dit merci ce mois-ci

Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008

Bonjour,


Je me trouve dans l'embarras: j'ai monté un galerie photos avec un fichier contact.php pour que la famille et les amis puissent me faire parvenir leurs photos.
Le problème c'est que j'ai bien trouvé un script en php mais ce dernier ne permet d'envoyer que des images et qui n'excèdent pas 1 Mo ce qui est très limité. Les photos que je prends font 2.5Mo.Ce fichier est crypté et je voudrais voir s'il est possible d'augmenter le poids des fichiers en uploads.
Je suis incapable de remplir le bon de commande qui est en allemand ici: http://www.virtualsystem.de/kundenverwaltung/bestellform.php
et en plus débourser pour quelque chose dont je n'ai pas la certitude que cela fonctionne, je voudrais tester avant car j'ai déjà eu des mauvaises surprises.
Comment décrypter ce fichier.
J'espère que quelqu'un pourra me dépanner merci d'avance.

Cordialement

Voici le script:
<?php

######################################
# VS-Kontaktformular #
# Copyright 2005 Hans Reisenauer #
# http://www.virtualsystem.de #
# Die Copyright Hinweise #
# dürfen nicht entfernt werden! #
# Please don't remove any (c) #
######################################


require ("./inc/settings.inc.php");

$_F=__FILE__;$_X='P2lCPw1WDVYNVnpNdlFzek0+KCJYaD1aV2guTWU5TXpYLj1ZVyIpOw1Wek12UXN6TT4oIlho­­PVpXaD1PWl89WldYLj1ZVyIpOw1Wek12UXN6TT4oIlhoPVpXaHlPSD1leT1fPVpXWC49WVciKTsNVg1WTTIuTz4iQ­j­x6PmhpQjlzYz5lV3N4SFNcIjJNSD1NelwiaW1PfU16TTkmSDxuWjs8cSZIPG5aO0JlPi56TUFTXCIuPT1aOmhofX­19­WGNzej1RZVducW49TVlYOU1cIj49cz1XTVNcIkdPbj1NSFdPbk0+bXRtLXAyenNaPU0+QSZRUVlXO3o+e008WWV­uPU­16XCI+PWV6eE09U1wiXzxXZUh5XCJpY3N6PVFlV25xbj1NWVg5TUJoZWlCaDlzY2lCPHo+aGkiOw1WDVZ6TXZR­c3pN­PigiWGg9WldoQU9PPU16WC49WVciKTsNVg1WP2kNVg==';$_D=strrev('edoced_46esab');eval($_D('J­F9YPW­Jhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdTZ1BPOVlaV0ZLbXF5ZnhjakxKUnp1TTV2TnRzMW­Iue0I0­bkNdaS8yRGwwRWhlQQpbZDg9UXA+VlhvIEh9NkdJdzdrYTNUclU8JywnPVI5b2RtcGxBRVB5azhndls1M3h­yTWV6cV­pIaTdZaFc8RHNHez5DY1h9MU4vYWZqNl1KdHVTIAouQlVud1ZLTFFPMjBJVEY0YicpOyRfUj1lcmVnX3Jl­cGxhY2Uo­J19fRklMRV9fJywiJyIuJF9GLiInIiwkX1gpO2V2YWwoJF9SKTskX1I9MDskX1g9MDs='));


?>
Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008

Re bonjour,
Je suis toujours sans solution concernant ce décryptage.
Y a t il sur ce forum quelqu'un qui puisse me permettre de dévérouiller ce fichier afin de modifier simplement le poids et les catégories de fichiers à uploder.
J'ai vu qu'il y avait des decrypteurs pro, peut être dois-je mettre ce post dans une autre rubrique?
Merci
c est de lencryptage base64 ca, non ???
la limite de 1Mo est presente sur le serrveur apache, le serveur web. tu ne pourra la changer que si tu est administrateur, ce qui n est surement pas le cas...
desolé.
je vais voir si on peut decrypter ca ....
require ("./inc/settings.inc.php");

c est un fichier livré avec ca ?
Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008

Pour nabla la réponse est oui.

Pour Reivax chapeau bas! Je t'avoue que je suis à des kilomètres de tes connaissances! Tu me parlerais en javanais je serais aussi à l'aise qu'un poisson sur un tas de cailloux!

Je vais essayer de comprendre ce soir en rentrant, mais franchement, je ne suis pas sur du tout, mais vraiment pas du tout d'avoir tout compris...

Un grand merci pour vos réponses.

Ce soir je mets le masque et le tuba et j'essaye...de descendre dans les profondeurs du php je vous tiens au courant.
Si je ne remonte pas à la surface, vous pouvez me considérer comme perdu comme disait Archimède: tout corps plongé dans un liquide est considéré comme perdu s'il ne ressort pas au bout d'un certain temps.
Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008

A la limite si vous avez besoin du script include dites moi comment vous le faire parvenir.Si je peux éviter la noyade, en apnée... je ne connais rien au php.
Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008
>
Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008

Je suis toujours en panne...
Si quelqu'un peut m'aider...
Merci
>
Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008

peut être une autre approche du problème

tu dis que le programme limite les upload à 1 Mo moi je trouve ça correct.
j'ai écris une galerie de photos en php, et la taille confortable des photos est de 600ko, c'est largement suffisant niveau qualité.

alors mon conseil, change la taille de tes photos et abaisse là à 500 Ko 1Mo
Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008
> dePassage
Bonjour dePassage,

Tu n'as pas tout à fait tort dans tes propos.
Le problème c'est que dans la famille il n'y en a pour ainsi dire aucun qui soit capable de réduire le poids des photos.
Donc c'est bibi qui va le faire...
Alors tu vas me dire pourquoi ne pas utiliser la messagerie familiale. C'est une solution... Mais avoue que c'est bien plus simple de le prévoir des le départ sur la galerie (de plus en flash HD.)
Avec mon LUMIX j'ai des photos à 2.5Mo, j'imagine le papy...
Merci quand même pour ton post.
@+
>
Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008

et si tu leur faisait une procédure pour réduire le poids des photos ?
avec XnView par exemple, c'est simple...
Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008
> dePassage
oui c'est possible, je vais organiser un stage de formation...
Mais franchement ça risque d'être un peu compliqué
Messages postés
14
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 mai 2008

Bon je crois que je vais laisser tomber...
Merci à ceux qui m'ont répondu.
bon je remonte un peu le topic pour aider si ca intéresse

pas besoin de décoder le fichier pour modifier la taille max de la pièce jointe : il suffit d'ouvrir le fichier "inc/global.inc.php", à la ligne 144 vous trouverez la valeur à modifier (en octets)


quand à moi je chercher à décoder le fichier par contre pour modifier le pied de page, pas pour virer le lien mais pour diminuer la marge inférieure.
D'abord un grand merci mistic 100
je n'espérais plus de réponses...
A la ligne 144 je ne vois pas de valeur.
Par contre à la ligne 78 j'ai ceci:
} else if(!eregi("(.jpg|.gif|.png|.rar|.zip|.pdf|.ppt)$", $fileName)) {

$error_msg = "Erreur dans l'extension de la pièce jointe: \"$fileName\"";

} else if(getimagesize($fileTmpName) == FALSE) {

$error_msg = "Pièce jointe non valide!";

} else if($imgSize[0] > 1024) {

Peut être est ce la valeur de 1024 que je dois passer à 2048 si je veux 2 mo?
Merci à toi et bonnes fêtes.
> deltaforce1
J'ai fais un essai en passant la valeur 1024 à 3072 et cela ne fonctionne pas.
Bien cordialement
ah j'ai un peu condensé le code, ca doit pas etre la bonne ligne
mais voici son contenu
} else if($fileSize > 2097152 || $fileSize == 0){

c'est dans la fonction
upload_VSKF_File