文件包含漏洞

一,什么是文件包含漏洞

在web后台开发的时候,我们会使用PHP,Java这种代码,而在使用的过程中,我们经常会使用包含函数(也就是调用),而很多时候,前端用户在选择浏览时会调用包含的文件这无可避免,但是开发人员对于要包含的这个文件没有进行安全考虑的时候,就会导致攻击可以通过修改包含文件的位置来让任意代码执行,文件包含漏洞分为本地和远程

本地的用户在访问web时,可以访问Funcition1.php或者2.php文件,由于文件可以被前端用户控制,如果在入口处没有对前端用户进行控制的话把用户传进来的其他文件也包含掉如对本地配置文件进行一定的包含../../php/php.ini从而导致配置文件或其他文件暴漏

如果工程师打开了远程调用的端口,当用户命令包含远程URL(黑客在自己的网站写恶意代码),传入到后台,让后台调用远程的恶意代码到本地,就是远程的文件包含漏洞

二,文件包含漏洞复现

这里复现文件包含漏洞使用的是pikachu靶场

GitHub - zhuifengshaonianhanlu/pikachu: 一个好玩的Web安全-漏洞测试平台

我们先随便进行选择一个,可以很清楚的看到访问的是本地后面的一个php文件

那正常来说我们传入的都是后台正常的文件,但是前端用户可以修改这个文件,比如我的后台是Windows,Windows底下有很多固定的文件如host

我们多敲几个../一直到它根目录下

复制代码
../../../../../../Windows/System32/drivers/etc/hosts

看到现在访问的就是本地文件的host文件

看一下源码

它对本地的文件包含没做任何限制

接下来尝试一下远程文件包含

在尝试之前,先修改一下PHP的配置

将下面的off改成on即可进行远程文件包含

还是一样的,当我们提交后还是目标文件的路径

现在写一个一句话木马

执行

看一下源码

同样没有对文件包含做任何限制

三,如何利用文件包含漏洞

四,防范措施

相关推荐
天人合一peng2 分钟前
unity获得和修改button的text(TMP)
java·前端·unity
枫叶丹44 分钟前
【Qt开发】Qt系统(十)-> Qt HTTP Client
c语言·开发语言·网络·c++·qt·http
esmap5 分钟前
技术深析:ESMAP智慧医院解决方案——基于AOA蓝牙定位的全场景精准感知实现
大数据·网络·人工智能
2601_949146537 分钟前
Go短信验证码接口开发实践:编写一个可直接运行的发送示例
服务器·microsoft·golang
九皇叔叔7 分钟前
【07】SpringBoot3 MybatisPlus 删除(Mapper)
java·开发语言·mybatis·mybatis plus
sheji34168 分钟前
【开题答辩全过程】以 基于Spring Boot的化妆品销售系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
一池秋_9 分钟前
aarch64_Ubuntu (Linux)连不上adb解决方法
linux·ubuntu·adb
犀思云9 分钟前
从0到1:Linux 系统 TCP 缓冲区调优实战指南
服务器·网络·php
_OP_CHEN12 分钟前
【Linux系统编程】(二十四)深入 Ext2 块组内部:inode、数据块与目录的底层工作机制
linux·操作系统·文件系统·c/c++·inode·块组·数据块映射
Skrrapper1 小时前
【计算机网络】ep1:物理层概述
服务器·网络·计算机网络