[BJDCTF2020]Easy MD5 1

1.发现

1.1先查看源代码,随便注入,都无果,bp抓包,发现SQ语句

Hint: select * from admin where password=md5($pass,true)

[BJDCTF2020]Easy MD5 1

知识点:

1)PHP中MD5函数

 2.步骤

2.1 利用md5($password,true)实现SQL注入,输入ffifdyop实现注入,进入下一关。

[BJDCTF2020]Easy MD5 1

知识点:

1)MD5函数的SQL注入

 

2.2 进入第二关后右键查看源代码可以从注释中得到后端PHP的一部分源码,发现为PHP md5弱类型比较

 使用GET方法传入?a=QNKCDZO&b=s214587387a,进入下一关。

[BJDCTF2020]Easy MD5 1

知识点:

1)MD5函数的弱类型比较

 

2.3 发现PHP代码,分析仍为 PHP md5绕过。

使用数组绕过POST传入param1[]=1&param2[]=2,得到flag。

 <?php
error_reporting(0);
include "flag.php";

highlight_file(__FILE__);

if($_POST[‘param1‘]!==$_POST[‘param2‘]&&md5($_POST[‘param1‘])===md5($_POST[‘param2‘])){
    echo $flag;
} 

知识点:

1)MD5 函数的数组绕过

 

[BJDCTF2020]Easy MD5 1

 

 

3.借鉴

[BUUOJ记录] [BJDCTF2020]Easy MD5 - Ye‘sBlog - 博客园 (cnblogs.com)

PHP弱类型hash比较缺陷 - Ye‘sBlog - 博客园 (cnblogs.com)

 

[BJDCTF2020]Easy MD5 1

上一篇:pd配置


下一篇:稀土元素 + 锕系元素