当前位置: 首页 > news >正文

Rocky Linux 9 系统OpenSSH CVE-2024-6387 漏洞修复

Rocky Linux 9系统 OpenSSH CVE-2024-6387 漏洞修复

  • 1、漏洞修复
  • 2、修复思路
  • 3、修复方案
    • 3.1、方案一
    • 3.2、方案二
  • 4、总结
  • 5、参考

1、漏洞修复

CVE-2024-6387:regreSSHion:OpenSSH 服务器中的远程代码执行(RCE),至少在基于 glibc 的 Linux 系统上可被利用。

根据 oss-security - CVE-2024-6387: RCE in OpenSSH’s server, on glibc-based Linux systems 的发现并由 oss-security - Announce: OpenSSH 9.8 released 上游总结,在 Portable OpenSSH 版本 8.5p1 至 9.7p1(含)中,sshd(8) 存在一个严重漏洞,可能允许以 root 权限执行任意代码。

在 32 位的 Linux/glibc 系统上,成功利用该漏洞已被证明,且需要启用地址空间布局随机化(ASLR)。在实验室条件下,攻击平均需要 6-8 小时的持续连接,直到服务器达到最大连接数为止。目前尚未证明在 64 位系统上可以利用该漏洞,但认为这可能是可行的。这些攻击很有可能会得到进一步改进。

公开披露日期: 2024年7月1日

影响范围: Rocky Linux 9

**修复版本:**8.7p1-38.el9_4.security.0.5 2024 年 7 月 1 日可用。

不受影响: Rocky Linux 8

2、修复思路

安装 8.7p1-38.el9_4.security.0.5 即可。

3、修复方案

方案一采用在线方式修复,方案二采用离线方式修复。根据自身的网络环境采用对应的方式进行修复

3.1、方案一

