iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >【文件包含漏洞-03】文件包含漏洞的利用及如何利用本地文件包含漏洞GetShell
  • 340
分享到

【文件包含漏洞-03】文件包含漏洞的利用及如何利用本地文件包含漏洞GetShell

php安全Poweredby金山文档 2023-09-05 15:09:53 340人浏览 泡泡鱼
摘要

文件包含漏洞的利用 读取敏感文件 我们可以利用文件包含漏洞读取任意文件,读取文件的时候有利用条件 目标主机文件存在(目标文件的路径、绝对路径、相对路径) 具有文件可读权限 提交参数Http://localhost/include/

文件包含漏洞的利用

读取敏感文件

我们可以利用文件包含漏洞读取任意文件,读取文件的时候有利用条件

  • 目标主机文件存在(目标文件的路径、绝对路径、相对路径)

  • 具有文件可读权限

  1. 提交参数Http://localhost/include/include.PHP?path=C:\windows\system32\drivers\etc\hosts,读取本地host文件

  1. 提交参数http://localhost/include/include.php?path=http://www.cac.Gov.cn/2021-01/22/c_1612887880656609.htm,读取远程文件,加载远程服务器上的文件

直接包含图片木马

可以利用文件包含漏洞直接包含图片木马

  1. 在include文件夹下新建wx.jpg图片文件

  1. 点击文件右键选择属性,点击版型信息,选择版权,输入一句话木马

  1. 打开浏览器输入http://localhost/include/include.php?path=./wx.jpg,进行访问

  1. 继续输入?path=./wx.jpg&123=print(md5(123456));,我们发现一句话木马能够输出md5值

  1. 复制URL通过包含的方式连接中国蚁剑。打开蚁剑,右键添加数据,如下图所示,测试连接成功

包含木马写shell

我们也可以将如下代码写入到图片中,");?>该段代码的含义是,在当前目录下创建一个名为[shell.php]的文件,内容为[],当我们直接包含图片的时候,这段代码就会被执行。

  1. 在include目录下,复制wx.jpg,重命名为wx_fputs.jpg,通过notepad++打开该文件,随便一行插入代码");?>

  1. 之后打开浏览器正常访问http://localhost/include/wx_fputs.jpg,页面显示如下

  1. 继续输入http://localhost/include/include.php?path=./wx_fputs.jpg,页面显示如下

  1. 随即发现在include文件夹中有个新建文件shell.php,即可用蚁剑连接

PHP封装协议--访问本地文件

我们可以使用php的file协议访问本地系统文件,输入访问http://localhost/include/include.php?path=file://C:\windows\system32\drivers\etc\hosts

tips:我们发现file协议与读取敏感文件中的读取本地host文件的方式是一样的,只是在前面加了file://

PHP封装协议--传输PHP文件

我们可以使用以下参数来传送任意PHP文件(也就是利用文件包含漏洞来传输php文件)。

  1. 访问http://localhost/include/include.php?path=php://filter/read=convert.base64-encode/resource=info.php,发现info.php文件被转换为base64编码了

  1. 打开burp点击decoder模块进行转码(tips:可以通过这种方法获取网站源代码)

PHP封装协议--执行PHP命令

我们还可以利用PHP的封装协议来执行PHP命令

  1. 打开burp,点击repeater模块

  1. 直接输入参数?path=php://input,在后面直接写上,点击send(tips:我们发现可以执行任意的php代码)

注意:远程文件包含默认情况下都是关闭的,传输php文件和执行php命令这两种方法有两种用途:

  1. 是用来打cdf的

  1. 是持久控制的php后门

那么已知一个网站存在本地文件包含漏洞,并且没有上传文件api,如何利用呢?

经典面试题

包含日志文件getshell

实验背景

在上文提到过:已知一个网站且仅存在本地文件包含漏洞,并且没有上传文件API,如何利用呢?

实验目的

利用本地文件包含漏洞GetShell

实验前准备

  1. 查看php版本,修改其配置,找到php-5.4.45版本对应文件夹,将文件php.ini中的allow_url_include参数设置为On,修改后记得保存并重启服务器。

  1. 在该网站根目录下,新建文件FileInclusion,在此文件夹中新建文件include.php,文件内容为

This is include.php!";include $path;?>

实验步骤

由于没有存在文件上传点,而我们又需要服务器本地有个文件存在一句话木马代码,这时候我们想到,日志文件记录报错的方法,就是从日志文件中“写入”一句话木马,然后再利用文件包含来执行日志文件中的一句话木马。具体步骤如下:

  1. 将访问include.php页面的URL链接http://127.0.0.1/FileInclusion/include.php复制,在BurpSuite的repeater模块中右键选择Paste URL as request以URL形式添加请求,点击发送,可以看到成功接收到响应,只是因为没有传递给path变量,所以提示出错。

  1. 在请求行中,将文件路径修改请求为一句话代码,点击send,可以看到响应报错

  1. 服务器在请求报错后,在错误日志中就会增加一条响应记录。我们打开Apache的错误日志,路径为D:\phpStudy\PHPTutorial\Apache\logs\error.log,可以看到新增了一个错误信息,并且该代码没有被引号所包括,能够被文件包含无条件执行

  1. 打开中国蚁剑连接。打开中国蚁剑→添加数据→填写URL地址和连接密码,其中URL地址http://127.0.0.1/FileInclusion/include.php?path=D:\phpStudy\PHPTutorial\Apache\logs\error.log,密码为cmd,点击添加。

  1. 添加在软件主界面可以看到新添加的内容,双击即可管理服务器

tips:

  1. 利用一切可能让服务器本地某个文件中含有一句话木马

  1. 第二步文件包含之让代码执行

  1. 如果网站存在远程文件包含漏洞,攻击者在服务器2号上写一个一句话木马文件,利用网站远程文件包含该文件,并不能Get网站Shell。后续应更加深入理解一句话木马的控制原理,以判断为什么无法实现,初步认为shell代码是在服务器2号上执行的。

扩展:

  • 包含session文件,造成sessionId泄露

  • metinfo5.0.4文件包含漏洞代码审计

来源地址:https://blog.csdn.net/2301_76334474/article/details/129192559

--结束END--

本文标题: 【文件包含漏洞-03】文件包含漏洞的利用及如何利用本地文件包含漏洞GetShell

