0x01 阅读须知
鸡哥安全的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他!!!
0x02 函数说明
1.extract函数
默认为EXTR_OVERWRITE,将通过GET传过来的数组转为一个名为数组名,值为数组值的变量(如果新的变量和已有变量重名,会将已有变量替换)
2.file_get_contents函数
将文件或者域名内容读取
0x03 extract CTF题解析
1.创建一个extract.php和flag.php文件,flag.php文件任意,当传入payload:?shiyan=1&content=1得到flag内容解析如下:
<?php
include "flag.php";//包含flag.php
$content=trim(file_get_contents('flag.php'));//设置$content为flag.php里的内容
extract($_GET);//传入?shiyan=1&content=1,$shiyan=1 $content=1,覆盖了原来$content flag.php里的内容
if(isset($shiyan))//如果$shiyan存在,往下执行
{
if($shiyan==$content)//如果$shiyan==$content,此时$shiyan=1 $content=1相等
{
echo "ctf{'$flag'}";//所以输出ctf{'$flag'}
}
else
{
echo 'Oh.no';//不相等输出Oh.no
}
}
?>
1个1朵5毛钱
天天搬砖的小M
能不能吃顿好的
就看你们的啦
原文始发于微信公众号(鲲哥的Bypass之旅):奇淫巧计 extract函数 变量覆盖
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论