# 查看当前版本
[root@localhost ~]# rpm -qa | grep openssh
openssh-8.7p1-38.el9.x86_64
openssh-clients-8.7p1-38.el9.x86_64
openssh-server-8.7p1-38.el9.x86_64# 安装更新源
[root@localhost ~]# dnf install -y rocky-release-security
Last metadata expiration check: 1:16:01 ago on Wed 03 Jul 2024 09:08:38 AM CST.
Dependencies resolved.
================================================================================================================================================================================================================================================================Package                                                                   Architecture                                              Version                                                    Repository                                                 Size
================================================================================================================================================================================================================================================================
Installing:rocky-release-security                                                    noarch                                                    9-4.el9                                                    extras                                                    9.5 kTransaction Summary
================================================================================================================================================================================================================================================================
Install  1 PackageTotal download size: 9.5 k
Installed size: 3.2 k
Downloading Packages:
rocky-release-security-9-4.el9.noarch.rpm                                                                                                                                                                                        38 kB/s | 9.5 kB     00:00    
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                                                                            38 kB/s | 9.5 kB     00:00     
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing        :                                                                                                                                                                                                                                        1/1 Installing       : rocky-release-security-9-4.el9.noarch                                                                                                                                                                                                  1/1 Running scriptlet: rocky-release-security-9-4.el9.noarch                                                                                                                                                                                                  1/1 Verifying        : rocky-release-security-9-4.el9.noarch                                                                                                                                                                                                  1/1 Installed:rocky-release-security-9-4.el9.noarch                                                                                                                                                                                                                         Complete!# 禁用 SIG/Security security-common repo
[root@localhost ~]# dnf config-manager --disable security-common# 升级 openssh
[root@localhost ~]# dnf --enablerepo=security-common -y update openssh\*
Rocky Linux 9 - SIG Security Common                                                                                                                                                                                              35 kB/s | 117 kB     00:03    
Last metadata expiration check: 0:00:01 ago on Wed 03 Jul 2024 10:25:04 AM CST.
Dependencies resolved.
================================================================================================================================================================================================================================================================Package                                                      Architecture                                        Version                                                                    Repository                                                    Size
================================================================================================================================================================================================================================================================
Upgrading:openssh                                                      x86_64                                              8.7p1-38.el9_4.security.0.5                                                security-common                                              453 kopenssh-clients                                              x86_64                                              8.7p1-38.el9_4.security.0.5                                                security-common                                              693 kopenssh-server                                               x86_64                                              8.7p1-38.el9_4.security.0.5                                                security-common                                              435 kTransaction Summary
================================================================================================================================================================================================================================================================
Upgrade  3 PackagesTotal download size: 1.5 M
Downloading Packages:
(1/3): openssh-server-8.7p1-38.el9_4.security.0.5.x86_64.rpm                                                                                                                                                                    122 kB/s | 435 kB     00:03    
(2/3): openssh-8.7p1-38.el9_4.security.0.5.x86_64.rpm                                                                                                                                                                           125 kB/s | 453 kB     00:03    
(3/3): openssh-clients-8.7p1-38.el9_4.security.0.5.x86_64.rpm                                                                                                                                                                   171 kB/s | 693 kB     00:04    
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                                                                           331 kB/s | 1.5 MB     00:04     
Rocky Linux 9 - SIG Security Common                                                                                                                                                                                             1.6 MB/s | 1.7 kB     00:00    
Importing GPG key 0x0FE8D526:Userid     : "Rocky Linux 9 SIGs - Security <releng@rockylinux.org>"Fingerprint: 23DC 35EB E743 BAB0 CED2 1D20 8D79 B737 0FE8 D526From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-Rocky-SIG-Security
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing        :                                                                                                                                                                                                                                        1/1 Running scriptlet: openssh-8.7p1-38.el9_4.security.0.5.x86_64                                                                                                                                                                                             1/6 Upgrading        : openssh-8.7p1-38.el9_4.security.0.5.x86_64                                                                                                                                                                                             1/6 Running scriptlet: openssh-server-8.7p1-38.el9_4.security.0.5.x86_64                                                                                                                                                                                      2/6 Upgrading        : openssh-server-8.7p1-38.el9_4.security.0.5.x86_64                                                                                                                                                                                      2/6 Running scriptlet: openssh-server-8.7p1-38.el9_4.security.0.5.x86_64                                                                                                                                                                                      2/6 Upgrading        : openssh-clients-8.7p1-38.el9_4.security.0.5.x86_64                                                                                                                                                                                     3/6 Running scriptlet: openssh-clients-8.7p1-38.el9_4.security.0.5.x86_64                                                                                                                                                                                     3/6 Running scriptlet: openssh-clients-8.7p1-38.el9.x86_64                                                                                                                                                                                                    4/6 Cleanup          : openssh-clients-8.7p1-38.el9.x86_64                                                                                                                                                                                                    4/6 Running scriptlet: openssh-server-8.7p1-38.el9.x86_64                                                                                                                                                                                                     5/6 Cleanup          : openssh-server-8.7p1-38.el9.x86_64                                                                                                                                                                                                     5/6 Running scriptlet: openssh-server-8.7p1-38.el9.x86_64                                                                                                                                                                                                     5/6 Cleanup          : openssh-8.7p1-38.el9.x86_64                                                                                                                                                                                                            6/6 Running scriptlet: openssh-8.7p1-38.el9.x86_64                                                                                                                                                                                                            6/6 Verifying        : openssh-server-8.7p1-38.el9_4.security.0.5.x86_64                                                                                                                                                                                      1/6 Verifying        : openssh-server-8.7p1-38.el9.x86_64                                                                                                                                                                                                     2/6 Verifying        : openssh-clients-8.7p1-38.el9_4.security.0.5.x86_64                                                                                                                                                                                     3/6 Verifying        : openssh-clients-8.7p1-38.el9.x86_64                                                                                                                                                                                                    4/6 Verifying        : openssh-8.7p1-38.el9_4.security.0.5.x86_64                                                                                                                                                                                             5/6 Verifying        : openssh-8.7p1-38.el9.x86_64                                                                                                                                                                                                            6/6 Upgraded:openssh-8.7p1-38.el9_4.security.0.5.x86_64                                      openssh-clients-8.7p1-38.el9_4.security.0.5.x86_64                                      openssh-server-8.7p1-38.el9_4.security.0.5.x86_64                                     Complete!# 确保 openssh-8.7p1-38.el9_4.security.0.5 已安装
[root@localhost ~]# rpm -q openssh
openssh-8.7p1-38.el9_4.security.0.5.x86_64[root@localhost ~]# rpm -qa | grep openssh
openssh-8.7p1-38.el9_4.security.0.5.x86_64
openssh-server-8.7p1-38.el9_4.security.0.5.x86_64
openssh-clients-8.7p1-38.el9_4.security.0.5.x86_64# 因为安装过程中会自动重启 sshd 服务,所以安装完后无需再手动重启服务
[root@localhost ~]# systemctl status sshd
● sshd.service - OpenSSH server daemonLoaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; preset: enabled)Active: active (running) since Wed 2024-07-03 10:18:42 CST; 34s ago # 重启时间Docs: man:sshd(8)man:sshd_config(5)Main PID: 64456 (sshd)Tasks: 1 (limit: 48933)Memory: 1.1MCPU: 14msCGroup: /system.slice/sshd.service└─64456 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups"Jul 03 10:18:42 localhost systemd[1]: Starting OpenSSH server daemon...
Jul 03 10:18:42 localhost sshd[64456]: Server listening on 0.0.0.0 port 22.
Jul 03 10:18:42 localhost systemd[1]: Started OpenSSH server daemon.

