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

[极客大挑战 2019]PHP

这道题打开之后是一个动态的小猫 题中告诉我们

因为每次猫猫都在我键盘上乱跳,所以我有一个良好的备份网站的习惯 不愧是我!!!

所以我们查看一下网页备份文件 (www.zip)

这里有个flag文件 但是我访问进去用他给的答案是错的 不可能这么简单

再访问index.php

再index.php的文件里面 我们发现 这里进行了get传参并且包含了class.php文件

还是用unserialize将select进行反序列化操作

又访问了class文件

php代码 我们简单看一下 发现username是admin password是100

这里面_wakeup强行将username的值变成了guest

所以我们需要想方法绕过 这里我们使用序列化操作 将这串php代码转化成文本字符串(serialize)

<?phpclass Name{private $username = 'admin';private $password =  '100';
}$select = new Name();
$res = serialize(@$select);
echo $res
?>

我们把payload进行编译得到了相应的文本

O:4:"Name":2:{s:14:"Nameusername";s:5:"admin";s:14:"Namepassword";s:3:"100";}

这里我们进行提交 但是还是显示错误

这里我们有两个问题是 网站将我们所输入的空格给过滤了 我们需要绕过一下 还有就是只有当成员属性数大于实际属性数时 才能绕过_wakeup 所以我们还得将成员数2改为3

空格的url编码是%00

重新构造的payload为O:4:"Name":3:{s:14:"%00Name%00username";s:5:"admin";s:14:"%00Name%00password";s:3:"100";}

就得到了flag{c7751580-9bc6-4e7b-a4e9-0c2dc3bdfa99}

总结

常见的网站源码备份文件后缀: tar.gz,zip,rar,tar

常见的网站源码备份文件名: web,website,backup,back,www,wwwroot,temp

过滤_wakeup时 成员属性数需要大于实际属性数


http://www.mrgr.cn/news/90456.html

相关文章:

  • Win10环境借助DockerDesktop部署Open web UI集成DeepSeek
  • 初一说明文:我的护眼灯
  • 本地部署DeepSeek R1并搭建Web UI实现可视化交互的笔记
  • 23种设计模式的定义和应用场景-02-结构型模式-C#代码
  • 【DeepSeek服务器繁忙,请稍后再试...如何解决?】
  • JUnit断言方法详解与实战
  • 【竞技宝】LOL-LPL:EDG3-0零封LNG
  • 图神经网络怎么和LLM结合
  • 前端如何判断浏览器 AdBlock/AdBlock Plus(最新版)广告屏蔽插件已开启拦截
  • 使用EVE-NG-锐捷实现ACL访问控制
  • C++ 设计模式-桥接模式
  • QML的属性绑定
  • 【第三节】CMake 的构建流程
  • 自己部署 DeepSeek 助力 Vue 开发:打造丝滑的折叠面板(Accordion)
  • 如何在 GitHub 上写博客
  • Open Liberty使用指南及微服务开发示例(六)
  • 《Python百炼成仙》11-20章(不定时跟新)
  • 在Windows 7操作系统,基于llama.cpp本地化部署 deepseek-r1模型的方法 2025-02-08
  • 如何在 Linux 中管理自定义脚本:将 ~/bin 目录添加到 $PATH
  • 301.华为交换机堆叠技术基础
  • 前端快速生成接口方法
  • 消息队列学习
  • Python查询成交量较前5天平均值
  • Springboot 中如何使用Sentinel
  • 微信小程序(第一集)
  • 数据结构-栈和队列的应用