DESOFUSCAR CODIGO PHP

Iniciado por R41N-W4R3, 18 Julio 2007, 11:54 AM

0 Miembros y 1 Visitante están viendo este tema.

R41N-W4R3



   Hola a todos, antes de nada pongo aqui la pregunta pq no tenia muy claro donde ponerla.....

   Mi problema es el siguiente:

     Tengo codigo php ofuscado mediante codificacion a base64 y comprimido con gzdeflate......  el caso es que quiero ver ese codigo php, y en la pagina aparece lo siguiente:

  <? eval(gzinflate(base64_decode'ZtGAAC/klNsQ4DZG+zYqxXgKWJcX......

  Ahi podemos ver como en primer lugar decodifica el base64 y al resultado lo descomprime con el gzinflate.   El caso es que para verlo, en teoria si pongo simplemete un echo, o uso un textarea deberia verse, osea:
 
<? echo eval(gzinflate(base64_decode'ZtGAAC/klNsQ4DZG+zYqxXgKWJcX...........

o

<textarea><? eval(gzinflate(base64_decode'ZtGAAC/klNsQ4DZG+zYqxXgKWJcX...........</textarea>




  El caso es que no me va y en el mejor de los casos sale error en eval(0),eval(1)......

   Lo estoy haciendo usando xamp para el php. Y he comprobado que esta la extension php_zip      ..........  a ver si alguien me puede ayudar.

   Gracias de antemano

Azielito

encontre este codigo ñ_ñ

Código (php) [Seleccionar]
<?php
/*
Taken from http://www.php.net/manual/de/function.eval.php#59862
Directions:
1. Save this snippet as decrypt.php
2. Save encoded PHP code in coded.txt
3. Create a blank file called decoded.txt (from shell do CHMOD 0666 decoded.txt)
4. Execute this script (visit decrypt.php in a web browser or do php decrypt.php in the shell)
5. Open decoded.txt, the PHP should be decrypted if not post the code on http://www.ariadoss.com/forums/web-development/lamp
*/
echo "\nDECODE nested eval(gzinflate()) by DEBO Jurgen <jurgen@person.be>\n\n";
echo 
"1. Reading coded.txt\n";
$fp1 fopen ("coded.txt""r");
$contents fread ($fp1filesize ("coded.txt"));
fclose($fp1);
echo 
"2. Decoding\n";
while (
preg_match("/eval\(gzinflate/",$contents)) {
  
$contents=preg_replace("/<\?|\?>
/", "", $contents); eval(preg_replace("/eval/", "\$contents=", $contents)); } echo "3. Writing decoded.txt\n"; $fp2 = fopen("decoded.txt","w"); fwrite($fp2, trim($contents)); fclose($fp2);
?>


Espero que te sirva ñ_ñ

R41N-W4R3



  Gracias por la ayuda pero me copia el contenido en otro archivo exactamente igual jejejejejje  no hay manera  :rolleyes:   voy a revisar el codigo...


   Gracias!!!!   



   pd: en warzone se te echa de menos........    ;D

R41N-W4R3



  Despues de trastearlo un rato... he visto que lo copiaba en el archivo de salida pq no entraba dentro del bucle q lo decodifica.....  despues de trastearlo un poco y dejarlo asi:

 

<?php

echo "\nDECODE nested eval(gzinflate()) by DEBO Jurgen <jurgen@person.be>\n\n";
echo 
"1. Reading coded.txt\n";
$fp1 fopen ("coded.txt""r");
$contents fread ($fp1filesize ("coded.txt"));
fclose($fp1);
echo 
"2. Decoding\n";

while (
preg_match("/eval\(gzinflate/",$contents)==0) {  

  
$contents=preg_replace("/<\?|\?>
/", "", $contents);
  eval(preg_replace("/eval/", "\$contents=", $contents));
echo "DENTRO DEL BUCLEEEEEEEEEEE";
}

echo "3. Writing decoded.txt\n";
$fp2 = fopen("decoded.txt","w");
fwrite($fp2, trim($contents));
fclose($fp2);

?>



  lo q me saca por pantalla es 

DECODE nested eval(gzinflate()) by DEBO Jurgen 1. Reading coded.txt 2. Decoding
Parse error: parse error, unexpected T_STRING in C:\Archivos de programa\xampp\htdocs\decrypt.php(12) : eval()'d code on line 1
DENTRO DEL BUCLEEEEEEEEEEE
Parse error: parse error, unexpected T_STRING in C:\Archivos de programa\xampp\htdocs\decrypt.php(12) : eval()'d code on line 1
DENTRO DEL BUCLEEEEEEEEEEE
Parse error: parse error, unexpected T_STRING in C:\Archivos de programa\xampp\htdocs\decrypt.php(12) : eval()'d code on line 1
DENTRO DEL BUCLEEEEEEEEEEE
Parse error: parse error, unexpected T_STRING in C:\Archivos de programa\xampp\htdocs\decrypt.php(12) : eval()'d code on line 1
DENTRO DEL BUCLEEEEEEEEEEE
Parse error: parse error, unexpected T_STRING in C:\Archivos de programa\xampp\htdocs\decrypt.php(12) : eval()'d code on line 1
DENTRO DEL BUCLEEEEEEEEEEE
Parse error: parse error, unexpected T_STRING in C:\Archivos de programa\xampp\htdocs\decrypt.php(12) : eval()'d code on line 1
DENTRO DEL BUCLEEEEEEEEEEE
Parse error: parse error, unexpected T_STRING in C:\Archivos de programa\xampp\htdocs\decrypt.php(12) : eval()'d code on line 1
DENTRO DEL BUCLEEEEEEEEEEE



  TOTAL QUE NO SE QUE PASA.... A VER SI ALGUNO SABE ESE ERROR DE DONDE VIENE.

  Gracias a todos como siempre.......   


 

Ertai

 <? echo gzinflate(base64_decode'ZtGAAC/klNsQ4DZG+zYqxXgKWJcX...........

Prueba esto.
Si la felicidad se comprara, entonces el dinero sería noble.


void rotar_by_ref(int& a, int& b) {
   /* Quien dijo que no se podia sin una variable temporal? */
   *a = *a ^ *b;
   *b = *a ^ *b;
   *a = *a ^ *b;
}

R41N-W4R3



  Eso es lo primero que probe... :(  lo puse arriba en el primer post.... tambien lo de textarea.....  y ya he probado con un par de codigos en php que supuestamente deberian hacerlo..... 

  Gracias po la ayuda

   Alguien mas se le ocurre algo??????????

vicmarcal

Hiciste todos los pasos previos???

Citar
1. Save this snippet as decrypt.php
2. Save encoded PHP code in coded.txt
3. Create a blank file called decoded.txt (from shell do CHMOD 0666 decoded.txt)4. Execute this script (visit decrypt.php in a web browser or do php decrypt.php in the shell)
5. Open decoded.txt, the PHP should be decrypted if not post the code on http://www.ariadoss.com/forums/web-development/lamp*/

Le cambiaste tb las propiedades a decoded.txt???

R41N-W4R3



Si todo eso esta comprobado. Es mas...  como lo unico q me hacia era copiarme el contenido de un fichero a otro, me di cuenta que el programa no entraba en el bucle, asi que modificue el while para ver si entraba... al modificarlo consigo q entre pero falla el eval....  ahi arriba puse en un mensaje anterior el resultado....


   Gracias y a ver si alguno me puede ayudar.



   pd: no es para ver el codigo fuente de nadie.... estoy pasando una prueba del warzone y lo necesito......  y ya estoy un poco desesperado pq no hay mas maneras de hacerlo que las que he puesto.....   :(    y solo sera la primera parte dela prueba jejejeje

Ertai

Cita de: R41N-W4R3 en 19 Julio 2007, 09:07 AM


  Eso es lo primero que probe... :(  lo puse arriba en el primer post.... tambien lo de textarea.....  y ya he probado con un par de codigos en php que supuestamente deberian hacerlo..... 

  Gracias po la ayuda

   Alguien mas se le ocurre algo??????????

Lo que te dije yo, no esta puesto en tu primer post. Leete mejor las cosas.
Si la felicidad se comprara, entonces el dinero sería noble.


void rotar_by_ref(int& a, int& b) {
   /* Quien dijo que no se podia sin una variable temporal? */
   *a = *a ^ *b;
   *b = *a ^ *b;
   *a = *a ^ *b;
}

R41N-W4R3



Tenias razon.. no lo habia leido bien......

Tras hacerlo coo me indicas me dice :


  Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\Archivos de programa\xampp\htdocs\p.php on line 21


  da ese error en la ultima linea q es la 21.....

   esto es lo que he probado (pongo el inicio y el final):

<? echo gzinflate(base64_decode'JZRHDttGAAC/klNs...............................................
...
..................................................CoIYjMmKJCd/+fLt2/ffvz1+9f3/2f68/d/'); ?>



   Gracias por la ayuda... sabes q puede estar pasando??