攻防世界-web2

 

<?php
$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";

function encode($str){
    $_o=strrev($str);
    // echo $_o;
        
    for($_0=0;$_0<strlen($_o);$_0++){
       
        $_c=substr($_o,$_0,1);
        $__=ord($_c)+1;
        $_c=chr($__);
        $_=$_.$_c;   
    } 
    return str_rot13(strrev(base64_encode($_)));
}

highlight_file(__FILE__);
/*
   逆向加密算法,解密$miwen就是flag
*/
?> 

 分析下来其实就是知道加密后的结果:a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws

要求未加密的数据(直接一步步解不好出结果,base64解密结果好像不好输出,直接写代码一步到位)

strrev():反转字符串

substr():返回字符串的一部分

ord():返回字符串中第一个字符的 ASCII 值

chr():从指定 ASCII 值返回字符

 

直接按照它的代码反着解

<?php
	$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";
    $a = base64_decode(strrev(str_rot13($miwen)));
	//echo $a;
	$fin="";
	for($_0=0;$_0<strlen($a);$_0++){
       
        $_c=substr($a,$_0,1);
        $__=ord($_c)-1;
        $_c=chr($__);
        $_=$_.$_c;   
    } 
	$str = strrev($_);
	echo $str;
?>

 


版权声明:本文为m0_62094846原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。