本文链接: https://www.lsjlt.com/news/395624.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 【文件包含漏洞-03】文件包含漏洞的利用及如何利用本地文件包含漏洞GetShell
    文件包含漏洞的利用 读取敏感文件 我们可以利用文件包含漏洞读取任意文件,读取文件的时候有利用条件 目标主机文件存在(目标文件的路径、绝对路径、相对路径) 具有文件可读权限 提交参数http://localhost/include/...
    99+
    2023-09-05
    php 安全 Powered by 金山文档
  • 文件包含漏洞利用之本地包含配合文件上传包含图片马&&文件包含漏洞利用之远程包含Webshell
    实验原理 文件上传漏洞在绕过内容检测的时候,会制作图片马上传,但是图片马在上传之后,又不能解析。如果网站同时存在文件包含漏洞,利用文件包含无视后缀名,只要被包含的文件内容符合PHP语法规范,任何扩展名都可以被PHP解析的特点来解析上传的图片...
    99+
    2023-10-26
    php 开发语言
  • 文件包含漏洞
    目录 🌻一、理论🍎1.什么是文件包含漏洞?🍎2.文件包含漏洞原因🍎3.文件包含函数🍎4.文件包含漏洞的分类&#x...
    99+
    2023-08-31
    web安全 php 文件包含漏洞
  • ctf include(文件包含漏洞)
    首先看到题目有个关键字include,我们就应该能够猜到这题的主要考点是文件包含 进入靶场 一进去,有个tips让我们点击,那我们点击进去瞅瞅。 果然不出所料,url上面显眼的‘file=’就是我...
    99+
    2023-10-21
    php 开发语言 网络安全
  • 文件包含漏洞总结
    文件包含漏洞总结 CTF中文件包含漏洞0x01 什么是文件包含漏洞0X02 文件包含漏洞的环境要求0X03 常见文件包含函数0X04 PHP伪协议1、PHP:...
    99+
    2023-09-29
    php 文件包含漏洞
  • 文件包含漏洞_练习
    CTFHup_练习 第一关_elval执行 发现源代码里面有一句话木马我们可以复制,地址到中国蚂🗡,然后把cmd填上  发现连接成功 第二个_文件包含 我们查看源代码发现里面有一个连接点开  点开之后发现有一个文件在里面就...
    99+
    2023-09-14
    开发语言 网络安全 php 前端
  • DVWA之文件包含漏洞
    文件包含漏洞原理 1、什么是文件包含 程序开发人员一般会把重复使用的函数写到单个文件中,需要使用某个函数时直接调用此文件,而无需再次编写,这中文件调用的过程一般被称为文件包含。 2、文件包含漏洞 程序开发人员一般希望代码更灵活,所以将被包含...
    99+
    2023-09-09
    php 安全 网络
  • 文件包含漏洞——实例
    一、文件包含漏洞利用之本地包含配合文件上传包含图片马 原理: 文件上传漏洞在绕过内容检测的时候,会制作图片马上传,但是图片马在上传之后,又不能解析。如果网站同时存在文件包含漏洞,利用文件包含无视后缀名,只要被包含的文件内容符合PHP语法规范...
    99+
    2023-09-24
    安全 php 开发语言
  • 文件包含漏洞详解
    文件包含漏洞详解 1.文件包含漏洞介绍1.1.文件包含漏洞解释1.2.文件包含漏洞原理1.3.文件包含的函数1.3.1.常见的文件包含函数1.3.2.PHP函数区别: 1.4.文件包含漏...
    99+
    2023-09-16
    web安全 网络安全 系统安全 http
  • PHP文件包含漏洞(利用phpinfo)复现
    漏洞简介: PHP文件包含漏洞中,如果找不到可以包含的文件,我们可以通过包含临时文件的方法来拿到权限。因为临时文件名是随机的,如果目标网站上存在phpinfo,则可以通过phpinfo来获取临时文件名,进而进行包含。 漏洞利用原理: 在给P...
    99+
    2023-09-03
    php 开发语言 安全
  • 浅谈文件包含之包含pearcmd.php漏洞
    文件包含之包含pearcmd.php漏洞 1.概念 pecl是PHP中用于管理扩展而使用的命令行工具,而pear是pecl依赖的类库。在7.3及以前,pecl/pear是默认安装的; 在7.4及以后,需要我们在编译PHP的时候指定--wit...
    99+
    2023-09-02
    php web安全 安全
  • ThinkPHP文件包含漏洞分析
    出品|长白山攻防实验室(ID:A_Tree) 0x00 声明 以下内容,来自长白山攻防实验室的A_Tree作者原创,由于传播,利用此文所提供的信息而造成的任何直接或间接的后果和损失,均由使用者本人负责,长白山攻防实验室以及文章作...
    99+
    2023-09-08
    安全 php web安全
  • PHP文件包含哪些漏洞
    这篇文章主要介绍了PHP文件包含哪些漏洞的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇PHP文件包含哪些漏洞文章都会有所收获,下面我们一起来看看吧。漏洞描述文件包含漏洞的产生原因是在通过PHP的函数引入文件时,...
    99+
    2023-06-30
  • 文件操作之文件包含漏洞
    目录 本文仅供参考、交流、学习,如有违法行为后果自负 文件包含类型 原理方面 文件包含漏洞原理案例: 必要条件 那么如何去检测漏洞是否存在该漏洞? 白盒 黑盒 类型 本地文件包含 无限制  有限制 远程文件包含 无限制 有限制  利用 协议...
    99+
    2023-10-24
    php 开发语言
  • dedecms远程文件包含漏洞
    利用前提存在重装漏洞 在自己网站准备一个远程文件 http://www.d.com/install/index.php.bakstep=11&insLockfile=a&s_lang=a&inst...
    99+
    2023-09-07
    php 安全 web安全
  • 文件包含漏洞(原理及介绍)
    文件包含漏洞(原理及介绍) File inclusion,文件包含(漏洞)。程序开发人员通常出于灵活性的考虑,会将被包含的文件设置成变量,然后动态调用这些文件。但正是因为调用的灵活性导致用户可能调用一...
    99+
    2023-09-05
    php 安全 web安全
  • WEB渗透之文件包含漏洞
    1.文件包含 1.1原理: 服务器执行的php文件中可能包含木马文件或者恶意代码 1.2漏洞产生原因 web采用include()等文件包含函数通过动态变量的方式引入需要包含的文件 静态包含使用include指令,动态包含使用inclu...
    99+
    2023-09-12
    安全 web安全
  • 文件包含漏洞全面详解
    文件包含漏洞总结 一、什么是文件包含漏洞二、本地文件包含漏洞(LFI)三、LFI漏洞利用技巧1.配合文件上传使用2.包含Apache日志文件3.包含SESSION文件4.包含临时文件 四、...
    99+
    2023-08-31
    php web安全 开发语言
  • ctf攻防渗透-文件包含-文件包含漏洞详解
    文件包含概念 程序开发人员会把重复使用的函数、变量、类等数据写到单个文件中,需要使用到里面的数据时直接调用此文件,而无需再次编写,这种文件调用的过程称为文件包含。 文件包含相关函数 require( ...
    99+
    2023-09-18
    安全 web安全
  • php中什么文件包含漏洞
    这篇文章将为大家详细讲解有关php中什么文件包含漏洞,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、LFI本地文件包含漏洞,顾名思义,指的是能打开并包含本地文件的漏洞。大部分情况下遇到的文件包含漏洞都是...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作