DVWA-文件包含漏洞
本周学习内容:
1.学习web安全深度剖析;
2.学习安全视频;
3.学习乌云漏洞;
4.学习W3School中PHP;
实验内容:
进行DVWA文件包含实验
实验步骤:
Low
1.打开DVWA,进入DVWA Security模块将 Level修改为Low,点击Submit提交;

2.打开File Inclusion文件包含漏洞模块。

3.点击View Source查看服务器代码,发现对Page参数没有任何过滤和校验

4.导致的就是page参数的传入是不可控,构造url http://localhost:8088/dvwa/vulnerabilities/fi/?page=php.ini

5.发现没有成功页面报错了,但是错误信息中暴露了服务器的绝对路径,接下来使用服务器绝对路径,接下来可以利用服务器绝对路径进行伪造http://localhost:8088/dvwa/vulnerabilities/fi/?page=C:\tools\xampp\htdocs\dvwa\php.ini

6.利用绝对路径查看PHP配置文件http://localhost:8088/dvwa/vulnerabilities/fi/?page=C:\tools\xampp\htdocs\dvwa\phpinfo.php

远程文件包含:
1.如果服务器的php.ini配置文件中,选项allow_url_fopen与allow_url_include为On时,服务器会允许包含远程服务器上的文件,如果对文件来源没有检查的话,就容易导致任意远程代码执行。编辑一个txt文件phpinfo1.txt文件,这里的代码只是打印一句话

2.进入文件上传File Upload模块上传phpinfo1.txt文件,并复制上传链接的相对路径

2.回到文件包含模块构造URL,http://localhost:8088/dvwa/vulnerabilities/fi/?page=http://169.254.167.216:8088/dvwa/hackable/uploads/phpinfo1.txt点击进入,可以看到txt文件中的php脚本成功显示在页面上

Medium
1.打开DVWA,进入DVWA Security模块将 Level修改为Medium,点击Submit提交;

2.打开File Inclusion文件包含漏洞模块。

3.查看服务器源代码,发现中级代码中增加了对输入的校验,使用str_replace函数将输入信息中的http、https、../和../"替换为空


4.此时可以使用双写hthttp://tp://进行远程文件包含的方法进行实验,这是因为代码中把http://删除,所以输入的URL有变成了http://(HTTPS也是一样的)

High
1.打开DVWA,进入DVWA Security模块将 Level修改为High,点击Submit提交;

2.打开File Inclusion文件包含漏洞模块。

3.查看服务器源代码,High级别的代码使用了fnmatch函数检查page参数,要求page参数的开头必须是file,服务器才会去包含相应的文件。

4.当把一个本地文件拖入浏览器打开时,用的就是file协议。

5.构造url http://localhost:8088/dvwa/vulnerabilities/fi/?page=file:///C:/tools/xampp/htdocs/dvwa/hackable/uploads/phpinfo1.txt

Impossible
1.打开DVWA,进入DVWA Security模块将 Level修改为Impossible,点击Submit提交;

2.打开File Inclusion文件包含漏洞模块

3.查看服务器源代码,可以看出Impossible级别的代码,使page的参数是能为“include.php”、“file1.php”、“file2.php”、“file3.php”,限制访问的页面页面。只能访问页面中的这三个文件

