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

企业网站建设文档微信开发应用平台

企业网站建设文档,微信开发应用平台,如何学习做网站,网站建设需要哪些软件[题目信息]: 题目名称题目难度PHP-get_defined_vars2 [题目考点]: get_defined_vars — 返回由所有已定义变量所组成的数组此函数返回一个包含所有已定义变量列表的多维数组,这些变量包括环境变量、服务器变量和用户定义的变量。 [Flag格式…

[题目信息]:

题目名称题目难度
PHP-get_defined_vars2

[题目考点]:

get_defined_vars — 返回由所有已定义变量所组成的数组

此函数返回一个包含所有已定义变量列表的多维数组,这些变量包括环境变量、服务器变量和用户定义的变量。

[Flag格式]:

SangFor{tHOllYKRkqYkRWPS0zZf8z1QztC3q_2D}

[环境部署]:

docker-compose.yml文件或者docker tar原始文件。

http://分配ip:2088

[题目writeup]:

1、实验主页

2、源码分析

<?php
if(';' === preg_replace('/[^\W]+\((?R)?\)/', '', $_GET['code'])) {    eval($_GET['code']);
} else {show_source(__FILE__);
}

分析题目代码,逻辑十分清晰。

首先着眼这个正则表达式

[^\W]+\((?R)?\)

其中"[]“表示匹配的开始结束,”^"表示取反。

\W,(注意这个W是大写的),匹配非字母、数字、下划线。等价于[^A-Za-z0-9_]

所以[^\W]是对上面的\w取反: 匹配所有字母数字下划线的字母。

不太熟悉正则的注意正则中的 “+”,是为了拼接整个表达式的,并不是需要我们匹配 “+”,

然后是\((?R)?\):

其中两侧的\( 和\)表示匹配括号。

(?R),(?R)表示递归表达式本身,

(?R)?,最后的"?"表示匹配1个或者0个表达式本身,最后的 “?” 必不可少的。

整个正则是要把对应形式的内容提取出来,然后通过preg_replace函数,用空字符串进行代替,得到一个字符串必须是完全等于**“;”**的。

简而言之,正则限制了只能执行一个函数,但不能设置参数。

这时候需要使用到一个php函数

get_defined_vars — 返回由所有已定义变量所组成的数组

此函数返回一个包含所有已定义变量列表的多维数组,这些变量包括环境变量、服务器变量和用户定义的变量。

用于返回定义的全部变量,这样就相当于可以获取任意位置传入变量值。

就可以通过nextcurrentreset来操纵这个数组,就可以获取到想要的变量值。

只需要reset所有的变量,然后只有当前get赋值,那么就只剩下get请求的变量了

查看目录结构,直到找到flag位置

?1=print_r(scandir('../'));//&code=eval(implode(reset(get_defined_vars())));

查询flag值

?1=readfile('../flag_phpbyp4ss');//&code=eval(implode(reset(get_defined_vars())));

http://www.dtcms.com/a/399646.html

相关文章:

  • 大语言模型本身有记忆功能吗?
  • 解决Initializing Python failed: Failed to import encodings module错误
  • 上海做网站哪里有wordpress环境安装
  • 兖州市做网站wordpress电子商务视频教程
  • 优秀网站模板中国10大装修公司排名
  • python++springboot+nodejs微信小程序高校实验室管理系统 实验室预约登记 设备借用管理 实验记录审核系统
  • 外贸精品网站建设网站运营介绍
  • 构建神经网络的两大核心工具
  • 品牌高端网站制作金蝶软件多少钱
  • 基于STM32舞台彩灯控制器设计app控制系统
  • 2D激光定位与建图
  • shell编程:grep - 文本搜索利器(1)
  • 网站建设制作公司地址做照片书网站
  • 鸿蒙Next远端状态订阅开发实例:实现进程状态监控与资源管理
  • 济宁做网站的WordPress重新安装删除哪个
  • Deep Residual Learning for Image Recognition 阅读笔记
  • 【AI】【Java后端】深度解析 RAG 高级功能:从原理到落地实践
  • 微信移动网站建设做电影网站用什么空间
  • 银行测试存款业务(四)
  • C#练习题——匿名方法与闭包实战:函数式编程的优雅实现
  • 西安有哪些网站设计公司seo排名优化推广报价
  • 深圳安鸿源建设网站上海网站建站建设服务
  • H3C 三层VLAN路由实验
  • 深圳做购物网站小米发布会8月
  • 【GPT入门】第71课 autogen介绍与代码实现股票分析汇报多智能体
  • 网页源码 html源码网站 网页源代码模板
  • 北京网站优化前景集团网站策划方案
  • 怎么打帮人做网站开发的广告常熟市住房建设局网站
  • 深度学习(6)pytorch
  • 函数(Num008)