php伪协议使用示例

1、进入ctf.show靶场的WEB分类下的web3、web4题

php伪协议使用示例_第1张图片

  打开的靶场内容显示如下图所示,是文件包含类型,需要上传一个文件,参数名称是 url

php伪协议使用示例_第2张图片

 

php伪协议使用示例_第3张图片

 2、打开靶场,使用kakit抓包后,利用php伪协议,上传一个php输入流

?url=php://input

注意:此为执行“查看当前目录”命令。

php伪协议使用示例_第4张图片

 ?url=php://input

 注意:此为执行“查看当前目录下ctf_go_go_go文件内容”命令。

php伪协议使用示例_第5张图片

 如上图所示,获取本题flag。

3、利用php伪协议,上传一个服务本地文件

?url=/etc/passwd

注意:此为包含一个服务器本地/etc/passwd文件

php伪协议使用示例_第6张图片

 ?url=/var/log/nginx/access.log

注意:此为包含一个服务器本地/var/log/nginx/access.log文件

php伪协议使用示例_第7张图片

如上图所示,可以看到nginx的access.log中记录了浏览器版本信息,使用yakit抓包后,浏览器版本信息后面可以追加上一句话木马test']);?>,然后放行后。

php伪协议使用示例_第8张图片

 使用“中国蚁剑”链接。注意这里的链接密码test是一句话目录需要传的参数名称(即需要执行的系统命令,将以该参数名提交到服务器)。

php伪协议使用示例_第9张图片

 如上图所示,点击“保存”后,双击该链接,可以直接链接到服务器,浏览服务器目录,发现当前页面的上级目录下有个flag.txt。

php伪协议使用示例_第10张图片

 双击flag.txt,即可查找到flag。

php伪协议使用示例_第11张图片

  另外网页上访问,可以发现flag。

php伪协议使用示例_第12张图片

 

你可能感兴趣的:(问题及示例,安全,安全,php)