「配枪朱丽叶。」

RootのCTF学习笔记。

NSCTF-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
*/
?> 

这道题遇见了三遍了。。逆向写出代码

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

运行后得到flag:{NSCTF_b73d5adfb819c64603d7237fa0d52977}