复健第一天之[SWPUCTF 2022 新生赛]奇妙的MD5
[SWPUCTF 2022 新生赛]奇妙的MD5
打开题目在线环境,可以看到一个提示:
这个提示 可以让我们想起ffifdyop这个字符串,因为 这个字符串经过 md5 加密后276f722736c95d99e921722cf9ed621c
再转换为字符串:'or’6<乱码> 即 'or’66�]��!r,��b,经常在 MD5的题目里面用到,输入之后跳转到下一个**/c0nt1nue.php**页面 F12可以看到
<!-- $x= $GET['x']; $y = $_GET['y']; if($x != $y && md5($x) == md5($y)){ ; -->
到这里就是简单的MD5绕过了,构造payload:x=QNKCDZO&y=240610708
这里补充一些MD5加密后是0e开头 的字符串 :
QNKCDZO
240610708
byGcY
sonZ7y
aabg7XSs
aabC9RqS
s878926199a
s155964671a
s214587387a
s1091221200a
进入下一个界面,直接显示源码 :
<?php
error_reporting(0);
include "flag.php";
highlight_file(__FILE__);
if($_POST['wqh']!==$_POST['dsy']&&md5($_POST['wqh'])===md5($_POST['dsy'])){
echo $FLAG;
}
是MD5的数组绕过,md5不能加密数组,传入数组会报错,但会继续执行并且返回结果为null
所以构建payload:wqh[]=1&dsy[]=2
就能得到 最后的flag。