[BJDCTF2020]Easy MD5 1

本文介绍了BJDCTF2020中一个关于MD5函数的挑战。通过分析题目,发现MD5函数的true参数导致了SQL注入漏洞。利用特定字符串'ffifdyop'可以构造永真的SQL条件。同时,通过PHP语法特性,利用数组无法被MD5加密的特点,实现了CTF中基于MD5比较的绕过策略。参考了多个博客资源进行了解决方案的探讨。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述
bp抓包看到:
在这里插入图片描述
select * from ‘admin’ where password=md5($pass,true)
查看一下md5()函数的true参数
在这里插入图片描述
和默认的输出不一样,百度一下MD5()true参数漏洞,发现可以找到
ffifdyop字符串会造成漏洞
在这里插入图片描述
·在本地环境试验ffifdyop,输出的开头是’or’6xxxxxx
在数据库语句里就构成了select * from ‘admin’ where password= ''or’6xxxxxx ’ 相当于 password= ‘’ or 1 变成永真试

输入ffifdyop得到:
在这里插入图片描述
F12查看代码:
<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值