Easy MD5

仅仅是个人刷题记录,有问题欢迎友好讨论

1、数组绕过

md5()在php中无法处理数组,会将数组转化为null

2、特定的md5加密语句

ffifdyop\276f722736c95d99e921722cf9ed621通过md5加密后的数字串会被sql用ascii解释变成包含’ ’ or ’ '的语句

3、解题过程

页面有一个输入什么都没有反馈的输入框,通过网络响应头可以看到有一个hint
在这里插入图片描述
也就是说password会经过这样的一个md5()函数,再赋值给password。我们可以通过特殊字符组合通过md5函数后拼接变成一个永真,形如
select * from 'admin' where password='' or true
而ffifdyop\276f722736c95d99e921722cf9ed621可以做到
接着我们进入另一个页面,没有输入框,通过检查源代码我们可以发现一个php代码审计
在这里插入图片描述
通过md5无法处理数组,结果将为null的特性,构造

?a[]=1&b[]=2

绕过,达到第三个页面
在这里插入图片描述
处理方式和第二个页面一样
构造

?param1[]=1&param2[]=2

但是默认发送的是GET请求,这里需要转化为POST请求。用firefox的maxhackbar将请求转化为POST就好了。用burp直接改也许可以,但是我没用去试。关于maxhackbar参考我之前的博客
最后成功拿到flag

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值