DVWA-文件包含漏洞的更多相关文章
- 2. DVWA亲测文件包含漏洞
Low级: 我们分别点击这几个file.php文件 仅仅是配置参数的变化: http://127.0.0.1/DVWA/vulnerabilities/fi/?page=file3.php 如 ...
- 文件包含漏洞(DVWA环境中复现)
LOW: 源代码: <?php // The page we wish to display $file = $_GET[ 'page' ]; ?> 可以看到,low级别的代码对包含的文件 ...
- DVWA各级文件包含漏洞
File Inclusion文件包含漏洞 漏洞分析 程序开发人员通常会把可重复使用的函数写入到单个文件中,在使用某些函数时,直接调用此文件,而无需再次编写,这种调用文件的过程被称为包含. 有时候由于网 ...
- Kali学习笔记31:目录遍历漏洞、文件包含漏洞
文章的格式也许不是很好看,也没有什么合理的顺序 完全是想到什么写一些什么,但各个方面都涵盖到了 能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道 目录遍历漏洞: 应用程序如果有操作文件的功能,限制不严 ...
- php伪协议,利用文件包含漏洞
php支持多种封装协议,这些协议常被CTF出题中与文件包含漏洞结合,这里做个小总结.实验用的是DVWA平台,low级别,phpstudy中的设置为5.4.45版本, 设置allow_url_fopen ...
- 本地文件包含漏洞(LFI漏洞)
0x00 前言 本文的主要目的是分享在服务器遭受文件包含漏洞时,使用各种技术对Web服务器进行攻击的想法. 我们都知道LFI漏洞允许用户通过在URL中包括一个文件.在本文中,我使用了bWAPP和DVW ...
- 文件包含漏洞File Inclusion
文件包含漏洞 目录遍历漏洞在国内外有许多不同的叫法,也可以叫做信息泄露漏洞.非授权文件包含漏洞等. 文件包含分类 LFI:本地文件包含(Local File Inclusion) RFI:远程文件包含 ...
- PHP:文件包含漏洞
简单记录一些文件包含漏洞的常用方法 产生原因: 文件包含漏洞的产生原因是在通过引入文件时,由于传入的文件名没有经过合理的校验,或者校检被绕过,从而操作了预想之外的文件,就可能导致意外的文件泄露甚至恶意 ...
- 配合php伪协议利用文件包含漏洞
文章来源: https://blog.csdn.net/zpy1998zpy/article/details/80598768?utm_medium=distribute.pc_relevant.no ...
- PHP文件包含漏洞攻防实战(allow_url_fopen、open_basedir)
摘要 PHP是一种非常流行的Web开发语言,互联网上的许多Web应用都是利用PHP开发的.而在利用PHP开发的Web应用中,PHP文件包含漏洞是一种常见的漏洞.利用PHP文件包含漏洞入侵网站也是主流的 ...
随机推荐
- Pair(二进制处理+数位dp)(2019牛客暑期多校训练营(第七场))
示例: 输入: 33 4 24 5 27 8 5 输出:5 7 31 题意:存在多少对<x,y>满足x&y>C或x^y<C的条件.(0<x<=A,0< ...
- ES6之reduce和reduceRight方法应用实例
for循环是最基本的遍历循环,但是有些时候并不是很实用,且效率和性能较低,故本文列举出工作学习中碰到的reduce方法应用实例,供自己揣摩熟练应用,以提高自己的研发水平和研发效率. reduce方法( ...
- [winfrom]C#中使用SendMessage
在C#中,程序采用了的驱动采用了事件驱动而不是原来的消息驱动,虽然.net框架提供的事件已经十分丰富,但是在以前的系统中定义了丰富的消息对系统的编程提供了方便的实现方法,因此在C#中使用消息有时候还是 ...
- springboot笔记07——整合MyBatis
前言 Springboot 整合 MyBatis 有两种方式,分别是:"全注解版" 和 "注解.xml混合版". 创建项目 创建Springboot项目,选择依 ...
- Mycat分布式数据库架构解决方案--rule.xml详解
echo编辑整理,欢迎转载,转载请声明文章来源.欢迎添加echo微信(微信号:t2421499075)交流学习. 百战不败,依不自称常胜,百败不颓,依能奋力前行.--这才是真正的堪称强大!!! 该文件 ...
- 使用sequelize对数据库进行增删改查
由于本人对于命令比较执着,所以基本都是在命令下操作的,喜欢使用命令的可以使用Cmder,需要安装.配置的可以参考这篇文章: https://www.cnblogs.com/ziyoublog/p/10 ...
- MySQL JOIN 连接时,条件为以逗号分隔的字段与 ID 相匹配
一.背景 有一张相片表,一张相片所属标签表,一张相片可以归属于多个标签,表结构如下: 现在需要通过一次查询,得到每一张照片对应的标签名称,标签名称之间以固定的分隔符连接,结果如下图: 二.查询语句 原 ...
- iOS 简化冗余代码
正在给深圳某家智能家居开发iPad版本,在已经存在的iPhone版上修改,该app的界面采用的是xib.xib相比代码来写界面,快速高效,但是可维护性和可读性太差.言归正传,看到这些代码后,我的心情很 ...
- 解决 Orange Pi 烧录完系统后剩余可用空间过少的问题
输入命令 df -ha 这图是拿别人的 看到系统才使用3.2g,内存卡有16g,不可能满的. 执行命令,加上sudo,防止权限不够: sudo fs_resize 如果上面那个不行的话,试试这个命令( ...
- uc/xi
一个较为通用的定义为:嵌入式系统是对对象进行自动控制而使其具有智能化并可嵌入对象体系统中的专用计算机系统. 实时性:目前,嵌入式系统广泛应用于生产过程控制.数据采集.传输通信等场合,这些应用的共同特点 ...