3.2、方案二

下载需要升级的安装包
在这里插入图片描述
编制安装脚本。

#!/bin/bash
set -e
echo -e "=======================================温馨提醒========================================="
echo -e "=== 1.本次安装升级OpenSSh9.8将同时升级OpenSSL版本至3.2.0,务必确保应用及产品兼容性。 ==="
echo -e "=== 2.建议提供其他能够链接至服务器的工具如Telnet防止升级失败导致服务器无法登录。     ==="
echo -e "=== 3.默认配置文件为/etc/ssh/sshd_config,若为自定义路径请修改脚本中SSH_CONFIG路径   ==="
echo -e "========================================================================================"function OpenSSH_update() {yum localinstall -y openssh-*#cp -a /etc/ssh/ssh_host_* /tmp#rm -rf /etc/ssh/ssh_host_*#默认配置文件SSH_CONFIG=/etc/ssh/sshd_configCOUNTERS=0while [ ! -f ${SSH_CONFIG} ] && [ ${COUNTERS} -lt 3 ]; doecho -e "默认配置文件${SSH_CONFIG}不存在,请确认sshd_config配置文件位置。"read -p "请输入sshd_config文件路径,(例:/etc/ssh/sshd_config) :" SSH_CONFIGCOUNTERS=$((COUNTERS+1))doneif [ ${COUNTERS} -eq 3 ]; thenecho "已经达到最大重试次数,升级脚本自动退出,请确认配置文件路径后在次运行脚本。"exit 1fiecho -e "默认配置文件为${SSH_CONFIG}"#备份配置文件到/tmpcp -a ${SSH_CONFIG} /tmp#表示指定将接受用于基于主机的身份验证的密钥类型。if ! grep -q '^PubkeyAcceptedAlgorithms' "${SSH_CONFIG}"; thensed -i '$a\PubkeyAcceptedAlgorithms +ssh-rsa' "${SSH_CONFIG}"fi# 表示指定公钥认证允许的密钥类型。if ! grep -q '^PubkeyAcceptedKeyTypes' "${SSH_CONFIG}"; thensed -i '$a\PubkeyAcceptedKeyTypes +ssh-rsa' "${SSH_CONFIG}"fi# 表示指定服务器提供的主机密钥算法。if ! grep -q '^HostKeyAlgorithms' "${SSH_CONFIG}"; thensed -i '$a\HostKeyAlgorithms +ssh-rsa' "${SSH_CONFIG}"fi#PubkeyAcceptedKeyTypes +ssh-rsa
#HostKeyAlgorithms +ssh-rsaecho -e "重启sshd服务......"systemctl restart sshdif [ -n "$(systemctl status sshd | grep "active (running)")" ]; then echo "OpenSSH 升级成功"exit 0else echo "重启sshd服务异常,请手动检查错误信息(systemctl status sshd -l)"exit 1fi}function main() {while truedoread -p "请确认是否继续升级操作(Y/N)" yncase ${yn} in[Yy] ) echo "开始升级......"; OpenSSH_update;;[Nn] ) echo "退出"; exit 0; break;; * ) echo "请输入Yy/Nn";;esacdone
}main

