PHPDeobfuscator
1.0.0
이 deobpuscator는 PHP 소스 코드에 적용되는 일반적인 일반적인 난독 화 기술을 역전 시키려고 시도합니다.
PHP-Parser의 도움으로 PHP에서 구현됩니다.
1 + 2 3 으로 대체됩니다.base64_decode 을 안전하게 실행하십시오eval 표현을 deobfuscate$var1 = 10; $var2 = &$var1; $var2 = 20; 20 $var1 결정할 수 있습니다.PHP Deobfuscator는 작곡가를 사용하여 종속성을 관리합니다. 작곡가가 먼저 설치되어 있는지 확인하십시오.
이 프로젝트의 루트에 composer install 실행하여 종속성을 가져 오십시오.
php index.php [-f filename] [-t] [-o]
required arguments:
-f The obfuscated PHP file
optional arguments:
-t Dump the output node tree for debugging
-o Output comments next to each expression with the original code
deobfuscated 출력은 stdout에 인쇄됩니다.
index.php 간단한 텍스트 area를 출력하여 PHP 코드를 붙여 넣습니다. 양식이 제출 될 때 Deobfuscated 코드가 인쇄됩니다
<?php
eval ( base64_decode ( " ZWNobyAnSGVsbG8gV29ybGQnOwo= " )); <?php
eval /* PHPDeobfuscator eval output */ {
echo " Hello World " ;
}; <?
$ f = fopen ( __FILE__ , ' r ' );
$ str = fread ( $ f , 200 );
list (,, $ payload ) = explode ( ' ?> ' , $ str );
eval ( $ payload . '' );
?>
if ($doBadThing) {
evil_payload();
} <?php
$ f = fopen ( " /var/www/html/input.php " , ' r ' );
$ str = " <? n$ f = fopen(__FILE__, 'r'); n$ str = fread( $ f, 200); n list(,, $ payload) = explode('?>', $ str); n eval( $ payload . ''); n ?> n if ( $ doBadThing) { n evil_payload(); n } n" ;
list (, , $ payload ) = array ( 0 => " <? n$ f = fopen(__FILE__, 'r'); n$ str = fread( $ f, 200); n list(,, $ payload) = explode(' " , 1 => " ', $ str); n eval( $ payload . ''); n" , 2 => "n if ( $ doBadThing) { n evil_payload(); n } n" );
eval /* PHPDeobfuscator eval output */ {
if ( $ doBadThing ) {
evil_payload ();
}
};
?>
if ($doBadThing) {
evil_payload();
} <?php
$ x = ' y ' ;
$ $ x = 10 ;
echo $ y * 2 ; <?php
$ x = ' y ' ;
$ y = 10 ;
echo 20 ; <?php
goto label4;
label1:
func4 ();
exit ;
label2:
func3 ();
goto label1;
label3:
func2 ();
goto label2;
label4:
func1 ();
goto label3; <?php
func1 ();
func2 ();
func3 ();
func4 ();
exit ;