深圳 做公司网站/项目宣传推广方案
文章目录
- Apache HTTPD 漏洞复现
- 1. Apache HTTPD 多后缀解析漏洞
- 1.1 漏洞描述
- 1.2 漏洞复现
- 1.3 漏洞利用
- 1.4 获取GetShell
- 1.5 漏洞防御
- 2. Apache HTTPD 换行解析漏洞-CVE-2017-15715
- 2.1 漏洞描述
- 2.2 漏洞复现
- 2.3 漏洞利用
- 2.4 修复建议
- 3. Apache HTTP Server_2.4.49 路径遍历和文件泄露漏洞-CVE-2021-41773
- 3.1 漏洞描述
- 3.2 漏洞复现
- 3.3 漏洞利用
- 3.4 修复建议
- 4. Apache HTTP 服务器 2.4.50 中的路径遍历和文件泄露漏洞-CVE-2021-42013
- 4.1 漏洞描述
- 4.2 漏洞复现
- 4.3 漏洞利用
- 4.4 修复建议
Apache HTTPD 漏洞复现
1. Apache HTTPD 多后缀解析漏洞
链接地址:Vulhub - Docker-Compose file for vulnerability environment。
1.1 漏洞描述
说明 | 内容 |
---|---|
漏洞编号 | 无 |
漏洞名称 | Apache HTTPD 多后缀解析漏洞 |
漏洞评级 | 高危 |
漏洞描述 | 在有多个后缀的情况下,只要一个文件含有.php后缀的文件即将被识别成PHP文件,没必要是最后一个后缀。利用这个特性,将会造成一个可以绕过上传白名单的解析漏洞。 |
修复方案 | 打补丁,上设备,升级组件 |
1.2 漏洞复现
环境启动
访问80端口
1.3 漏洞利用
环境运行起来后访问页面,上传一个文件
显示上传不支持的文件类型
我们可以将文件的后缀名修改为.png的格式来进行上传
显示上传成功,并且显示出来所上传文件的路径。
访问http://your-ip/uploadfiles/wuhu.php.png
即可,发现phpinfo被执行了,该文件被解析为php脚本。
http://your-ip/index.php
中是一个白名单检查文件后缀的上传组件,上传完成后并未重命名。我们可以通过上传文件名为xxx.php.jpg
,xxx.php.png
或xxx.php.jpeg
的文件,利用Apache解析漏洞可以进行getshell。
1.4 获取GetShell
漏洞原因
遇到以.php结尾的文件名后缀,就将其作为php文件执行。也就是所说只要文件后缀名中包含php就将其作为php脚本来执行。
1.5 漏洞防御
- 通过正则方式来对其进行限制;、在配置文件中添加如下内容,匹配样式为 .php. 的文件并拒绝访问(该漏洞环境配置文件位于漏洞环境目录的 conf/docker-php.conf 生产环境中按照具体情况而定)
- 将原本的 AddHandler application/x-httpd-php .php 注释掉,然后利用正则表达式单独为.php的文件添加处理程序
2. Apache HTTPD 换行解析漏洞-CVE-2017-15715
链接地址:Vulhub - Docker-Compose file for vulnerability environment。
2.1 漏洞描述
说明 | 内容 |
---|---|
漏洞编号 | CVE-2017-15715 |
漏洞名称 | Apache HTTPD 换行解析漏洞 |
漏洞评级 | 高危 |
影响范围 | 2.4.0~2.4.29 |
漏洞描述 | Apache HTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞,在解析PHP时,1.php\x0A 将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。 |
修复方案 | 打补丁,上设备,升级组件 |
2.2 漏洞复现
环境启动
启动后Apache运行在http://your-ip:8080
。
2.3 漏洞利用
上传一个名为wuhu.php的文件,被拦截:
使用bp抓包查看
先在wuhu.php后面添加一个点,然后修改其十六进制编码形式。
在wuhu.php后面插入一个\x0A
(注意,不能是\x0D\x0A
,只能是一个\x0A
),不再拦截:
然后发包即可
浏览器访问刚才上传的/wuhu.php%0a
,发现能够成功解析,但这个文件不是php后缀,说明目标存在解析漏洞:
2.4 修复建议
- 更新 Apache HTTPD 版本: 到目前为止,Apache HTTPD 团队已经发布了修复此漏洞的版本。建议尽快升级到最新版本,以确保服务器不受攻击
- 配置过滤换行符: 可以通过配置 Apache 的请求过滤来阻止恶意请求中的换行符。可以使用 mod_security 或其他安全模块来检测和过滤请求中的非法字符。
- 输入验证和过滤: 在处理用户输入数据时,进行严格的输入验证和过滤。特别是对于 HTTP 请求头、参数和路径等用户可控部分,要进行适当的输入验证,确保只有合法的字符和格式被接受。
- 启用安全模块: Apache HTTPD 提供了一些安全模块,如 mod_security 和 mod_rewrite。启用这些模块,并使用适当的规则和过滤器来检测和阻止恶意请求,可以提高服务器的安全性。
3. Apache HTTP Server_2.4.49 路径遍历和文件泄露漏洞-CVE-2021-41773
链接地址:Apache HTTP 服务器 2.4.49 中的路径遍历和文件泄露漏洞 (CVE-2021-41773)
3.1 漏洞描述
说明 | 内容 |
---|---|
漏洞编号 | CVE-2021-41773 |
漏洞名称 | Apache HTTP 服务器 2.4.49 中的路径遍历和文件泄露漏洞 |
漏洞评级 | 高危 |
影响范围 | 2.4.49-2.4.50 |
漏洞描述 | 在 Apache HTTP Server 2.4.49 中对路径规范化所做的更改中发现一个缺陷。攻击者可以使用路径遍历攻击将 URL 映射到预期文档根目录之外的文件。如果这些目录之外的文件不受通常的默认配置“要求全部拒绝”的保护,则这些请求可以成功。如果还为这些别名路径启用了 CGI 脚本,则可能允许远程执行代码。 |
修复方案 | 打补丁,上设备,升级组件 |
3.2 漏洞复现
环境启动
服务器启动后,您通过 .It works!
,http://your-ip:8080
访问页面。
3.3 漏洞利用
一个简单的 CURL 命令来重现漏洞(请注意,必须是现有目录):/icons/
。
使用bp抓取数据包,然后修改即可。
curl -v --path-as-is http://your-ip:8080/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd
在服务器上启用 mods cgi 或 cgid 后,此路径遍历漏洞将允许任意命令执行:
cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh
3.4 修复建议
- 更新 Apache HTTP Server 版本: 确保您的 Apache HTTP Server 版本已经升级到最新的安全版本。Apache 团队已发布了修复此漏洞的补丁,建议尽快更新至官方发布的修复版本。
- 配置文件和目录权限: 检查您的服务器上敏感文件的权限配置。确保只有必要的用户和组才能访问这些文件,并设置适当的权限以防止未授权的访问。
- 过滤请求参数: 使用适当的输入验证和过滤来处理用户提供的请求参数。特别是对于路径参数或其他用户可控的输入,要进行严格的验证和过滤,防止路径遍历攻击。
4. Apache HTTP 服务器 2.4.50 中的路径遍历和文件泄露漏洞-CVE-2021-42013
链接地址:Vulhub - 用于漏洞环境的 Docker-Compose 文件
4.1 漏洞描述
说明 | 内容 |
---|---|
漏洞编号 | CVE-2021-42013 |
漏洞名称 | Apache HTTP 服务器 2.4.50 中的路径遍历和文件泄露漏洞 |
漏洞评级 | 高危 |
影响范围 | 2.4.49~2.4.50 |
漏洞描述 | CVE-2021-42013 是一个漏洞,由 CVE-2021-41773修复不完整导致,攻击者可以使用路径遍历攻击将 URL 映射到类别名指令配置的目录之外的文件。 |
修复方案 | 打补丁,上设备,升级组件 |
4.2 漏洞复现
环境启动
4.3 漏洞利用
Apache HTTP 服务器 2.4.50 修补了以前的 CVE-2021-41773 有效负载,例如 ,但它不完整。
使用bp抓取数据包,然后修改即可。
绕过修补程序(请注意,必须是现有目录):.%%32%65``/icons/
。
/icons/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd
在服务器上启用 mods cgi 或 cgid 后,此路径遍历漏洞将允许任意命令执行:
cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh
4.4 修复建议
- 更新 Apache HTTP Server 版本: 确保您的 Apache HTTP Server 版本已经升级到最新的安全版本。Apache 团队已发布了修复此漏洞的补丁,建议尽快更新至官方发布的修复版本。
- 配置文件和目录权限: 检查您的服务器上敏感文件的权限配置。确保只有必要的用户和组才能访问这些文件,并设置适当的权限以防止未授权的访问。
- 过滤请求参数: 使用适当的输入验证和过滤来处理用户提供的请求参数。特别是对于路径参数或其他用户可控的输入,要进行严格的验证和过滤,防止路径遍历攻击。
相关文章:

