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

相关推荐
旷世奇才李先生4 分钟前
Next.js 安装使用教程
开发语言·javascript·ecmascript
charlie11451419139 分钟前
深入理解Qt的SetWindowsFlags函数
开发语言·c++·qt·原理分析
likeGhee1 小时前
python缓存装饰器实现方案
开发语言·python·缓存
whoarethenext1 小时前
使用 C++/Faiss 加速海量 MFCC 特征的相似性搜索
开发语言·c++·faiss
项目題供诗2 小时前
黑马python(二十五)
开发语言·python
only-lucky2 小时前
C语言socket编程-补充
服务器·c语言·php
慌糖2 小时前
RabbitMQ:消息队列的轻量级王者
开发语言·javascript·ecmascript
蓝黑20202 小时前
PHP从字符串到数值的类型转换
php
一个临漂的实习生2 小时前
php协程
php·swoole
醇醛酸醚酮酯2 小时前
Qt项目锻炼——TODO清单(二)
开发语言·数据库·qt