ctf--web刷题记录 ACTF2020back up file 、极客大挑战2019php、secret file
ACTF2020back up file
backup file指的是备份文件,一般备份文件的后缀有“.git” 、“.svn”、“ .swp” “.~”、“.bak”、“.bash_history”、“.bkf”
根据题目的hint,随便访问一个index.php.bak,下载得到备份文件
此处为弱比较,要求just num,所以传入key=123,得到flag
极客2019php
dirsearch备份文件爆破
php反序列化函数漏洞绕过
__sleep() 序列化函数调用时自动执行的函数,可以限定要序列化的属性
__wakeup()//反序列化时优先调用执行的函数private声明的字段类型
先试了几个备份文件名都没有用,于是用dirsearch爆破,找到www.zip
访问/www.zip,得到文件,解压,得到index.php flag.php class.php打开flag.php,哈哈被骗辣
看index.php,调用了class.php,且需要用get方式传递经过反序列化之后的select。
再看class.php,select需要满足usename=admin&password=100
查了一圈资料,发现class.php里用到的_wakeup函数在反序列化时会优先执行,覆盖掉之前输入的username和password。解决办法就是写脚本重新构造序列化(脚本是上网找的,我还是太菜了)
<?php
class Name{
private $username = 'nonono';
private $password = 'yesyes';
public function __construct($username,$password){
$this->username = $username;
$this->password = $password;
}
}
$a = new Name('admin', 100);//重新构造序列化
var_dump(serialize($a));
?>
输出的结果
此处为了绕过_wakeup函数,要把’2‘改成一个大于真实类型数的值,但改了之后上传还是没有反应
又查了一圈资料,发现是因为private声明的字段前面都有/0前缀,不能直接复制 字段前加上%00后上传成功,得到flag
极客2019secret file
php://filter伪协议
先随便访问个flag.php,发现什么都没有
从头开始,在源码里一步一步找到文件夹,访问,直到action.php的时候出了问题,访问之后立即跳转成end.php了
抓包,在action.php这里发现有个secr3t.php,访问查看源码,发现让我们传入file
这里用到php伪协议php://filter,把flag.php的源码通过base64编码之后读取
?file传入php://filter/convert.base64-encode/resource=flag.php
解码,得到源码
ctf--web刷题记录 ACTF2020back up file 、极客大挑战2019php、secret file的更多相关文章
- BUUOJ [极客大挑战 2019]Secret File
[极客大挑战 2019]Secret File 0X01考点 php的file伪协议读取文件 ?file=php://filter/convert.base64-encode/resource= 0X ...
- [极客大挑战 2019]Secret File
0x00知识点 没有过滤file 使用php的file伪协议去读取文件 ?file=php://filter/convert.base64-encode/resource=flag.php 0x01解 ...
- [极客大挑战 2019]Secret File 1
题目的名字就暗示我们考点文件隐藏进入页面查看源码 得到隐藏的界面点击访问 点击给的"SECRET"按钮页面出现提示"没看清么?回去再仔细看看吧.",说明响应的时 ...
- [极客大挑战 2019]Secret File wp
通过标题考虑可能为文件包含漏洞方面 打开网页 从页面并没任何思路,查看源代码 得到有一个跳转到./Archive_room.php的超链接,打开Archive_room.php 中央有一个secret ...
- 攻防世界Web刷题记录(进阶区)
攻防世界Web刷题记录(进阶区) 1.baby_web 发现去掉URLhttp://111.200.241.244:51461/1.php后面的1.php,还是会跳转到http://111.200.2 ...
- 攻防世界Web刷题记录(新手区)
攻防世界Web刷题记录(新手区) 1.ViewSource 题如其名 Fn + F12 2.get post 3.robots robots.txt是搜索引擎中访问网站的时候要查看的第一个文件.当一个 ...
- 2020极客大挑战Web题
前言 wp是以前写的,整理一下发上来. 不是很全. 2020 极客大挑战 WEB 1.sha1碰撞 题目 图片: 思路 题目说,换一种请求方式.于是换成post.得到一给含有代码的图片 图片: 分析该 ...
- [原题复现][极客大挑战 2019]BuyFlag
简介 原题复现:[极客大挑战 2019]BuyFlag 考察知识点:php函数特性(is_numeric().strcmp函数()) 线上平台:https://buuoj.cn(北京联合大学公开 ...
- web刷题记录 极客大挑战2019Knife upload buy a flag
极客2019Knife webshell就是以asp.php.jsp或者cgi等网页文件形式存在的一种代码执行环境,主要用于网站管理.服务器管理.权限管理等操作.使用方法简单,只需上传一个代码文件,通 ...
随机推荐
- .NET Core工程应用系列(1) 定制化Audit.NET实现自定义AuditTarget
需求背景 最近在项目上需要增加对用户操作进行审计日志记录的功能,调研了一圈,在.net core生态里,用的最多的是Audit.NET.浏览完这个库的文档后,觉得大致能满足我们的诉求,于是建立一个控制 ...
- LuoguB2008 计算 (a+b)×c 的值 题解
Content 输入 \(a,b,c\),输出 \((a+b)\times c\). 数据范围:\(-10000<a,b,c<10000\). Solution 关于 C++ 运算顺序可以 ...
- Java高级:条件队列与同步器Synchronizer的原理+AQS的应用
14.构建自定义的同步工具 类库中包含了许多存在状态依赖性的类,例如FutureTask,Semaphore和BlockingQueue等.在这些类中的一些操作中有着基于状态的前提条件,例如,不能从一 ...
- ajaxFileUpload上传文件成功后却无法解析服务器返回的json数据
可能是应该返回内容带了标签,过滤下 var index=data.indexOf("<"); if (index!=-1){ data=data.substring(0,in ...
- centos使用docker安装mysql5.7
搜索镜像 docker search mysql 拉取镜像 docker pull mysql:5.7 启动mysql镜像 docker run -p 3306:3306 --name mysql - ...
- 【LeetCode】264. Ugly Number II 解题报告(Java & Python)
标签(空格分隔): LeetCode 作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ https://leetcode.com/prob ...
- 【LeetCode】621. Task Scheduler 解题报告(Python & C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 公式法 日期 题目地址:https://leetco ...
- 晴天小猪历险记之Hill(Dijkstra优先队列优化)
描述 这一天,他来到了一座深山的山脚下,因为只有这座深山中的一位隐者才知道这种药草的所在.但是上山的路错综复杂,由于小小猪的病情,晴天小猪想找一条需时最少的路到达山顶,但现在它一头雾水,所以向你求助. ...
- Rectangles(hdu2461)
Rectangles Time Limit: 5000/4000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- 基于React和Node.JS的表单录入系统的设计与实现
一.写在前面 这是一个真实的项目,项目已经过去好久了,虽然很简单,但还是有很多思考点,跟随着笔者的脚步,一起来看看吧.本文纯属虚构,涉及到的相关信息均已做虚构处理, 二.背景 人活着一定要有信仰,没有 ...