欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > 115,【7】 攻防世界 web fileinclude

115,【7】 攻防世界 web fileinclude

2025/2/7 17:53:57 来源:https://blog.csdn.net/2402_87039650/article/details/145481651  浏览:    关键词:115,【7】 攻防世界 web fileinclude

进入靶场

试着访问了几个文件,都没得到信息,f12看看源码

 

 

还真有

<?php
// 检查是否开启了错误显示功能
// ini_get 函数用于获取 PHP 配置选项的值,这里检查 'display_errors' 选项是否开启
if( !ini_get('display_errors') ) {// 如果错误显示功能未开启,则使用 ini_set 函数将其开启// 'On' 表示开启错误显示,这样在代码执行过程中出现的错误会直接显示出来,方便调试ini_set('display_errors', 'On');
}// 设置错误报告级别为 E_ALL
// E_ALL 表示报告所有的错误和警告信息,这样可以捕获到代码中可能存在的各种问题
error_reporting(E_ALL);// 从客户端的 Cookie 中获取名为 'language' 的值,并赋值给变量 $lan
$lan = $_COOKIE['language'];// 检查 $lan 是否为空
if(!$lan)
{// 如果 $lan 为空,说明客户端没有设置 'language' 这个 Cookie// 使用 setcookie 函数设置一个名为 'language' 的 Cookie,值为 'english'// @ 符号用于抑制可能出现的错误信息@setcookie("language","english");// 包含并执行当前目录下的 'english.php' 文件// 这样可以加载英文语言相关的内容或逻辑@include("english.php");
}
else
{// 如果 $lan 不为空,说明客户端已经设置了 'language' 这个 Cookie// 动态包含并执行以 $lan 的值加上 '.php' 扩展名的文件// 例如,如果 $lan 的值为 'chinese',则会包含 'chinese.php' 文件@include($lan.".php");
}// 使用 file_get_contents 函数读取当前目录下 'index.php' 文件的内容,并赋值给变量 $x
// 该函数会将文件的内容作为一个字符串返回
$x = file_get_contents('index.php');// 输出变量 $x 的值,即 'index.php' 文件的内容
echo $x;
?>

       得知传参的名字为language,而且是在cookie处传,还会在传的值后面直接加上.php

再加上题目名称暗示了文件上传

传个最常见的上去,而且只写文件名就行

php://filter/read=convert.base64-encode/resource=flag

f12修改cookie并传参

顺利得到base64编码后的flag

解码

 

flag到手

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com