1. RCE是什么       文件上传是什么

  1. 关键函数

Assert             //assert()是PHP中的一个断言函数,但在安全方面存在重大隐患。

下图的基本使用啥意思呢,mixed表示这个参数可以是多种类型 $assertion是参数名称,

$description表示断言失败时返回的字符串

:bool 表示断言成功返回ture  断言失败返回false

assert(1>2,哈哈大sb):bool  -->输出 哈哈大sb,返回值是false

那么存在什么风险呢?

对字符串参数会 直接执行再进行bool判断,那么为什么会把字符串拿来执行呢?↓

危险示例:

Exec

是 PHP 中用于执行外部程序/系统命令的函数,属于 PHP 的程序执行函数之一,具有极高的安全风险。

直接把第一个字符串参数认为是系统命令去执行,我的评价是伟大无需多言(极度危险)

Eval

能够将字符串作为 PHP 代码来执行

:mixed 就是表示返回值可以是多种类型

shell_exec

是 PHP 中用于执行 shell 命令并获取完整输出的高危函数,比 exec() 更简洁但风险更高。

System

也是把那个字符串命令执行了(通过系统的 /bin/sh 执行命令,还会返回脚本执行的状态吗,0就是成功

还有其他的一些危险函数我们之后再细说~

Passthru

pcntl_exec

Popen

proc_open

更多推荐