Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php /* * PHP LockIt! unlocker * by Daniel Rozsnyo [ daniel@rozsnyo.com ] * * "a pro..
Decoded Output download
<?php
/*
* PHP LockIt! unlocker
* by Daniel Rozsnyo [ daniel@rozsnyo.com ]
*
* "a proof that security throught obscurity doesn't work"
*
*/
/// buraya dosyanin adini yazin
$argv[1]="ifre.php";
$input = file_get_contents( $filename = $argv[1] );
if (ereg( "[$]([^=]+)=[_][_]FILE[_][_][;]"
. "[$]([^=]+)=[_][_]LINE[_][_][;]"
. "[$]([^=]+)[=]([0-9]+)[;]"
. "eval.*(base64_decode.['][^']*['].)", $input, $x)) {
// first pass
$ifilename = $x[1];
$ilinenum = $x[2];
$ioffset = $x[3];
$offset = $x[4];
$decoder = $x[5];
// get the decoder
$decoder = eval("return $decoder;");
// decipher the decoder
ereg("[$]([^=]+)[=].*[$]([^=]+)=.base64",$decoder,$x);
$ihandle = $x[1];
$iout = $x[2];
$decoder = str_replace($iout ,'output' ,$decoder);
$decoder = str_replace($ihandle ,'handle' ,$decoder);
$decoder = str_replace($ilinenum ,'line' ,$decoder);
$decoder = str_replace($ifilename,'filename',$decoder);
// the decoder is our slave!
$decoder = str_replace('eval($output);','return $output;',$decoder);
$decoder = '$line=2;'.$decoder;
// sandbox
$next = eval($decoder);
// remove expiration time
$next = ereg_replace("^if[^;]+;",'',$next);
// some more deciphering
ereg('^[$]([^=]+)=',$next,$x);
$next = str_replace($ihandle, 'handle', $next);
$next = str_replace($ifilename,'filename',$next);
$next = str_replace($x[1] , 'output', $next);
$next = str_replace($ioffset, 'offset', $next);
// the decoder is our slave, again!
$next = str_replace('eval($output)','return $output',$next);
// final pass
$code = eval($next);
// finish
echo '<','?php',$code,'?','>',"n";
} else die("Failed. No base64_decode anymore.n");
?>=
Did this file decode correctly?
Original Code
<?php
/*
* PHP LockIt! unlocker
* by Daniel Rozsnyo [ daniel@rozsnyo.com ]
*
* "a proof that security throught obscurity doesn't work"
*
*/
/// buraya dosyanin adini yazin
$argv[1]="ifre.php";
$input = file_get_contents( $filename = $argv[1] );
if (ereg( "[$]([^=]+)=[_][_]FILE[_][_][;]"
. "[$]([^=]+)=[_][_]LINE[_][_][;]"
. "[$]([^=]+)[=]([0-9]+)[;]"
. "eval.*(base64_decode.['][^']*['].)", $input, $x)) {
// first pass
$ifilename = $x[1];
$ilinenum = $x[2];
$ioffset = $x[3];
$offset = $x[4];
$decoder = $x[5];
// get the decoder
$decoder = eval("return $decoder;");
// decipher the decoder
ereg("[$]([^=]+)[=].*[$]([^=]+)=.base64",$decoder,$x);
$ihandle = $x[1];
$iout = $x[2];
$decoder = str_replace($iout ,'output' ,$decoder);
$decoder = str_replace($ihandle ,'handle' ,$decoder);
$decoder = str_replace($ilinenum ,'line' ,$decoder);
$decoder = str_replace($ifilename,'filename',$decoder);
// the decoder is our slave!
$decoder = str_replace('eval($output);','return $output;',$decoder);
$decoder = '$line=2;'.$decoder;
// sandbox
$next = eval($decoder);
// remove expiration time
$next = ereg_replace("^if[^;]+;",'',$next);
// some more deciphering
ereg('^[$]([^=]+)=',$next,$x);
$next = str_replace($ihandle, 'handle', $next);
$next = str_replace($ifilename,'filename',$next);
$next = str_replace($x[1] , 'output', $next);
$next = str_replace($ioffset, 'offset', $next);
// the decoder is our slave, again!
$next = str_replace('eval($output)','return $output',$next);
// final pass
$code = eval($next);
// finish
echo '<','?php',$code,'?','>',"n";
} else die("Failed. No base64_decode anymore.n");
?>=
Function Calls
ereg | 1 |
file_get_contents | 1 |
Stats
MD5 | 699f9f578eac442b6de56a3b99fbac93 |
Eval Count | 0 |
Decode Time | 118 ms |