[SWPUCTF 2021 新生赛]easy_md5--php弱类型比较
<?php highlight_file(__FILE__); include 'flag2.php'; if (isset($_GET['name']) && isset($_POST['password'])){ $name = $_GET['name']; $password = $_POST['password']; if ($name != $password && md5($name) == md5($password)){ echo $flag; } else { echo "wrong!"; } } else { echo 'wrong!'; } ?> wrong!
- 只要两个数的md5加密后的值以0e开头就可以绕过(因为php在进行弱类型比较‘==’时,会现转换字符串的类型再进行比较,因为两个数都是以0e开头会被认为是科学计数法,0e后面加任何数在科学计数法中都是0,所以两数相等)
name=240610708
password=QLTHNDT
- 使用[]类型,由于md5()函数存在缺陷,加密[]的时候返回值是NULL,这样子无论如何都相等了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!