descifrado de archivos php
$OO0OO0000=$OOO000000{17}.$ooo000000{12}.$OOO000000 { 18}.$OOO000000{5}.$OOO000000{19};if(!0)$OO000O0O00=$OOOO0000($OOO0O0O00,'rb');$OO0OO000O=$OOOO000000{17}.$OOO000000{20}. $OOO000000{5}.$OOO000000{9}.$OOO000000{16};$OO0OO00O0=$OOOO000000{14}.$OOO000000{0}.$OOO000000{20}.$OOO000000{0}.$OOO000000{20} ; $OO0OO000O($OO000O0O00,1253);$OO0000O0=($OO0000O0($OO0OO00O0($OOOO000O($OO000O0O00,380),'3MUQw4rlCWsbe+ DthpLui5VnAfOSB9N6/dja2XRgFKxGq0yEYZ HJcmzvIP1oTk87=',ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'));eval($OO00O00O0); p>
Reemplace la declaración eval en el archivo fuente con esta declaración. El efecto después del reemplazo es el siguiente:
Copyright(C) 2009 www.i7a.cn, Todos los derechos reservados.
$OOOO0O0O00=__FILE__;$OOO000000=urldecode('%74%68%36%73%62%65%68%71% 6c%61%34%') 63%6f%5f%73%61%64%66%70%6e%72');$OOO00O0000=9504;$OOO0000O0=$OOO000000{4}.$OOO000000{9}. $OOO000000{3}.$OOO000000{5};$OOO0000O0.=$OOO000000{2}.$ooo000000{10}.$ooo000000{13}.$OOO000000{16};$OOO0000O0.=$OOO0000O0{3}. $ooo000000{11}.$OOO000000{12}.$OOO0000O0{7}.$OOO000000{5};$O0O0000O0='OOO0000O0';$OO0OO0000=$OOO000000{17}.$ooo000000{12}.$OOO000000 {18 }.$OOO000000{5}.$OOO000000{19};if(!0)$OO000O0O00=$OOOO0000($OOO0O0O00,'rb');$OO0OO000O=$OOO000000{17}.$OOO000000{20}.$OOO000000 $ OO0OO000O($OO000O0O00,1253);$OO0000O0=($OOO0000O0($OO0OO00O0($OOOO000O($OO000O0O00,380),'3MUQw4rlCWsbe+ DthpLui5VnAfOSB9N6/dja2XRgFKxGq0yEYZ H JcmzvIP1oTk87=',ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'));salir($OO00O00O0);regresar ;?
Lo anterior es el principio de descifrado de PHP, pero este archivo ya no se puede descifrar automáticamente aquí porque el archivo original se destruye. Podemos mirar variables como $OO0OO00O0 en echo y encontrar el. declaración actual De hecho, el contenido al final del archivo se lee, se reemplaza y luego se vuelve a ejecutar. Ahora es necesario ajustar los 380 bytes internos a la posición correcta después de 380 bytes del archivo original.