Apache HTTPD 漏洞复现
文章目录 Apache HTTPD 漏洞复现1. Apache HTTPD 多后缀解析漏洞1.1 漏洞描述1.2 漏洞复现1.3 漏洞利用1.4 获取GetShell1.5 漏洞防御 2. Apache HTTPD 换行解析漏洞-CVE-2017-157152.1 漏洞描述2.2 漏洞复现2.3 漏洞利用2.4 修复建议 3. Apache HTTP Server_2.4.49 路径遍历和…...

【C++从入门到精通】第2篇:C++基础知识(中)
文章目录 2.1 iostream介绍:cout、cin和endl2.1.1 输入/输出库2.1.2 std::cout2.1.3 std::endl2.1.4 std::cout是缓冲的2.1.5 std::endl与\n2.1.6 std::cin2.1.7 总结2.1.8 练习时间 2.2 未初始化的变量和未定义的行为2.2.1 未初始化的变量2.2.2 未定义行为2.2.3 明…...

【RuoYi移动端】uni-app中实现生成二维码功能(代码示例)
完整示例: <template><view><view class"titleBar">执法检查“通行码”信息</view><view class"twoCode"><canvas canvas-id"qrcode"></canvas></view></view> </templat…...

深度解剖数据在栈中的应用
> 作者简介:დ旧言~,目前大一,现在学习Java,c,c,Python等 > 座右铭:松树千年终是朽,槿花一日自为荣。 > 望小伙伴们点赞👍收藏✨加关注哟💕…...

