NewStarCTF2025-Week3-Web MyGO!!!

题目提示我们把flag下载下来
先看看代码,是文件读取漏洞,运用file伪协议绕过
file:// —— 读取本地文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| <?php $client_ip = $_SERVER['REMOTE_ADDR'];
// 只允许本地访问 if ($client_ip !== '127.0.0.1' && $client_ip !== '::1') { header('HTTP/1.1 403 Forbidden'); echo "你是外地人,我只要\"本地\"人"; exit; }
highlight_file(__FILE__); if (isset($_GET['soyorin'])) { $url = $_GET['soyorin'];
echo "flag在根目录"; // 普通请求 $ch = curl_init($url); //curl_init($url) 本身只是一个“去访问某个网址”的工具,但它支持多种协议(不仅仅是 http) curl_setopt($ch, CURLOPT_RETURNTRANSFER, false); // 直接输出给浏览器 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_BUFFERSIZE, 8192); curl_exec($ch); curl_close($ch); exit; }
?> flag在根目录
|
构造:
