CTFshow web入门web128-php特性31

开启环境:

一个新的姿势,当php扩展目录下有php_gettext.dll时:

_()是一个函数。

_()==gettext() 是gettext()的拓展函数,开启text扩展get_defined_vars --- 返回由所有已定义变量所组成的数组。

call_user_func --- 把第一个参数作为回调函数调用,第一个参数是被调用的回调函数,其余参数是回调函数的参数。

当正常的gettext("get_defined_vars");时会返还get_defined_vars

为了绕过正则,()函数和gettext()的效果一样,所以可以用()函数代替gettext()函数。

call_user_func会利用_()将get_defined_vars返还出来然后再有一个call_user_func来调用get_defined_vars函数,然后利用var_dump函数就可以得到flag。

?f1=_&f2=get_defined_vars

相关推荐
m0_69484557几秒前
tinylisp 是什么?超轻量 Lisp 解释器编译与运行教程
服务器·开发语言·云计算·github·lisp
春日见6 分钟前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
C++ 老炮儿的技术栈9 分钟前
VS2015 + Qt 实现图形化Hello World(详细步骤)
c语言·开发语言·c++·windows·qt
派葛穆15 分钟前
Python-批量安装依赖
开发语言·python
MSTcheng.28 分钟前
【C++】C++11新特性(二)
java·开发语言·c++·c++11
晓131330 分钟前
第七章 【C语言篇:文件】 文件全面解析
linux·c语言·开发语言
愚者游世30 分钟前
Delegating Constructor(委托构造函数)各版本异同
开发语言·c++·程序人生·面试·改行学it
梵刹古音33 分钟前
【C语言】 指针基础与定义
c语言·开发语言·算法
Ekehlaft36 分钟前
这款国产 AI,让 Python 小白也能玩转编程
开发语言·人工智能·python·ai·aipy
rit843249938 分钟前
MATLAB中Teager能量算子提取与解调信号的实现
开发语言·matlab