攻防世界-web进阶-web2

简单审计一下源码

 

<?php
$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";

function encode($str){	
    $_o=strrev($str);  //反转字符串
    // echo $_o;
        
    for($_0=0;$_0<strlen($_o);$_0++){  //循环字符串长度
       
        $_c=substr($_o,$_0,1);  //从$_0位置开始,返回1个字符

        $__=ord($_c)+1;  //返回字符串首个字母的ASCII值

        $_c=chr($__);  //返回指定进制的ASCII值

        $_=$_.$_c;   //拼接两个变量的内容 赋值
    } 
    return str_rot13(strrev(base64_encode($_)));  //返回  ROT13 编码/解码(反转字符串(base64加密($_)))  的结果
}

highlight_file(__FILE__);  //返回高亮代码
/*
   逆向加密算法,解密$miwen就是flag
*/
?>  

  

逆向这个加密算法

把给出的字符串逆向解密就能得到flag

<?php
$str='a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws';
$_ = base64_decode(strrev(str_rot13($str)));

$_o=NULL;
for($_0=0;$_0<strlen($_);$_0++){  
       
        $_c=substr($_,$_0,1);  

        $__=ord($_c)-1;  

        $_c=chr($__);  

        $_o=$_o.$_c;   
    } 


echo strrev($_o);

?>

  

 

 

flag:{NSCTF_b73d5adfb819c64603d7237fa0d52977}
posted @ 2020-10-23 23:30  夜布多  阅读(474)  评论(0编辑  收藏  举报