攻防世界Web进阶篇——warmup
打开链接,发现是一张滑稽
查看页面源代码,发现文件
于是打开source.php,发现
打开hint.php,根据提示得知flag在ffffllllaaaagggg文件中
回到source.php,检查代码
在结尾看到include,include是可以动态构造参数,但是要经过三个判断
1.是否为空
2.是否为字符串
3.checkfile函数返回为真
检查checkfile函数,如果输入内容为空或不是字符串,则返回错误
对输入内容进行判断,第一部分 如果输入内容和白名单中的一致,则返回true
第二部分 如果问号前有白名单的内容,则返回true
第三部分 如果输入内容url解码后,问号前有白名单的内容,则返回true
要满足第二个条件:
$_REQUEST 是通过 GET,POST 和 COOKIE 输入机制来传递参数,下面用的是get方式
http://111.200.241.244:51343/source.php?file=source.php?+payload
http://111.200.241.244:51343/hint.php?file=hint.php?+payload
第一个?用于传参,第二个用于截取,file伪协议用于访问本地文件系统
要满足第三个条件就将第二个?url编码两次
接下来构造payload,可以利用include函数的性质,如果一个文件以../开头,那么include就会在当前目录的父目录下寻找文件,所以只需构造../../../../../ffffllllaaaagggg,其中../的个数可以一个一个试
合起来就是http://111.200.241.244:51343/source.php?file=source.php?../../../../../ffffllllaaaagggg
参考文章:https://blog.csdn.net/yybzzz/article/details/104971608
https://blog.csdn.net/qq_42016346/article/details/104199710?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.base&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.base
最新文章
- jquery插件 - 学习笔记 (插件参数及函数的调用)
- #VSTS日志# 15/11/18 插件应用市场,RM,包管理器等
- 使用EntityFramwork[6.1]进行级联保存的时候出现异常
- 【UVA 11401】Triangle Counting
- bzoj 3529 数表 莫比乌斯反演+树状数组
- 关于Java接口
- Responsive设计——不同设备的分辨率写法
- 戏说WSGI(Python Web服务网关接口)--[转载]
- CodeForces 158 B. Taxi(模拟)
- HTTP请求WebTool
- tc-SRM-626-DIV1-250
- java-反射深度剖析
- unity 常用插件 3
- 25. Reverse Nodes in k-Group (JAVA)
- jango路由层
- django补充
- PHP(方法 函数 循环 和 数组 查找)
- linux命令行下修改系统时间、时区
- GRCh38基因组和注释文件探究
- 全网最详细的hive-site.xml配置文件里添加<;name>;hive.cli.print.header<;/name>;和<;name>;hive.cli.print.current.db<;/name>;前后的变化(图文详解)
热门文章
- VS/QT--调用第三方库dll总结
- 年羹尧奏摺专集(下).PDF
- 使用IDEA+Tomcat部署web项目记录
- 当前我对Visual Grounding的看法
- springboot启动类剔除扫描某个包
- Mac连接交换机
- mysql 的 json 类型
- CVE-2020-2551
- Linux&;Android相关常用命令汇总记录
- Excel error - the macros in this project are disabled, please refer to the online help or documentation of the host application to determine how to enable macros.