<font style="color:rgb(199, 37, 78);background-color:rgb(249, 242, 244);">curl_init()</font>
:初始curl会话<font style="color:rgb(199, 37, 78);background-color:rgb(249, 242, 244);">curl_setopt()</font>
:会话设置<font style="color:rgb(199, 37, 78);background-color:rgb(249, 242, 244);">curl_exec()</font>
:执行curl会话,获取内容<font style="color:rgb(199, 37, 78);background-color:rgb(249, 242, 244);">curl_close()</font>
:会话关闭
<?php
// 关闭所有错误报告(不显示任何PHP错误)
error_reporting(0);// 高亮显示当前文件的源代码(通常用于调试/演示)
highlight_file(__FILE__);// 从POST请求中获取名为'url'的参数值
$url = $_POST['url'];// 初始化一个CURL会话,指向用户提供的URL
$ch = curl_init($url);// 设置CURL选项:不包含HTTP头部在输出中
curl_setopt($ch, CURLOPT_HEADER, 0);// 设置CURL选项:将传输结果作为字符串返回而不是直接输出
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);// 执行CURL请求并将结果存储在$result变量中
$result = curl_exec($ch);// 关闭CURL资源
curl_close($ch);// 输出请求结果
echo ($result);
?>
这里面比较关键的还是curl_exec函数,用于执行url请求,看到这里我们就可以考虑利用file协议读取目录敏感文件了,只是不知道flag在什么目录下面,可以先看下/etc/passwd
貌似没有什么有用的线索, 想了想要不要试一下当前目录
果然还是什么都没有吗,要不要看看页面源码
果然藏在页面源码里面,有个if语句还检查了是不是来自本机的ip,说明http://127.0.0.1/flag.php
说不定也可以