其他分享
首页 > 其他分享> > [极客大挑战 2019]BuyFlag

[极客大挑战 2019]BuyFlag

作者:互联网

知识点

is_numberic:可以使用%00和%20绕过

strcmp():这一个漏洞适用与5.3之前版本的php

strcmp('str1','str2')
    if(str1>str2) return >0
    if(str1<str2) return <0
    if(str1 == str2) return 0
    if(str1 = arry[] && str2 = string) return 0

解题

在这里插入图片描述
打开题目 打开payflag的功能菜单,提示flag需要100000000 money
在这里插入图片描述
结合上述提示可知 获得flag需要三个步骤

  1. a student from CUIT
  2. 输入正确的密码
  3. 输入正确的金额

第一点是身份验证,可以看一下cookie
在这里插入图片描述
查看源码发现这里有对密码的提示
在这里插入图片描述
根据审计可知 要绕过is_number函数 且 password值为404 所以 POST传参为:password=404%00
在这里插入图片描述
依次修改cookie和POST传参
在这里插入图片描述
下一步就是要传入money的值
在这里插入图片描述
这里提示数字太长了,因此我们可以推测可能是strcmp比较
在这里插入图片描述
抓个包 发现php版本为5.3.3 可以使用 数组绕过
在这里插入图片描述

标签:00,极客,提示,money,str1,BuyFlag,2019,绕过,strcmp
来源: https://blog.csdn.net/qq_23321269/article/details/112970643