本周学习内容:

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-文件包含漏洞的更多相关文章

  1. 2. DVWA亲测文件包含漏洞

    Low级:     我们分别点击这几个file.php文件 仅仅是配置参数的变化: http://127.0.0.1/DVWA/vulnerabilities/fi/?page=file3.php 如 ...

  2. 文件包含漏洞(DVWA环境中复现)

    LOW: 源代码: <?php // The page we wish to display $file = $_GET[ 'page' ]; ?> 可以看到,low级别的代码对包含的文件 ...

  3. DVWA各级文件包含漏洞

    File Inclusion文件包含漏洞 漏洞分析 程序开发人员通常会把可重复使用的函数写入到单个文件中,在使用某些函数时,直接调用此文件,而无需再次编写,这种调用文件的过程被称为包含. 有时候由于网 ...

  4. Kali学习笔记31:目录遍历漏洞、文件包含漏洞

    文章的格式也许不是很好看,也没有什么合理的顺序 完全是想到什么写一些什么,但各个方面都涵盖到了 能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道 目录遍历漏洞: 应用程序如果有操作文件的功能,限制不严 ...

  5. php伪协议,利用文件包含漏洞

    php支持多种封装协议,这些协议常被CTF出题中与文件包含漏洞结合,这里做个小总结.实验用的是DVWA平台,low级别,phpstudy中的设置为5.4.45版本, 设置allow_url_fopen ...

  6. 本地文件包含漏洞(LFI漏洞)

    0x00 前言 本文的主要目的是分享在服务器遭受文件包含漏洞时,使用各种技术对Web服务器进行攻击的想法. 我们都知道LFI漏洞允许用户通过在URL中包括一个文件.在本文中,我使用了bWAPP和DVW ...

  7. 文件包含漏洞File Inclusion

    文件包含漏洞 目录遍历漏洞在国内外有许多不同的叫法,也可以叫做信息泄露漏洞.非授权文件包含漏洞等. 文件包含分类 LFI:本地文件包含(Local File Inclusion) RFI:远程文件包含 ...

  8. PHP:文件包含漏洞

    简单记录一些文件包含漏洞的常用方法 产生原因: 文件包含漏洞的产生原因是在通过引入文件时,由于传入的文件名没有经过合理的校验,或者校检被绕过,从而操作了预想之外的文件,就可能导致意外的文件泄露甚至恶意 ...

  9. 配合php伪协议利用文件包含漏洞

    文章来源: https://blog.csdn.net/zpy1998zpy/article/details/80598768?utm_medium=distribute.pc_relevant.no ...

  10. PHP文件包含漏洞攻防实战(allow_url_fopen、open_basedir)

    摘要 PHP是一种非常流行的Web开发语言,互联网上的许多Web应用都是利用PHP开发的.而在利用PHP开发的Web应用中,PHP文件包含漏洞是一种常见的漏洞.利用PHP文件包含漏洞入侵网站也是主流的 ...

随机推荐

  1. redis网文

    1.为什么说Redis是单线程的以及Redis为什么这么快!https://blog.csdn.net/chenyao1994/article/details/794913372.Redis上踩过的一 ...

  2. extend Thread 和 implements Runnable

    原文地址:extend Thread 和 implements Runnable 一个Thread的实例只能产生一个线程 or: 同一实例(Runnable实例)的多个线程 look: public ...

  3. js 简单的滑动1

    js 简单的滑动教程(一)   作者:Lellansin 转载请标明出处,谢谢 首先我们要实现一个简单的滑动,三张图.点击左边向左滑动,点右向右滑,碰到临界值的时候就不能滑动. 这个简单滑动的原理是, ...

  4. This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=317567.

    记事本打开csproj文件 搜索nuget 删除Target节点 类似如下: <Target Name="EnsureBclBuildImported" BeforeTarg ...

  5. 数据结构与算法(周测7-拓扑排序和AOV网络)

    判断题 1.AOE图的关键路径就是最长的路径      T      F 2.AOE图的权值最大的边(活动)一定是关键活动.      T      F 两条边相加可能比最大的边还要大. 3.在AOE ...

  6. z7z8记录

    http://www.ypppt.com/ ppt模板地址

  7. input中blur失去焦点事件与点击事件冲突时如何解决

    方法一 使用setTimeout $(function(){ $(".cy-name-input input").on({ focus:function() { $(". ...

  8. vue + elementui 使用多选按钮实现单选功能

    CommonRadio.vue <template> <div> <el-checkbox-group v-model="checkList" @ch ...

  9. 【iOS】去除字符串首尾空格或某字符

    在iOS的实际开发中,常会出现需要去除空格的情况,总结有三种情况: 去除字符串首尾连续字符(如空格): 去除字符串首部连续字符(如空格): 去除字符串尾部连续字符(如空格): 去除字符串首尾连续字符( ...

  10. 使nginx支持pathinfo模式

    在将fastadmin部署到虚拟机中时,遇到如下问题:当访问登录页面时,页面进行不断的循环跳转重定向.解决方法是将nginx配置为支持pathinfo的模式 以下是nginx中的配置内容: locat ...