[BJDCTF2020]Easy MD5

[BJDCTF2020]Easy MD5

进入靶场:
在这里插入图片描述

  • 只有一个输入框,先看看源码…

  • 好像没啥东西

  • 看一眼数据包。
    在这里插入图片描述

  • Response Header中有一个hint

  • 是一个SQL语句,看来是一个SQL注入

  • select * from 'admin' where password=md5($pass,true):只需要将password这边变成永真就行了,' or '...

  • ffifdyop 这个字符串被 md5 哈希了之后会变成 276f722736c95d99e921722cf9ed621c,这个字符串前几位刚好是 ' or '

绕过第一步之后,接着来到了第二步:
在这里插入图片描述
还是先看下源代码:

<!--
$a = $GET['a'];
$b = $_GET['b'];

if($a != $b && md5($a) == md5($b)){
    // wow, glzjin wants a girl friend.
-->
  • $a = $GET['a']; $b = $_GET['b'];:需要GET方式传入两个参数a和b
  • 要满足a不等于b但是md5加密之后两个参数弱相等。
  • 这里可以用数组的形式去绕过:?a[]=1&b[]=2

接着又来到了第三步,直接上代码:

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

highlight_file(__FILE__);

if($_POST['param1']!==$_POST['param2']&&md5($_POST['param1'])===md5($_POST['param2'])){
    echo $flag;
}
  • $_POST['param1']!==$_POST['param2']:需要POST方式提交两个参数param1param2
  • 两个参数不能相等,但是md5转换后的值还要相等,和第二步一样的处理方式。
    在这里插入图片描述

GET Flag !!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值