文章目录
介绍
- 介绍
- PHP命令执行的参数
- ${php代码}
- assert
- preg_replace()
- create_function()
- 介绍
- 构造一些payload
- 实现后门的搭建
- array_map
- call_user_func()/call_user_func_array()
- array_filter()
- usort()/uasort()
- 命令执行的几种常用的符号
- 命令执行的基本绕过
- 参考文献
- ctfshow
- web29
- web30
- web31
- web32
- web33到36
- web37
- web38
- web39
- web40
- web41
- web42
- web43
- web44
- web45
- web46
- web47-48
- web49
- web50
- web51
- web52
- web53
- web54
- web55
- web56
- web57
- web58
- web59
- web60
- web61-65
- web66-67
- web68-70
- web59
- web60
- web61-65
- web66-67
- web68-70
- web71
- web72
- web73-74
- web75-76
- web77
- 参考文献
命令执行:一句话就是没有对用户的提交的数据进行过滤,导致通过一些系统命令获取了一些信息。
PHP命令执行的参数 1.system:执行系统命令,会输出
例子:http://www.dvwa.com/cmd/test.php?cmd=||%20ipconfig
2.exec:exec函数不会将执行后的结果输出,与system功能一样
3.passthru:用于执行系统命令的,并且会将执行后的结果**进行输出**,主要运用于unix系统
4.shell_exec:用于执行shell命令并将执行的结果以字符串的形式返回,但是不会将结果进行输出。
5.popen:popen函数会将执行后的系统命令结果用一个文件指针的形式返回。
6.proc_popen
7.特殊符号--反引号"``":也可以用来执行命令
${php代码}
可以看看这个文章
${phpinfo()};
assert
assert函数也可以执行命令 一般调用
//?a=phpinfo()
动态调用 两种调用方法在php7.0.29版本之前都测试成功,7.0.29版本之后又动态调用的方法无法成功
//?a=phpinfo()
但是
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?