AI智能摘要
被前女友发来的神秘链接搅乱心绪?这道CTF题目暗藏玄机。通过巧妙利用PHP的MD5函数漏洞和strcmp特性,只需构造特殊参数就能破解谜题。本文将带你一步步拆解代码逻辑,揭开绕过验证的终极技巧,让你在网络安全实战中再添利器。
— AI 生成的文章内容摘要
进入后发现首页是一段很伤感的话,做个题都这么伤感,哎。。。。

查看网页源代码,发现code.txt,访问查看,发现是个审计题,代码分析如下:
<?php if(isset($_GET['v1']) && isset($_GET['v2']) && isset($_GET['v3'])){ $v1 = $_GET['v1']; $v2 = $_GET['v2']; $v3 = $_GET['v3']; if($v1 != $v2 && md5($v1) == md5($v2)){ //md5不能用来算数组,这里用数组绕过,v1和v2的值不能一样 if(!strcmp($v3, $flag)){ //strcmp函数的作用是比较两个值是否相等,如果相等返回0,而if是里面的!是非,非0则TURE echo $flag; } } } ?>
于是构造payload:http://123.206.31.85:49162/?v1[]=a&v2[]=b&v3[]=c
得到flag。。。


韩国 1F
这题用数组绕过有点意思
日本 B1
@ 暗影低喃 数组确实能绕过md5比较
浙江省 2F
v3传数组不会报错吗,弱类型真敢来
安徽省芜湖市 3F
之前搞代码审计也被这招阴过,记忆犹新
韩国 4F
PHP是世界上最好的语言,怎么听着像遗言
湖南省长沙市 5F
v3怎么构造啊,没看懂
越南 6F
md5碰撞还能这么玩
湖南省郴州市 7F
感觉代码审计挺简单的
中国 B1
@ 纸风车追逐者 有些细节不踩坑真不知道,比如strcmp处理数组的漏洞
北京市 8F
之前也遇到过类似题目
浙江省嘉兴市 B1
@ 古铜色岁月 不是,真有人拿strcmp传数组不翻车的?
江西省九江市 9F
flag在哪显示?
韩国 10F
PHP是最好的语言hhh
广东省佛山市顺德区 11F
为啥v1和v2不能一样?
山西省大同市 12F
这样绕过真的可以吗
中国 B1
@ 蛋黄派间谍 md5对数组返回NULL,两个都NULL就相等了,确实能过
澳大利亚 13F
直接复制payload就出了
韩国 14F
这题搞得我心情有点复杂,跟前任有关就算了,还得动脑子😂
广东省广州市 15F
数组绕过确实是常规操作,但结合情感文案就离谱
北京市 B1
@ 嘎嘎嘎 情感文案加代码题太会玩了
河北省邯郸市 B1
@ 嘎嘎嘎 数组绕过老招了,但配上失恋情节我直接共情
云南省 16F
v1和v2值不一样但md5相等,只能用数组试试了
上海市 17F
strcmp比较flag,传数组直接报错吧?
江苏省无锡市 18F
PHP这语言特性坑不少,一不小心就绕过去了
日本 19F
我上次做类似题卡了半小时,结果也是数组问题
中国 20F
flag应该直接echo出来了,看响应就行
江西省赣州市 21F
v3传数组会警告吧,但可能不影响执行?
内蒙古呼和浩特市 B1
@ 淡若晨风 警告归警告,执行还是能过的
韩国 22F
那个“PHP是世界上最好的语言”是梗还是提示啊
韩国 23F
这题设计得还挺有情绪共鸣的,一边伤心一边debug
韩国 24F
v3传空数组就能过吧?
黑龙江省哈尔滨市 25F
这题设计得让人又爱又恨😂
菲律宾 26F
为啥用数组md5就相等了?
上海市 27F
flag直接显示在页面上了
福建省福州市台江区 28F
看到PHP最好语言直接笑出声
福建省福州市 29F
数组绕过老套路了
吉林省长春市 30F
payload复制粘贴就能出?
江西省吉安市 31F
之前被strcmp坑过好几次
上海市 32F
伤感文案配代码审计有点东西
印度 33F
v1[]=a这种传法不会报错吗?
北京市 B1
@ 黄泉归客 payload复制粘贴就出flag,但本地搭环境试了报warning
上海市 34F
这题文案写得我真代入了,结果一查源码破防了
河北省唐山市 35F
v1[]=a&v2[]=b确实能绕,但v3传数组会不会直接崩啊?
河北省廊坊市 36F
PHP最好语言这句话一出我就知道要被坑了😂
浙江省宁波市 37F
md5数组绕过这招实用,记小本本上了。
美国 B1
@ TuftTilter 数组绕过是CTF里挺经典的思路。
日本 38F
之前做CTF也被strcmp坑过,传数组直接跳过比较
浙江省嘉兴市 39F
flag是直接echo出来的?那得看网页源码还是network?
菲律宾 40F
伤感故事配代码审计,出题人是不是刚分手hhh
江苏省常州市 41F
md5($v1)==md5($v2)用数组等于俩都null,所以相等?
北京市 42F
v3[]=c这样传,strcmp应该返回null吧,非0就进去了
日本 43F
看到“前女友”点进来,结果让我debug,心更碎了
韩国 44F
这题搞得我心都碎了,前女友链接还能这么玩😂
北京市 45F
v1和v2用数组绕过是常规操作,但v3这样传真能过?
韩国 46F
PHP是世界上最好的语言?我咋觉得是凶手呢hhh
印度 47F
flag直接echo出来,我还在network里翻半天
湖北省武汉市 48F
md5比较数组会返回NULL,两个都NULL自然相等,懂了
江苏省泰州市 49F
出题人怕不是刚失恋,一边哭一边写代码吧
中国 50F
v3传数组strcmp会报warning,但PHP弱类型还是能进
马来西亚 51F
我也被这个strcmp坑过,传数组直接绕成习惯性操作了
韩国 52F
看不懂为啥非得用数组,普通字符串不行吗?
重庆市 53F
这题文案太会了,看着看着真代入前任故事了
泰国 B1
@ 大寒松骨 这题搞得我心都化了,前女友+PHP双重暴击😂
中国 54F
v1[]=a&v2[]=b这种写法看着怪别扭的
陕西省西安市 55F
md5比数组等于null,俩null居然能过,离谱
韩国 56F
flag直接刷屏了?我咋只看到一片空白
上海市 57F
出题人怕不是边哭边敲代码,太有画面感了