dvwa文件包含漏洞

文章详细解释了PHP中的文件包含漏洞,包括require、include等函数的工作原理,以及黑客如何利用这些漏洞进行系统信息泄露和木马植入。提到了本地和远程文件包含的区别,以及通过配置php.ini文件允许远程包含的条件。还讨论了中级和高级防范措施,如使用fnmatch函数进行过滤。
摘要由CSDN通过智能技术生成

解释:

文件包含漏洞:指用以下函数调用需要的的文件,在此过程中可以被黑客利用,更改被调用的函数,导致系统信息泄露。主要分为本地包含和远程包含。

require():只要程序一运行就包含文件,找不到被包含的文件时会产生致命错误,并停止脚本

require_once():功能与requir()相同区别在于当重复调用一个文件时,程序只调用一次

include():执行到include()函数时才包含文件,找不到被包含文件时只会产生警告,脚本将继续执行

include_once():功能和includ()相同,区别当重复调用一个文件时,程序只调用一次

nighcight_file(),show_source()函数对文件进行语法高亮显示,通常能看到源代码

readfile(),file_get_contents()函数读取一个文件,并写入输出缓冲

fopen(),打开一个文件或者url

Low:

在这里插入图片描述

1.测试调用/etc/host,出现报错,得到绝对路径
在这里插入图片描述

2.利用…/…/可以遍历文件目录,查看敏感信息
在这里插入图片描述

3.可以通过文件上传木马,通过相对路径或者绝对路径访问执行木马
创建木马:
在这里插入图片描述
通过dvwa的文件上传漏洞上传
在这里插入图片描述

文件包含访问执行得到版本信息
在这里插入图片描述

4.远程建立web服务,包含上去
通过kali上apache2建立web服务
在这里插入图片描述
在这里插入图片描述

开启服务
在这里插入图片描述
查看运行状态和版本
在这里插入图片描述
在这里插入图片描述

Web服务建立成功,通过IP地址+文件名访问
在这里插入图片描述

5.远程文件包含漏洞包含的是其它服务器上的php文件。需要满足两个条件在php.ini中。当php.ini中的配置选项allow_url_fopen:on allow_url_include:on,对方开启这两个配置时才可以使用。需修改以下2个配置文件
(1)此配置文件dvwa默认开启
在这里插入图片描述

(2)cd /etc/php/apache2/8.2/php.ini
进入这个文件修改,这两个参数在比较后面,要翻一会
(3)执行(因为环境问题,换了8.2.2版本的php搭的dvwa,所以不是原来的5.2.4版本)
在这里插入图片描述

Medium

在这里插入图片描述
中级主要是对url进行过滤,我们可以通过双写,大小写等方式绕过。要注意的是str_replace只会对字符替换一次。
所用方法与low等级一样,

High

在这里插入图片描述

使用 fnmatch() 函数来检查变量 page 值的开头必须是 file或者file是include.php文件,否则就不执行。
在前面添加file://
在这里插入图片描述

成功

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值