BUUCTF | CODE REVIEW 1 (反序列化,md5绕过)

Posted chrysanthemum

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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绕过二:弱类型

 技术图片

 

以上是关于BUUCTF | CODE REVIEW 1 (反序列化,md5绕过)的主要内容,如果未能解决你的问题,请参考以下文章

BUU CODE REVIEW 1 1(反序列化+md5绕过)

BUU CODE REVIEW 1(代码审计)

CODE REVIEW

gerrit code review上的项目怎样删除??

My Code Review

Jenkins Gerrit 报告值插件删除了 Code-review 的值