bugku-web-decrypt

这里的提示解密后没有什么意义

这里下载文件包

得到一个index.php文件

得到代码

复制代码
<?php
function encrypt($data,$key)
{
    $key = md5('ISCC');
    $x = 0;
    $len = strlen($data);
    $klen = strlen($key);
    for ($i=0; $i < $len; $i++) { 
        if ($x == $klen)
        {
            $x = 0;
        }
        $char .= $key[$x];
        $x+=1;
    }
    for ($i=0; $i < $len; $i++) {
        $str .= chr((ord($data[$i]) + ord($char[$i])) % 128);
    }
    return base64_encode($str);
}
?>

这里可以看到缺少data值和str值

因为提示中有一个base64的加密代码,猜测最终return输出为这个代码

复制代码
base64_encode($str)='fR4aHWwuFCYYVydFRxMqHhhCKBseH1dbFygrRxIWJ1UYFhotFjA='

猜测反推data的值,data为最终flag

编写逆向exp

复制代码
<?php
$key = md5('ISCC');
$data_encoded = 'fR4aHWwuFCYYVydFRxMqHhhCKBseH1dbFygrRxIWJ1UYFhotFjA=';
$str = base64_decode($data_encoded);

$x = 0;
$klen = strlen($key);
$len = strlen($str);
$char = '';

// 生成密钥序列
for ($i = 0; $i < $len; $i++) { 
    if ($x == $klen) {
        $x = 0;
    }
    $char .= $key[$x];
    $x += 1;
}

// 逆向解密
$result = '';
for ($i = 0; $i < $len; $i++) {
    $result .= chr((ord($str[$i]) - ord($char[$i]) + 128) % 128);
}

echo $result;
?>

得到最终结果

相关推荐
AlienZHOU8 小时前
AI Coding 时代下,我的技术面试实践分享
前端·后端·面试
Captaincc11 小时前
AI用量v0.1.11更新发布 新增 jusage doctor 诊断指令 托盘展示token 和余额 新增 AutoClaw 支持
前端·后端·vibecoding
计算机魔术师12 小时前
德国Wiki被黑后两周,OpenAI终于把模型失控的账本摊开了
前端
kyriewen13 小时前
我让 AI 当面试官面了我一轮:第 3 个追问我就卡住了(附 10 道追问清单)
前端·面试·ai编程
IT_陈寒13 小时前
Python的GIL把我坑惨了,多线程跑得比单线程还慢
前端·人工智能·后端
前端snow13 小时前
ai agent --- 多agent框架之图编排引擎-langgraph
前端
竹林81813 小时前
OmniPic Studio v3.2.1 核心技术架构与全平台发版解析文档
前端·浏览器
JamesZhang8007813 小时前
页面内存只涨不跌? 一次泄漏排查, 牵出 WeakMap 的诞生
前端
Z小明13 小时前
第 6 章 组件进阶
前端·vue.js