开启场景
进行代码分析:
需要利用get方式上传3个参数a,b,c,这3个分别需要满足不同的条件:
a 不为空,a大于6000000且a的长度要小于等于3
b 不为空,截取b的MD5值的后六位,只要后六位等于'8b184b'即可
c 为数组,数组中的属性m不是数字且大于2022;属性n为数组,且数组元素个数等于2,第一个元素为数组,后面两个函数一个要求有"DGGJ",另一个要求没有"DGGJ"。我们必须要绕过其中一个函数,array_search函数是可以绕过的,当函数将字符串与数字进行匹配时,会将字符串强制转换为整型进行比较,"DGGJ"转化为整型为0。所以另一个元素设置为0
a 为 9e9(9 乘以 10 的 9 次方)b 为 53724
c 为 c={"m":"2023aaa","n":[[0],0]}
payload 为
?a=9e9&b=53724&c={"m":"2023aaa","n":[[0],0]}
cyberpeace{716c379b9e0ead1be9e2a2b9a8248030}