包含文件结合phpinfo反弹交互shell

包含文件结合phpinfo反弹交互shell

黑客资讯访客1970-01-01 8:00:002584A+A-

1.简介

在PHP文件包含漏洞中,当我们找不到用于触发RCE的有效文件时,如果存在PHPINFO(它可以告诉我们临时文件的随机生成的文件名及其位置),我们可能可以包含一个临时文件来利用它。

当向PHP发送POST请求并且请求包含一个文件块时,PHP会将所发送的文件保存到一个临时文件中(通常是/tmp/PHP[6个随机数字]),文件名可以在$u FILES变量中找到。请求结束后将删除此临时文件。

同时,PHPINFO页面打印上下文中的所有变量,包括$u文件。因此,如果我们将POST请求发送到PHPINFO页面,则可以在响应中找到临时文件的名称。

这样,LFI漏洞就可以升级为RCE,而不需要存在可用的本地文件。

文件包含和PHPINFO通常位于不同的网页中。理论上,我们需要在PHPINFO页面的文件上传请求的响应中检索文件名后,将文件名发送到文件包含页面。但是,在第一个请求完成后,文件将从磁盘中删除,因此我们需要赢得比赛。


2.步骤:

1.将文件上载请求发送到带有页眉的PHPINFO页,并获取包含大量垃圾数据的字段。

2.响应内容将是巨大的,因为PHPINFO将打印出所有数据。

3.PHP的默认输出缓冲区大小为4096字节。可以理解为PHP在套接字连接期间每次返回4096字节。

4.所以我们使用原始套接字来实现我们的目标。每次我们读取4096字节并在得到文件名后将其发送到LFI页面。

5.当我们得到文件名时,第一个套接字连接还没有结束,这意味着临时文件仍然存在。

6通过利用时间间隔,可以包含并执行临时文件。

 

详细参考这个文档 https://dl.packetstormsecurity.net/papers/general/LFI_With_PHPInfo_Assitance.pdf

前几天有个同学 写了篇文章 可以去看下 https://www.moonsec.com/archives/1248

 

3.测试反弹交互shell

按照上面的方法可以写入一个php 但是感觉有些不方面 最好是直接弹一个交互shell

准备一个文件包含漏洞的环境。

1588665135739954.png

网站存在phpinfo.php

2.png

修改脚本

3.png

修改包含文件页面和ip地址

kali 上监听 nc -lvnp 8080

执行exp

4.png

得到交互shell

5.png

 

4.脚本下载

原版脚本

 

include_exp.zip

修改后的脚本

m_exp.zip

点击这里复制本文地址 以上内容由黑资讯整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
  • 4条评论
  • 野欢叹倦2022-05-28 20:19:34
  • 包含大量垃圾数据的字段。2.响应内容将是巨大的,因为PHPINFO将打印出所有数据。3.PHP的默认输出缓冲区大小为4096字节。可以理解为PHP在套接字连接期间每次返回4096字节。4.所以我们使用原始套接字来实现我们的目标。每次我们读取4096字节并在得到文件名后将其发送到LFI页面。5.当
  • 离鸢怙棘2022-05-28 23:52:38
  • 1.简介在PHP文件包含漏洞中,当我们找不到用于触发RCE的有效文件时,如果存在PHPINFO(它可以告诉我们临时文件的随机生成的文件名及其位置),我们可能可以包含一个临时文件来利用它。当向PHP发送POST请求并且请求包含一个文件块时
  • 温人择沓2022-05-28 19:47:01
  • 1.简介在PHP文件包含漏洞中,当我们找不到用于触发RCE的有效文件时,如果存在PHPINFO(它可以告诉我们临时文件的随机生成的文件名及其位置),我们可能可以包含一个临时文件来利用它。当向PHP发送POST请求并且请求包含一个文件块时,PHP会将所发送的文件保存到一个临时文件中(通常
  • 闹旅九龄2022-05-29 01:19:25
  • hp修改脚本修改包含文件页面和ip地址kali 上监听 nc -lvnp 8080执行exp得到交互shell 4.脚本下载原版脚本 include_exp.zip修改后的脚本m_exp.zip

支持Ctrl+Enter提交

黑资讯 © All Rights Reserved.  
Copyright Copyright 2015-2020 黑资讯
滇ICP备19002590号-1
Powered by 黑客资讯 Themes by 如有不合适之处联系我们
网站地图| 发展历程| 留言建议| 网站管理