0%

[NSSCTF 2022 Spring Recruit]babyphp sjqyyds17的WriteUp

2024-01-15 20:00By
Sha0s1
弱比较数组绕过PHP正则绕过WEB

Problem: [NSSCTF 2022 Spring Recruit]babyphp

[[toc]]

思路

  • 解题大致思路
<?php highlight_file(__FILE__); include_once('flag.php'); if(isset($_POST['a'])&&!preg_match('/[0-9]/',$_POST['a'])&&intval($_POST['a'])){ if(isset($_POST['b1'])&&$_POST['b2']){ if($_POST['b1']!=$_POST['b2']&&md5($_POST['b1'])===md5($_POST['b2'])){ if($_POST['c1']!=$_POST['c2']&&is_string($_POST['c1'])&&is_string($_POST['c2'])&&md5($_POST['c1'])==md5($_POST['c2'])){ echo $flag; }else{ echo "yee"; } }else{ echo "nop"; } }else{ echo "go on"; } }else{ echo "let's get some php"; } ?> let's get some php

1,preg_match 函数数组返回false,绕过
a[]=1

2,要求b1的值不能等于b2的值,并且强比较两个值的类型使用数组绕过强比较,两边数组都返回为null所以相等。
b1=1&b2=2

3,要求c1的值不等于c2的至,并且都是字符串,然后弱比较md5的值所以使用0e绕过
c1=QNKCDZO&c2=240610708

EXP

a[]=1&b1[]=21&b2[]=1&c1=QNKCDZO&c2=240610708

总结

  • 对该题的考点总结
还没有人赞赏,快来当第一个赞赏的人吧!
  
© 著作权归作者所有
加载失败
广告
×
评论区
添加新评论