【文件包含漏洞】简介、原理、危害、分类

举报
黑色地带(崛起) 发表于 2023/02/16 23:00:57 2023/02/16
【摘要】 【文件包含漏洞】简介、原理、危害、分类

【文件包含漏洞】简介、原理、危害、分类

目录

一、前言:

二、简介:

三、原理:

四、危害:

五、系统默认配置文件目录

5.1、Linux:

5.2、TomCat:

5.3、Windows:

六、分类:

6.1、本地文件包含漏洞

6.2、远程文件包含漏洞

 编辑

 (星光不负赶路人)


一、前言:

文件包含就像我们编写C、python、Java程序的时候都有用到包含内置的源文件,也就相当于将指定源文件内容复制到当前文件,好比C语言中的#include "file" 和 #include <file>,都包含文件。


二、简介:

文件包含漏洞,开发人员未免避免代码的重复写入,也就是在开发过程中将各个功能或基础文件分为多个模块,然后在需要的代码中包含其他文件/模块

即文件将A包含到B文件后,B文件中就包含了A、B文件。



三、原理:

文件包含漏洞

是当服务器开启allow_url_include选项后,可包含文件被设置为变量,用户可以通过利用某些函数改变变量进而引入要包含的文件,并能控制这个动态变量,如果被恶意利用,而服务器端未如果未文件的变量值进行严格校验,或者被攻击者绕过校验,从而导致恶意代码的注入,就导致了文件包含漏洞的产生。

前提:

allow_url_include=1,即允许远程包含


四、危害:

敏感信息泄露(网站源码、配置文件、系统日志等)

配合上传漏洞获取Webshell(图片马等)

执行任意脚本代码(远程执行.php脚本代码)

控制服务器(能执行任意命令)



五、系统默认配置文件目录

5.1、Linux:

/etc/passwd

        //保存了系统中所有的用户信息

/etc/shadow

        //用户的密码信息

/root/.ssh/authorized_keys

        //公钥文件

/root/.bash_history

        //用户终端操作历史记录

/usr/local/app/apache2/conf/httpd.conf

        //apache2默认配置文件

/usr/local/app/apache2/conf/extra/httpd-vhosts.conf

        //虚拟网站设置

/usr/local/app/php5/lib/php.ini

        //php相关设置

/etc/httpd/conf/httpd.conf

        //apache

/etc/php5/apache2/php.ini

        //ubuntu系统的默认路径

5.2、TomCat:

apache-tomcat-8.5.51/conf/tomcat-users.xml

        //tomcat的角色(授权用户)配置文件

apache-tomcat-8.5.51/conf/server.xml 

        //tomcat的主配置文件

apache-tomcat-8.5.51/conf/web.xml

        //tomcat应用程序的部署描述符文件

apache-tomcat-8.5.51/logs/catalina.out

         //即tomcat的标准输出和标准出错,所有输出到这两个位置的都会进入catalina.out,这里包含tomcat运行自己输出的日志以及应用里向console输出的日志。

5.3、Windows:

C:\boot.ini

        //查看系统版本

C:\windows\system32\inetsrv\MetaBase.xml

        //查看IIS虚拟主机配置文件

C:\windows\repair\sam

        //存储Windows系统初次安装的密码

C:\Program Files\mysql\my.ini

        //mysql配置,记录管理员登陆过的MYSQL用户名和密码

C:\Program Files\mysql\data\mysql\user.MYD

        //mysql.user表中的数据库连接密码

C:\windows\php.ini php.ini

        //php配置文件

C:\Windows\system.in

        //winnt的php配置信息

C:\Windows\win.ini

        //winnt的mysql配置文件

C:\Program Files\RhinoSoft.com\Serv-U\ServUDaemon.ini

        //存储虚拟主机网站路径和密码

C:\Program Files\Apache Group\Apache\conf\httpd.conf 或C:\apache\conf\httpd.conf

        //查看WINDOWS系统apache文件

C:/Resin-3.0.14/conf/resin.conf

        //查看jsp开发的网站resin文件配置信息.

C:\Windows\System32\drivers\etc\hostswinserver

        //配置Telnet信息


编辑



六、分类:

6.1、本地文件包含漏洞

本地文件包含LFI(local file include)

顾名思义,对服务器的本地文件进行包含(也就是能控制服务器本地文件),然后利用本地文件包含,对系统敏感的配置文件进行包含。如果结合文件上传漏洞,然后将恶意文件下载到本地,再包含这些恶意文件,就能形成更大的危害。



6.2、远程文件包含漏洞

远程文件包含RFI(remote file include)

顾名思义,对第三方的服务器文件进行远程文件包含(也就是远程包含),如果通过URL地址对第三方服务器的恶意文件进行包含(调用其他网站的恶意文件),产生的危害更大(好像都没必要利用文件上传漏洞了)

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。