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绕过二:弱类型

     

  • 相关阅读:
    周总结14
    周总结13
    周总结12
    周总结11
    周总结10
    Pytorch实现GCN、GraphSAGE、GAT
    pytorch在损失函数中为权重添加L1正则化
    conda安装虚拟环境或者软件包时一直报错
    各种报错
    Pytorch-torchtext的使用
  • 原文地址:https://www.cnblogs.com/chrysanthemum/p/11737319.html
Copyright © 2011-2022 走看看