攻防世界 WEB 高手进阶区 PHP2 Writeup
2024-10-10 02:09:47
攻防世界 WEB 高手进阶区 PHP2 Writeup
题目介绍
题目考点
- url 二次解码
- index.phps 文件(第一次使用dirsearch可能扫不到,需要加到工具字典里)
- php 简单语法
Writeup
进入题目
研究一番无果,开始拿 dirsearch 扫描目录
依次尝试访问,最后在访问 index.phps 时发现源码泄露
右键查看源码
分析PHP源码 ,不出意外,那个 key 的内容就是 Flag
if("admin"===$_GET[id]) {
echo("<p>not allowed!</p>");
exit();
}
$_GET[id] = urldecode($_GET[id]);
if($_GET[id] == "admin")
{
echo "<p>Access granted!</p>";
echo "<p>Key: xxxxxxx </p>";
}
首先要绕过第一个if,然后在经过一次 urldecode,满足第二个if才能输出 flag
urldecode(%2561)=%61
urldecode(%61)=a
巧妙利用两次url解码,第一次浏览器url解码使第一个if不成立,第二次程序内部url解码刚好满足第二个if条件
构造 url 直接得到 flag
http://220.249.52.134:45849/index.php?id=%61dmin 注意是%2561dmin,前面博客不知原因不显示 25
最新文章
- bootstrap中的Grid system详解
- 显式意图启动一个Activity
- C# .Net中七层架构浅析
- java入门 第一季4
- (转)hadoop 集群间数据迁移
- 在鼠标右键添加“使用WPS打开”
- Linux软件安装管理
- LaLeX数学公式
- Dubbo(3)Dubbo admin管理控制台
- 【转载】Activiti delete process definition by key
- [py]pycharm远程环境添加
- Vue设置页面的title
- 乘风破浪:LeetCode真题_016_3Sum Closest
- Infor SyteLine如何快速锁定用户
- mvc Dapper_Report_Down_ExcelFile
- express.Router创建模块化路由
- UIRecorder安装与使用
- xxx referenced from: xxx in xxx.o
- Python3 try-except、raise和assert解析
- Mac开发必备工具(二)—— iTerm 2
热门文章
- 鸿蒙内核源码分析(内存映射篇) | 虚拟内存虚在哪里 | 百篇博客分析OpenHarmony源码 | v15.03
- P6113-[模板]一般图最大匹配【带花树】
- Springboot --- Bug集
- Unity Event Trigger 事件响应(二维,三维)添加组件
- 开源框架 - 新 代码生成器 WebFirst / .NET Core
- caffe.cpp解析
- 山顶点提取(ArcPy实现)
- TCP服务器和客户端_Socket编程
- 枚举类型(enum)
- C++ IDE或编辑器安装