PHP提权之异步执行

在服务器上都会定时运行一些脚本以完成周期性的任务. 而这些脚本往往是以root权限启动的, 替换或者改变其中的内容就可以完成提权.而今天在这要讲解的就是php提权中的异步执行方法.

在php中一般大家都用下面四个函数来调用系统命令,或者外部程序:

<?
echo exec("dir");
echo shell_exec("dir");
echo system("dir");
echo passthru("dir");
echo `dir`;
?>

linux下可以通过在执行的命令后加上>/dev/null 2>&1 & 来丢弃所有的输出信息, 并在将此行命令单独开出一个进程放到后台执行, 从而不会阻塞当前脚本往下继续执行.

<?
.....
exec("tar cjf /root && >/dev/null 2>&1 &);
......
?>

但是在windows的cmd中并没有提供后台执行这个功能(&). 这时候除了使用at命令来添加定时执行任务外(很多时候定时服务是未打开的), 就只能用popen加上 start /b来完成使命了.

<?
#经过实验只有popen函数可以
#popen("start /b s..bat","r"); #成功
#exec("start /b s..bat");#失败
popen("start /b ping -n 10 www.baidu.com && echo \"1111\" > ok.txt && ping -n 10 www.baidu.com && echo \"2222\" > ok2.txt && ping -n 10 www.baidu.com && echo \"3333\" > ok3.txt ","r");
echo "ALL is finish until here!!!";
?>

转自天国哥哥的博客。

时间: 2024-11-06 22:48:43

PHP提权之异步执行的相关文章

17_服务器提权

当我们拿到webshell之后,下一步该干什么了?权限提升 水平权限提升(通过控制一个账户来搞定其他的账户)  垂直权限提升(从单一用户权限提升至完全管理权限) 主机权限提升(重点介绍) 一.主机权限提升 1.分类 Linux提权 Windows提权 2.Windows提权(前提是:有操作系统漏洞,其次是想办法执行cmd) 操作系统漏洞提权 第三方服务提权 3.Windows操作系统漏洞 根据没有修补的补丁号码,到网上找利用程序,进行利用. systeminfo  查看系统信息 查看修补的补丁编

记一次提权过程

太久都没有看菜刀上的webshell,之前拿的都被删的差不多了,所以决定把手上的一些站都提权.菜鸟拿一个shell不简单阿. 这都是一些简单的提权,大牛可飞过. 把大马上传上去后,稍微看了下,ASP,PHP,ASPX都是支持的,不过wscript.shell组件是已经关闭的了.那么就用PHP的来提权吧. 翻了一下网站里面的文件,找到了一个数据库链接文件,竟然还是root用户,那自然就是用mysql来提权了. 上传大马,看看root的权限有没有被限制. 还是可以跨目录来访问其他文件的,说明root

web提权笔记

[ web提权 ] 1.能不能执行cmd就看这个命令:net user,net不行就用net1,再不行就上传一个net到可写可读目录,执行/c c:\windows\temp\cookies\net1.exe user 2.当提权成功,3389没开的情况下,上传开3389的vps没成功时,试试上传rootkit.asp 用刚提权的用户登录进去就是system权限,再试试一般就可以了. 3.cmd拒绝访问的话就自己上传一个cmd.exe 自己上传的后缀是不限制后缀的,cmd.exe/cmd.com

网络安全系列之七 网站提权

上传了webshell之后,我们的目的是获取服务器的系统管理员权限,这也是黑客入侵的最终目的. "H4ck Door"是一个很牛的大马,提供了很多功能,我比较喜欢的是执行cmd命令来提权. 首先执行"net user"命令查看服务器有哪些用户,如果命令无法执行,可以勾选旁边的"wscript.shell". 然后创建一个名为test的用户,并将他添加到管理员组. 查看系统是否开放了3389端口, 可以看到3389没开,接下来我们要设法开启这个端口

利用linux漏洞提权

提权就是让普通用户拥有超级用户的权限. 本次试验漏洞适用于RHELt或CenOS系列5~6系列所有版本.主要利用/tmp/目录和/bin/ping命令的权限漏洞进行提权.     试验环境:腾讯云CentOS6.8     内核:2.6.32-642.6.2.el6.x86_64 1.查看系统环境 2.创建普通用户进行权限测试 3.开始提权操作     写一段C语言,用于提权     提权成功 最终执行完命令之后,可以看到执行权限变成了root,提权成功.

webshell提权之1433端口提权

拿下webshell后,利用大马的功能扫描开放端口 或者如果能使用cmd的时候 运行 netstat -ano语句 查看开放端口.如果有1433端口开放,可以利用1433端口mssql数据库提权 1.找到连接数据库信息 通常在网站目录下的web.config等文件中,留意后缀为.config 的文件 或者在config.asp或者conn.asp  细心查找  也可以用大马的功能直接搜索关键词 2.利用大马mssql执行cmd命令 sqlConnectionString="server=.;da

web提权思路

1.能不能执行cmd就看这个命令:net user,net不行就用net1,再不行就上传一个net到可写可读目录,执行/c c:\windows\temp\cookies\net1.exe user 2.当提权成功,3389没开的情况下,上传开3389的vps没成功时,试试上传rootkit.asp 用刚提权的用户登录进去就是system权限,再试试一般就可以了. 3.cmd拒绝访问的话就自己上传一个cmd.exe 自己上传的后缀是不限制后缀的,cmd.exe/cmd.com/cmd.txt 都

[转帖]提权

windows提权 https://www.cnblogs.com/v01cano/p/10317458.html 之前一直不太理解 感觉作者写的很好记录一下. 0,起因,由于前几天拿了一个菠菜站的webshell,但是只有iis权限,执行无法创建用户等操作,更无法对整个服务器进行控制了,于是此时便需要提权了,对于一个刚刚入门的小白来说,此刻真正意识到了提权的重要性,于是便开始学习提取相关知识,以拿下该菠菜的站点. 提权前的准备工作 1,通常来说,不同的脚本所处的权限是不一样的.这就意味着,如果

windows另类执行exp提权

这个是在提权某国外服务器时候发现的,该服务器的环境是win2k3+iis6.0. 烤肉,pr,iis6的漏洞补丁都没有打,但是,可写很少.上传了啊D牛的脚本后找到可写目录了. 可写目录 C:\Program Files\Zend\ZendOptimizer-3.3.0\lib 按照惯例上传cmd.txt  pr.exe 然后在菜刀上运行exp,蛋疼的地方来了.执行后直接说找不到文件.后面想到个办法,把exp设置为cmd的路径.然后在执行cmd命令的地方执行我要提权的命令,发现还是不行. 这该肿么