关于2024-07-1公开的OpenSSH远程漏洞说明

常见售后

关于2024-07-1公开的OpenSSH远程漏洞说明

2024-07-02 15:09
文章已发布 141 天,被阅读了 12136 次

本文固定链接:https://w-wang.cn/wanwanyun-knowledgebaseview-80.html | 汪汪云计算 ,转载请注明出处!

关于作者:小汪 @汪汪云客户服务部
汪汪云计算(W-Wang.cn),服务器在线自动化秒开通 下沉服务器市场 开通服务器就和买菜一样简单,让每个开发者都能以最低的成本获取一台专属云服务器。

【安全预警】
OpenSSH 高危漏洞 (CVE-2024-6387),影响大部分Debian Ubuntu和新版Centos9系统,平均可6-8小时爆破root权限!导致服务器被黑!

 

最近这段时间确实非常忙碌:

06-30 日,CentOS 7 正式停止维护,使用 CentOS 7 操作系统镜像的用户需要忙着为自己的服务器更换镜像源。点击这里查看相关公告

紧接着,在 07-01 日,OpenSSH 公布了一个远程漏洞,Ubuntu 22、Debian 12 等操作系统需要紧急修复 OpenSSH 的远程漏洞。

如图所示:

 

现提供修复教程如下:

 

亲爱的用户您好,

近期OpenSSH爆出了严重漏洞,为安全考量,请您检测是否在受影响范围内。
漏洞详情:CVE-2024-6387 高危:平均6-8小时可获取root权限

在 OpenSSH 中发现了一个远程代码执行(RCE)漏洞,该漏洞是由于 OpenSSH 服务器 (sshd) 中的信号处理程序竞争问题,未经身份验证的攻击者可以利用此漏洞在 Linux 系统上以 root 身份执行任意代码,威胁者可利用该漏洞在基于glibc的Linux系统上以root身份实现未经身份验证的远程代码执行。根据已公开技术细节中的描述,在开启ASLR的i386设备上,利用该漏洞大约需要6-8小时获取root shell

影响范围
OpenSSH < 4.4p1(不含已修复CVE-2006-5051和CVE-2008-4109的实例)
8.5p1 <= OpenSSH < 9.8p1
Tips: 主要受影响的系统大部分为新版Ubuntu、Debian 和 Centos9,而相对较老的Centos6、7、8 暂时不受影响。
注:OpenBSD系统不受该漏洞影响。
用户可执行sshd -V确认OpenSSH版本,目前该漏洞技术细节已在互联网上公开,鉴于影响范围较大,建议用户尽快做好自查及防护。

安全措施
目前OpenSSH上游已发布版本更新,受影响用户可通过软件源升级到最新版本(OpenSSH 9.8p1)或编译安装最新版本。
通过软件源更新方法:

Debian/Ubuntu等:

  1. apt update && apt install openssh-server


RHEL/CentOS等:

  1. yum update openssh


更新后请使用命令重启sshd服务。

  1. systemctl restart sshd




不同Linux发行版可能会自行维护OpenSSH安全补丁,请前往发行版的openssh-server软件包信息页面,确认漏洞修复情况。例如在Ubuntu 22.04 LTS中,已发布openssh 1:8.9p1-3ubuntu0.10版本完成对本漏洞的修复。

如确有困难无法升级版本的,可采用缓解措施。在sshd配置文件(如/etc/ssh/sshd_config)中将LoginGraceTime设置为0,并重启sshd服务。请注意,使用该配置会导致MaxStartups连接耗尽,从而使sshd易受拒绝服务攻击,但可以缓解本漏洞的风险。也可使用iptables等防火墙最小化控制SSH访问范围。

  1. sed -i 's/^#\?LoginGraceTime.*/LoginGraceTime 0/' /etc/ssh/sshd_config
  2. systemctl restart sshd

 

摘要一篇相关新闻可做参考:

SSH RCE漏洞,ssh -V检查版本,早于4.4p1 的版本受影响,

4.4p1 到 8.5p1(不包含8.5p1)之间的版本不受影响,

8.5p1到9.8p1 (不包含9.8p1)之间的版本受影响。

 

解决方法:

升级ssh版本,编译安装:

 

# 安装编译依赖

sudo apt-get update

sudo apt-get install -y build-essential zlib1g-dev libssl-dev

 

# 下载指定版本源码

wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz

 

# 解压并进入目录

tar -xzf openssh-9.8p1.tar.gz

cd openssh-9.8p1

 

# 编译和安装

./configure

make

sudo make install

 

# 重启服务

sudo systemctl restart ssh

 

# 断开SSH连接重连检查版本

ssh -V

 

OpenSSH Server远程代码执行漏洞 POC 

Openssh Server中8.5p1和9.7p1之间的版本中存在一处条件竞争漏洞,如果客户端在120秒内没有进行身份验证(由LoginGraceTime定义的设置),则sshd的 SIGALRM 处理程序会以一种非异步信号安全的方式异步调用,成功的利用此漏洞可以导致远程攻击者以root的权限执行远程代码

🔗 Research: 

https://blog.qualys.com/vulnerabilities-threat-research/2024/07/01/regresshion-remote-unauthenticated-code-execution-vulnerability-in-openssh-server

 

一键脚本:

cd /root && sudo apt-get update && apt upgrade -y && sudo apt-get install -y build-essential zlib1g-dev libssl-dev && wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz && tar -xzf openssh-9.8p1.tar.gz && cd openssh-9.8p1 && ./configure && make && make install && sudo systemctl restart ssh && ssh -V && cd /root && rm -rf openssh-9.8p1  openssh-9.8p1.tar.gz