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

[ctfshow web入门] web25

信息收集

要想拿到flag,需要突破两层if。
在这里插入图片描述

解题

第一个if

传入r=0,拿到mt_rand的值,由于每一次访问都会重新设置种子,所以每一次访问都是一样的随机数。
所以我们的r = mt_rand-显示的值 = 1799250188
r=1799250188就可以突破第一层if了
在这里插入图片描述

第二层if

题目里给了个工具,他能根据第一个随机数反推种子的值。下载下来,刚好我有一台linux kali,在linux里编译,然后传给他随机数即可

当然,你说没有linux,也没有工具要怎么办
那当然是用对应版本的php硬跑啊,种子从0-0xffffffff,一个个试效果是一样的。这就是爆破
在这里插入图片描述
拿着跑出来的种子,生成随机数,第一个随机数不要。第二和第三个相加即是结果
在线php: https://www.jyshare.com/compile/1/
在这里插入图片描述
把拿到的随机数放置到cookie里,与前面的用分号;隔开,拿到flag
在这里插入图片描述

如果你跑出来的随机数不对,不要着急,对应版本,那个c语言工具也是有php版本的,不同版本对应不同随机数,运行的php版本也需要对应。
在这里插入图片描述

web24    目录    web26

相关文章:

  • 通过扣子平台将数据写入飞书多维表格
  • rockylinux 8 9 升级到指定版本
  • excel的逻辑类型函数(主要包括if、and、or、not、xor、iserror、iferror、true、false、ifs、ifna、switch)
  • 迁移WordPress网站(大文件版本)
  • 任务扩展-输入商品原价,折扣并计算促销后的价格
  • 二十八- Scala
  • 使用LangChain Agents构建Gradio及Gradio Tools(6)——创建自己的GradioTool
  • 关于软件bug描述
  • 核心案例 | 湖南汽车工程职业大学无人机操控与编队技术实验室
  • 引入模型的知识点整理(Three.js)
  • 阅读笔记“BFMSense”
  • MVS 无监督学习
  • docker各种清空缓存命令,下载jdk包总失败,执行完好了
  • BUUCTF-web刷题篇(15)
  • SeaTunnel系列之:部署SeaTunnel的Spark和Flink引擎
  • 时序数据库 TDengine Cloud 私有连接实战指南:4步实现数据安全传输与成本优化
  • (二)链表结构
  • Redis-一般操作
  • 深入理解CSS对齐属性:align-items, align-self, justify-items, justify-self
  • EasyExcel结合多线程+控制sheet页全量导出
  • 清新区城乡建设局网站/防恶意竞价点击软件
  • 长沙做搜索引擎的公司/徐州seo外包公司
  • 乌鲁木齐网站制作/网络营销的特点分别是
  • 网站域名变更怎么查询/关键词优化推广排名
  • 营销型 手机网站制作/站外推广渠道
  • flask做的网站 网址/有道搜索引擎入口