杰尼龟系统


蛮简单的,我还以为还要更难一点
一点过滤没有

好吧还是有点的
根目录下的是假的
Signed_Too_Weak

登录之后告诉我们是普通用户


可以发现这题考的是jwt
我们改一下令牌


应该是要密钥
jwt_tool进行爆破
python jwt_tool.py eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwiaWF0IjoxNzc1MDA5ODkyLCJleHAiOjE3NzUwMTM0OTJ9.k_ie_pwN7oud99bERRMgmty87Vfz8lrswlMg23mkZMY -C -d "你的jwt_tool路径"


成功获取flag
static

<?php
highlight_file(__FILE__);
error_reporting(E_ALL);
function hard_filter(&$file) {
$ban_extend = array("php://", "zip://", "data://", "%2f", "%00", "\\");
#PHP 伪协议(如 php://filter 编码读取文件)或截断字符(%00)
#同时也屏蔽了反斜杠 \ 和 URL 编码的斜杠 %2f
foreach ($ban_extend as $ban) {
if (stristr($file, $ban)) {
return false;
}
}
$ban_keywords = array("eval", "system", "exec", "passthru", "shell_exec", "assert", "../");
foreach ($ban_keywords as $keyword) {
if (stristr($file, $keyword)) {
$count = 0;
$file = str_replace($keyword, "", $file, $count);
#常见的"黑名单过滤且替换为空"
#由于有 break,该循环只会处理它遇到的第一个匹配到的关键词
#输入 ....//,当中间的 ../ 被替换为空后,剩下的部分会重新组合成 ../
break;
}
}
$file = rtrim($file, '/');
if (strpos($file, "static/") !== 0) {
return false;
}
#所有输入必须从 static/ 目录开始
return true;
}
$file = $_GET['file'] ?? '';
if (!hard_filter($file)) {
die("Illegal request!");
}
$real_file = $file . ".php";
$real_path = realpath($real_file) ?: $real_file;
echo "<br>=== 调试信息 ===<br>";
echo "1. 原始输入: " . htmlspecialchars($_GET['file'] ?? '') . "<br>";
echo "2. 过滤后file: " . htmlspecialchars($file) . "<br>";
echo "3. 拼接后的路径: " . htmlspecialchars($real_file) . "<br>";
echo "4. 真实解析路径: " . htmlspecialchars($real_path) . "<br>";
echo "5. 文件是否存在: " . (file_exists($real_path) ? "是" : "否") . "<br>";
if (file_exists($real_path)) {
echo "6. 正在包含文件...<br>";
ob_start();
include($real_path);
$content = ob_get_clean();
echo "7. 文件内容: " . htmlspecialchars($content) . "<br>";
} else {
echo "6. 错误:文件不存在!<br>";
}
?>
PHP 文件包含漏洞

Pandora Box


上传一个zip文件为jpg后缀

可以看到已经成功为php文件

成功执行


成功获取flag
云中来信

这个页面我们可以看到这是一个ssrf请求伪造漏洞

测试回环地址

查看源码发现有源码泄露
但是没什么用
我们根据题目名和漏洞推测
https://blog.csdn.net/weixin_39190897/article/details/136049642
SSRF漏洞给云服务元数据带来的安全威胁,正好对应了我们的推测
发起对目标地址/latest/meta-data的请求,如果能够请求成功,则认定可以发起攻击。
这个请求成功,包括状态码5XX,都认为请求成功。

需要有效的元数据令牌。请先访问 /latest/api/token 获取token,并在请求头 X-IMDS-Token 中携带。
我们来进行访问

进行替换


再次进行访问,得到一个路径进行访问

成功获取flag