将安装包和脚本上传至服务器,运行脚本。

4、总结

互联网接入环境中推荐方案一,离线情况下使用方案二操作。

5、参考

Rocky Linux 9 & RedHat 系 OpenSSH CVE-2024-6387 漏洞快速修复

相关文章:

  • 7/3 第六周 数据库的高级查询
  • 百亿红利市场年增速超20%,3亿银发族带动中老年奶粉三大内卷方向
  • 主流国产服务器操作系统技术分析
  • ubuntu 18 虚拟机安装(4)安装 postgres sql 数据库
  • firewalld防火墙(二)
  • Sping源码(九)—— Bean的初始化(非懒加载)—mergeBeanDefinitionPostProcessor
  • 巴图制自动化Profinet协议转Modbus协议模块连接PLC和电表通信
  • opencv 处理图像去噪的几种方法
  • Spring系统学习-什么是AOP?为啥使用AOP?
  • 将一个立方体对象的值赋给另一个立方体对象
  • 理解论文笔记:基于贝叶斯网络和最大期望算法的可维护性研究
  • ubuntu修改磁盘挂载目录名
  • 网络物理隔离
  • C++ 运算符的优先级和结合性表
  • 停车场车牌识别计费系统,用Python如何实现?
  • @jsonView过滤属性
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • iBatis和MyBatis在使用ResultMap对应关系时的区别
  • JAVA SE 6 GC调优笔记
  • JS笔记四:作用域、变量(函数)提升
  • Js实现点击查看全文(类似今日头条、知乎日报效果)
  • leetcode讲解--894. All Possible Full Binary Trees
  • React Native移动开发实战-3-实现页面间的数据传递
  • Vue学习第二天
  • 闭包--闭包之tab栏切换(四)
  • 官方解决所有 npm 全局安装权限问题
  • 聊一聊前端的监控
  • 普通函数和构造函数的区别
  • 前端面试题总结
  • 我的zsh配置, 2019最新方案
  • 赢得Docker挑战最佳实践
  • 用mpvue开发微信小程序
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • gunicorn工作原理
  • 阿里云ACE认证之理解CDN技术
  • ​​​​​​​​​​​​​​Γ函数
  • ​LeetCode解法汇总2583. 二叉树中的第 K 大层和
  • ​VRRP 虚拟路由冗余协议(华为)
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • (3) cmake编译多个cpp文件
  • (55)MOS管专题--->(10)MOS管的封装
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (附源码)python房屋租赁管理系统 毕业设计 745613
  • (附源码)ssm经济信息门户网站 毕业设计 141634
  • (附源码)计算机毕业设计ssm基于Internet快递柜管理系统
  • (理论篇)httpmoudle和httphandler一览
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (算法设计与分析)第一章算法概述-习题
  • (转) Android中ViewStub组件使用
  • ... 是什么 ?... 有什么用处?
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .net core 实现redis分片_基于 Redis 的分布式任务调度框架 earth-frost
  • .NET 同步与异步 之 原子操作和自旋锁(Interlocked、SpinLock)(九)
  • :如何用SQL脚本保存存储过程返回的结果集
  • @cacheable 是否缓存成功_Spring Cache缓存注解