当前位置: 首页 > news >正文

[极客大挑战 2019]BuyFlag-3.23BUUCTF练习day5(3)

[极客大挑战 2019]BuyFlag-3.23BUUCTF练习day5(3)

打开发现一个menu
在这里插入图片描述在这里插入图片描述
打开了一个买flag的页面,提示我们需要是CUIT的学生,那我们抓包看看

请添加图片描述

根据刚刚的提示,又在抓包页面看到user,其中0是代表false,那么我们将0改为1,应该可以满足是CUIT的学生
成功请添加图片描述提示输入密码
刚刚翻看抓包返回的内容,看到了这个
请添加图片描述

代码解释

  • if (isset($_POST[‘password’])):
    这行代码检查是否通过POST方法提交了名为password的表单字段。isset()函数用于检测变量是否已设置并且非null。$_POST是一个超全局数组,用于收集通过POST方法提交的表单数据$password = $_POST[‘password’];:

  • 如果password字段存在,将其值赋给变量$password

  • if (is_numeric($password)):
    这行代码检查$password是否是一个数字。is_numeric()函数用于检测变量是否为数字或数字字符串。

  • echo “password can’t be number”;:
    如果$password是数字,输出一条消息,提示密码不能是数字。

  • elseif ($password == 404):
    如果$password不是数字,检查它是否等于404。

  • ==是松散比较运算符,只比较值,不比较类型。

  • echo “Password Right!”;
    如果$password等于404,输出一条消息,提示密码正确。

看代码知道密码该怎样得到了,在PHP弱比较中,如果是字符串与数字比较,那么在弱比较中字符串将会转换成数字,具体看这篇文章的拓展部分

所以我们只需要输入前面为404再加字符,可以绕过不是字符的检查和==弱比较
请添加图片描述

最后需要输入钱,没有给具体的变量名猜测是money
输入&money=100000000会显示过于长了,把数字位数变少可以采用科学计数法请添加图片描述
得到flag{7d722fcf-06e2-4178-8c4c-8ab1e120068b}

相关文章:

  • LeetCode HOT100系列题解之岛屿数量(10/100)
  • 【Keil5-开发技巧】
  • VSCode 生成HTML 基本骨架
  • 【CICD】Ansible知识库
  • 【MySQL数据库】触发器与事件
  • 从失衡到平衡:手撕 AVL 树的插入旋转操作
  • Cursor 一键自动无限续杯(3月24日)亲测有效
  • 黑马点评-UV统计
  • 2025前端面试题记录
  • 23种设计模式-创建型模式-工厂方法
  • 【USTC 计算机网络】第三章:传输层 - 传输层概述及其服务、多路复用与解复用、无连接传输:UDP
  • Python 集合操作大全:从入门到精通,新手学习避坑指南
  • Web PKI技术基础知识
  • 小蓝的操作————(java)差分数组
  • Linux冯诺依曼体系与计算机系统架构认知(8)
  • 【Python】装饰器相关知识点
  • 20届智能车赛规则已完成搜索
  • spring-security原理与应用系列:建造者
  • AI Agent开发大全第七课-个人如何申请到靠谱的AI
  • git日常学习
  • 网站优化http://www.seo668.cn/seo/橙子建站
  • 网页设计制作价格/武汉网站开发公司seo
  • 如何做网站推广营销/排名优化哪家好
  • 英文网站建设580/百度自媒体平台
  • 手把手教你用动易做网站/哪家培训机构好
  • 闵行西安网站建设/东莞seo外包公司