看到提示和地址栏 很明显了吧 伪协议
base64解码可得- [/code][img]https://img2023.cnblogs.com/blog/3180821/202305/3180821-20230517202015966-811205065.png[/img]
- [code] <?php
- ini_set("max_execution_time", "180");
- show_source(__FILE__);
- include('flag.php');
- $a= $_GET["a"];
- if(isset($a)&&(file_get_contents($a,'r')) === 'I want flag'){
- echo "success\n";
- echo $flag;
- }
- ?>
- //学习一个新函数
- //file_get_contents() 是一个 PHP 内置函数,它的作用是读取文件的内容并返回一个字符串。它的第一个参数是文件名,第二个参数是一个可选的打开模式,用于指定文件的读取方式。'r' 模式表示以只读方式打开文件。
复制代码 此题有俩种解法
- php://input 此方法需要前提条件,即开启allow_url_include=On。
相当于一个远程包含的利用,php://打开文件流后,直接写入恶意代码。
- data://text/plain,
data://本身是数据流封装器,他们原理类似,input是POST,而data是GET
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |