【攻防世界】web2(逆向解密)

简介: 【攻防世界】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
*/
?>

审计代码,代码中提示对 变量$miwen 进行逆向解密获取 flag:

str_rot13() 函数是 PHP 中的一个字符串处理函数,用于对字符串进行 ROT13 编码或解码。ROT13 是一种简单的字符替换加密技术,它将字母表中的每个字母替换成字母表中它后面第 13 个字母,并且保留字母的大小写不变。

遂根据源码逆向编写脚本:

<?php 
    function decode($str) {
        $result = "";
        $str = str_rot13($str);
        $str = strrev($str);
        $str = base64_decode($str);
        
        for($i = 0; $i < strlen($str); $i++) {
            $part = substr($str, $i, 1);
            $trans = ord($part) - 1;
            $part = chr($trans);
            $result = $result.$part;
        }
        return strrev($result);
    }
    $miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";
    echo decode($miwen);
?>

运行脚本:

成功获取 flag 值。

相关文章
|
5月前
|
SQL 监控 安全
Java Web应用的安全防护与攻防策略
Java Web应用的安全防护与攻防策略
|
7月前
攻防世界12-baby_web
攻防世界12-baby_web
攻防世界---baby_web
攻防世界---baby_web
|
7月前
|
数据安全/隐私保护
攻防世界web-----easyupload
攻防世界web-----easyupload
|
7月前
|
Go PHP
攻防世界web---fileinclude
攻防世界web---fileinclude
|
4月前
|
存储 PHP 数据安全/隐私保护
攻防世界 Web_php_unserialize
攻防世界 Web_php_unserialize
60 0
|
5月前
|
SQL 安全 Java
Java Web应用的安全防护与攻防深度剖析
Java Web应用的安全防护与攻防深度剖析
|
5月前
|
SQL 监控 安全
Java Web应用的安全防护与攻防策略
Java Web应用的安全防护与攻防策略
攻防世界---web---warmup
攻防世界---web---warmup
攻防世界---web---warmup
|
7月前
|
数据库
攻防世界---web---NewsCenter
攻防世界---web---NewsCenter