网站自助建站软件可以免费做中考题的网站
news/
2025/9/26 13:11:16/
文章来源:
网站自助建站软件,可以免费做中考题的网站,江门seo代理商,网站建设中 请稍后访问进入题目页面如下 提示flag在flag.php
ctrlu#xff0c;查看源码 给出了一段PHP代码#xff0c;进行代码审计
?php
// 检查是否开启了错误显示功能
if( !ini_get(display_errors) ) {// 如果没有开启#xff0c;则将错误显示功能设置为开启状态ini_set(display_error…进入题目页面如下 提示flag在flag.php
ctrlu查看源码 给出了一段PHP代码进行代码审计
?php
// 检查是否开启了错误显示功能
if( !ini_get(display_errors) ) {// 如果没有开启则将错误显示功能设置为开启状态ini_set(display_errors, On);
}// 设置错误报告级别为显示所有类型的错误
error_reporting(E_ALL);// 从客户端的 Cookie 中获取名为 language 的值并赋值给变量 $lan
$lan $_COOKIE[language];// 检查 $lan 是否为空
if(!$lan) {// 如果为空设置一个名为 language 的 Cookie值为 englishsetcookie(language,english);// 包含名为 english.php 的文件include(english.php);
} else {// 如果不为空将 $lan 的值加上 .php 后缀后包含对应的文件include($lan..php);
}// 读取当前文件 index.php 的内容并将其赋值给变量 $x
$x file_get_contents(index.php);// 输出变量 $x 的内容即显示当前文件的源代码
echo $x;
文件包含漏洞
代码中使用 include 函数包含文件而 $lan 变量的值直接取自用户的 Cookie。可以通过修改 Cookie 中的 language 值来包含任意文件从而导致文件包含漏洞。
代码没有对 $lan 变量的值进行任何验证和过滤可以构造特殊的文件名来绕过正常的文件包含逻辑执行恶意代码或获取敏感信息。 构造恶意 Cookie
修改 Cookie 中的 language 值为 flag。当请求该页面时服务器会尝试包含 flag.php 文件从而将 flag 的内容输出到页面上 Cookie: languagephp://filter/readconvert.base64-encode/resourceflag 利用 PHP 伪协议来绕过常规的文件包含限制并获取敏感文件 使用 php://filter 伪协议对文件内容进行 Base64 编码后输出避免因文件内容格式问题如二进制文件导致显示异常同时绕过部分简单的过滤机制。
readconvert.base64-encode
是 php://filter 伪协议的一个过滤器指定了读取文件内容时要进行的操作。convert.base64-encode 表示将文件内容进行 Base64 编码文件内容就会以 Base64 字符串的形式输出方便在网页上显示和后续解码。
resource 是 php://filter 伪协议中用于指定要操作的文件资源的参数
用burp suite抓包修改cookie 得到base64编码的flag可以利用下面这个在线工具解码
Base64解码 Base64编码 UTF8 GB2312 UTF16 GBK 二进制 十六进制 解密 - The X 在线工具 最终得到flag
cyberpeace{94027b50fe68bcb6ff13855e5cb60024}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/916830.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!