Android10 SystemUI系列 需求定制(一)状态栏控制中心默认tile定制属性适配
一、前言 SystemUI 所包含的界面和模块比较多,这一节主要分享一下控制中心默认tile 列表的实现,通过配置可以实现 下拉状态栏,控制中心默认的tile显示 二、准备工作 按照惯例先找一下控制中心的代码,主要在下面这个路径下 frameworks/base/packages/SystemUI/src/com/andr…...

【微信小程序】文章设置
设置基本字体样式:行高、首行缩进 font-size: 32rpx;line-height: 1.6em;text-indent: 2em;padding: 20rpx 0;border-bottom: 1px dashed var(--themColor); 两端对齐 text-align: justify; css文字两行或者几行显示省略号 css文字两行或者几行显示省略号_css…...

程序员在线周刊(冒泡算法篇)
大家好,欢迎来到程序员在线周刊!本期我们将深入探讨一种经典的排序算法——冒泡算法,并附上具体的代码实现。 目录 简介代码原理广告广告1广告2广告3 简介 冒泡算法是一种简单但效率较低的排序算法,它的原理非常直观:…...

string
目录 六、STL简介 (一)什么是STL (二)STL的版本 (三)STL六大组件 七、string (一)标准库中的string 1、string类 2、string常用的接口 1)string类对象的常见构造 2)string类对象的容量操作 3)string类对象的访问及遍历操作 4)string类对象的修改操作 5)string类非成…...

html的日期选择插件
1.效果 2.文档 https://layui.gitee.io/v2/docs/ 3.引入 官网地址: https://layui.gitee.io/v2/ 引入(在官网下载,)jquery-1.7.2.min.js,layui/layui.js **<link href"js/layui/css/layui.css" rel"stylesh…...

OPPO哲库事件 “ 始末 ” ! 集体打哑谜?
1►OPPO哲库解散 2019 年,美国商务部以“科技网络安全”为由,将华为公司及其70家附属公司列入出口管制“实体名单”。与此同时,OPPO 创始人兼 CEO陈明永对外宣布,公司将为未来三年内投入 500 亿元用于前沿技术和深水区技术的探索…...

数据聚类分析
K均值 1.1 数据来源(随机生成) import matplotlib.pyplot as plt from sklearn.datasets import make_blobsX, y make_blobs(n_samples150,n_features2,centers3,cluster_std0.5,shuffleTrue,random_state0) # plt.scatter(X[:, 0], X[:, 1], cwhite, markero, edgecolorsbl…...

前 40 个 Microsoft Excel 面试问题答案
1)什么是 Microsoft Excel? Microsoft Excel 是一个电子电子表格应用程序,使用户可以使用按行和列细分的电子表格系统,使用公式存储,组织,计算和处理数据。 它还提供了使用外部数据库进行分析,…...

ros2学习笔记:shell环境变量脚本setup.bash[-z][-n][-f]参数作用
-n作用 [ -n 字符串 ] or [ 字符串 ] 字符串的长度为非零(有内容)则为真。加-n与不加-n结果相同。 -z作用 [ -z 字符串 ] 字符串的长度为零则为真。 字符串为空即NULL时为真,与上面的-n相反。 -f作用 [ -f FILE ] 如果 FILE 存在且是一…...

xss渗透(跨站脚本攻击)
一、什么是XSS? XSS全称是Cross Site Scripting即跨站脚本,当目标网站目标用户浏览器渲染HTML文档的过程中,出现了不被预期的脚本指令并执行时,XSS就发生了。 这里我们主要注意四点: 1、目标网站目标用户; 2、浏览…...

9参数化重采样时频变换,基于MATLAB平台,程序已调通,可直接替换数据进行分析。
参数化重采样时频变换,基于MATLAB平台,程序已调通,可直接替换数据进行分析。 9matlab参数化重采样时频变换 (xiaohongshu.com)...

