zoukankan      html  css  js  c++  java
  • BUUCTF | CODE REVIEW 1 (反序列化,md5绕过)

    <?php
    /**
     * Created by PhpStorm.
     * User: jinzhao
     * Date: 2019/10/6
     * Time: 8:04 PM
     */
    
    highlight_file(__FILE__);
    
    class BUU {
       public $correct = "";
       public $input = "";
    
       /*__destruct() :对象的所有引用都被删除或者当对象被显式销毁时执行
             uniqid() :函数基于以微秒计的当前时间,生成一个唯一的 ID。
       */
       public function __destruct() {
           try {
               $this->correct = base64_encode(uniqid());
               if($this->correct === $this->input) {
                   echo file_get_contents("/flag");
               }
           } catch (Exception $e) {
           }
       }
    }
    
    if($_GET['pleaseget'] === '1') {
        if($_POST['pleasepost'] === '2') {
            if(md5($_POST['md51']) == md5($_POST['md52']) && $_POST['md51'] != $_POST['md52']) {
                unserialize($_POST['obj']);
            }
        }
    }
    

    __destruct() :对象的所有引用都被删除或者当对象被显式销毁时执行。

    uniqid() :函数基于以微秒计的当前时间,生成一个唯一的 ID。

    序列化构造方法:注意传引用

     MD5绕过一:数组

    MD5绕过二:弱类型

     

  • 相关阅读:
    DOM的重点核心
    window的Navigator 对象
    meta标签的http-equiv与content解析
    深拷贝与浅拷贝
    web安全CSRF和XSS
    同源策略与跨域问题
    instanceof与constructor的区别
    javascript原型对象与原型链
    Dom事件
    CSS盒模型的介绍
  • 原文地址:https://www.cnblogs.com/chrysanthemum/p/11737319.html
Copyright © 2011-2022 走看看