RK3568平台开发系列讲解(调试篇)系统运行相关频率设置
🚀返回专栏总目录 文章目录 一、CPU 频率设置二、DDR 频率设置三、NPU 频率设置沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 CPU 默认是 interactive 状态,它会根据 CPU 使用率和目标负载来动态地调整 CPU 频率。为获得更高运行速度或者性能评估,我们需要手动固…...

嵌入式:驱动开发 Day2
作业:字符设备驱动,完成三盏LED灯的控制 驱动代码: mychrdev.c #include <linux/init.h> #include <linux/module.h> #include <linux/fs.h> #include <linux/uaccess.h> #include <linux/io.h> #include &q…...

RK3399平台开发系列讲解(入门篇)VIM的基础命令
🚀返回专栏总目录 文章目录 一、Vim 命令速查二、其他命令三、Vim模式沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 本篇将介绍Vim相关命令。 一、Vim 命令速查 简单说明一下,这张图上展示了一个键盘。图中的“•”表示,单个字母不是完整的命令,必须再有进一步…...

Rocky Linux 安装图解(替代centos)服务器+桌面
centos自从20年底转变为不稳定版本后,有很多替代方案 经过近3年的发展,rocky linux算是一个比较好的选择,一是依照red hat企业版来做,二是rocky的发起者也是centos的创始人 如果想安装debian,可以参考:deb…...

webpack 基础配置
常见配置 文件打包的出口和入口webpack如何开启一台服务webpack 如何打包图片,静态资源等。webpack 配置 loader配置 plugin配置sourceMap配置 babel 语法降级等 接下来 , 我们先从webpack的基本配置 开始吧! 在准备 配置之前 , 搭建一个 …...

C语言和mfc按格式读取文件数据
fscanf()函数的功能是从文件中按格式读取一个或多个数据; 例如文件中有一行数据, 22 3.34 hello 则使用 fscanf(fp, "%d%f%s", &a, &f, str) 可一次读取整型、浮点、字符串三个数据; 此函数位于C标准库头文件<stdio…...

SQLyog 各版本下载与安装(目前最新版本为13.2.0)
文章目录 一、SQLyog Ultimate 各版本下载1. For Windows x642. For Windows x86 二、SQLyog Community 各版本下载1. For Windows x642. For Windows x863. For Linux x86_644. For Linux i386 三 、SQLyog 安装四、如何解决SQLyog试用期到期问题五、最后 数据库可视化工具&am…...

CopyOnWrite 容器
CopyOnWrite容器是Java并发包中提供的一种特殊类型的集合,它的特点是在进行修改操作时不会修改原始容器,而是创建一个新的容器副本进行修改,这样可以避免并发修改异常(ConcurrentModificationException)。 主要的CopyOnWrite容器包括: CopyOnWriteArrayList:这是一个基…...

云服务部署:AWS、Azure和GCP比较
🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…...

Linux安装Ansible管理工具
条件情况说明 准备4台机器,是单master集群安装 192.168.186.128 ansible 192.168.186.129 node1 192.168.186.130 node2 192.168.186.131 node3 #永久修改主机名 hostnamectl set-hostname ansible && bash #在ansible上操作 hostnamectl set-hostname n…...

七天学会C语言-第二天(数据结构)
1. If 语句: If 语句是一种条件语句,用于根据条件的真假执行不同的代码块。它的基本形式如下: if (条件) {// 条件为真时执行的代码 } else {// 条件为假时执行的代码 }写一个基础的If语句 #include<stdio.h> int main(){int x 10;…...

高级功能的PID控制器在电离规等真空计线性化处理中的应用
摘要:针对高真空度用皮拉尼计和电离规信号的非线性和线性两种输出规格,为改进高真空度的测量和控制精度,本文提出了线性化处理的解决方案。解决方案的关键是采用多功能超高精度的真空压力控制器,具体内容一是采用控制器自带的最小…...

元素全排列问题的新思路(DFS,递归,计数器)
目录 前言 1,普通DFS实现1~n的元素全排列 2,计数器DFS实现重复元素全排列 总结 前言 我们之前看到的全排列问题的解法都是通过交换法达到的,去重的效果也是通过判断当前元素前是否有相同元素来实现,今天我们带来一个全新的思路…...

机器学习 day35(决策树)
决策树 上图的数据集是一个特征值X采用分类值,即只取几个离散值,同时也是一个二元分类任务,即标签Y只有两个值 上图为之前数据集对应的决策树,最顶层的节点称为根节点,椭圆形节点称为决策节点,矩形节点称…...

小程序引入vant-Weapp保姆级教程及安装过程的问题解决
小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。 本文同时参与 「掘力星计划」,赢取创作大礼包,挑战创作激励金 当你想在小程序里引入vant时,第一步:打开官方文档,第二步ÿ…...