专栏名称: 安天集团
安天是引领威胁检测与防御能力发展的网络安全国家队,依托自主先进核心技术与安全理念,致力为战略客户和关键基础设施提供整体安全解决方案。安天产品和服务为客户构建端点防护、边界防护、流量监测、导流捕获、深度分析、应急处置等基础能力。
目录
相关文章推荐
每日人物  ·  大降价的“酸奶刺客”,中产都不想买了 ·  20 小时前  
环球人物  ·  曾年入70亿的他,栽了 ·  昨天  
人物  ·  那些靠骑行「发疯」的年轻人 ·  2 天前  
51好读  ›  专栏  ›  安天集团

关于OpenSSH的FAQ

安天集团  · 公众号  ·  · 2024-07-08 16:26

正文

点击上方"蓝字"
关注我们吧!



OpenSSH是什么?其分布广泛么?

SSH(Secure Shell)是一种安全网络协议,用于通过不安全的网络在两个不受信任的主机之间安全地传输数据。OpenSSH是SSH(Secure Shell)协议的一个开源实现。OpenSSH提供了服务器和客户端的功能,通常被用来实现远程登录和管理(例如通过SSH协议进行远程命令执行)、文件传输(通过SCP或SFTP协议)以及端口转发等功能。OpenSSH被包含在大多数Linux发行版、macOS以及Windows 10(通过Windows Subsystem for Linux或第三方软件)中。

OpenSSH广泛应用于以Linux作为底层系统的各种场景中,如主机系统,包括:服务器、云主机、虚拟主机、部分终端等;网络设备,包括:交换机、路由器等;网络安全设备,包括:防火墙、IDS、等各种安全设备,以及各种安全管理平台。各种嵌入式设备,如摄像头、多种物联网设备等。智能家电,如,智能电视、智能冰箱,扫地机器人等。


CVE-2024-6387漏洞机理是什么?

CVE-2024-6387被称为regreSSHion漏洞(CVE-2024-6387)的原理在于OpenSSH服务器(sshd)处理客户端登录超时时存在一个信号处理程序竞态条件,当客户端在LoginGraceTime设置的时间内未能完成认证时,sshd触发SIGALRM信号处理程序会异步执行,并调用非异步信号安全的syslog()函数,此函数可能执行不安全的内存操作,如malloc()和free()。攻击者利用这个时机发送特殊构造的数据包,尝试在syslog()调用期间精确地触发其它内存操作,造成竞态条件,进而可能操纵堆内存,覆盖关键的控制数据,导致sshd在信号处理程序结束后执行攻击者注入的任意代码,实现了未授权的远程代码执行。

要利用此漏洞,攻击者平均需要进行大约 10,000 次尝试,并且目标系统必须基于使用 GNU C 库 (glibc) 的 Linux 版本,例如Debian 变种。此外,攻击者需要准备针对特定版本的 glibc 和 Linux 量身定制的内存结构。研究人员在 32 位 Linux 系统上重现了这种攻击,但从理论上讲,在 64 位系统上也可以利用这种攻击——尽管成功率较低。地址空间布局随机化 (ASLR) 会减慢利用过程,但不能提供完整的保护。

regreSSHion漏洞(CVE-2024-6387)的出处可以追溯到OpenSSH服务器(sshd)中的一个信号处理程序竞态条件问题。这个问题最初在2006年作为一个拒绝服务(DoS)漏洞被报告为CVE-2006-5051,它涉及到OpenSSH的信号处理程序调用了非异步信号安全的函数。尽管这个原始问题在之后的版本中得到了修复,但在2020年10月,由于OpenSSH版本8.5p1中的一次代码提交(commit 752250c),一个修改日志基础设施的变更意外地移除了一个关键的保护宏#ifdef DO_LOG_SAFE_IN_SIGHAND,从而意外地重新引入了这个竞态条件。

这个变更导致了在OpenSSH的sigdie函数中,原本安全的退出调用被错误地更改,从而再次引入了非异步信号安全的行为。具体来说,当sshd的SIGALRM信号处理程序被触发时,它将调用syslog()函数来记录日志信息,但syslog()在信号处理程序中的调用是危险的,它可能在不安全的上下文中分配或释放内存,从而可能导致堆损坏


漏洞被利用可能性大么?

有观点认为:上述技术复杂性使得大规模利用也变得不切实际。使用标准 OpenSSH 设置进行一万次身份验证尝试,每台服务器需要 6 到 8 个小时。此外,还需要知道服务器正在运行哪个版本的 Linux。如果服务器有任何针对暴力破解和 DDoS 的保护,这些措施可能会阻止攻击。所以大规模实际利用可能性不大。

安天研究认为:尽管基于已公开PoC在开启地址随机化(ASLR)的环境中平均需要6~8小时的时间才能攻击成功,且可能伴有内存破坏的后果,但并不能据此得出这是一个难以致效的漏洞的结论。防御时间窗口价值仅对具备有效防护管理的资产才是有效的,快速实施加固配置和修复漏洞依然是很大的挑战。由于攻击者具有选择目标和攻击时间窗口的主动权,且掌握大量僵尸/跳板节点资源,其可以基于大量长时间并发试探多点的连接,“捞取”缺乏有效防护管理的突破节点。对这些防御管理缺失的资产来说,平均6~8小时的攻击作业时间窗口带来的防御价值,几乎可以忽略不计。特别值得关注是在一些设备场景中,为了节省计算资源,往往关闭了ASLR,导致攻击可以快速致效。

安天CERT认为该攻击可能被用于扩展僵尸网络、挖矿等攻击活动,同时也会在无管理目标网络中,被APT攻击者用于突防和内部横向移动。

与此同时,我们还需要警惕漏洞可用性的演进,包括可能和其他组合利用。包括该漏洞利用是否本身存在某种高阶形态。


哪些版本的OpenSSH受此漏洞影响?


目前已知受此漏洞影响的OpenSSH版本有:

  • OpenSSH版本 < 4.4p1

  • 8.5p1 <= OpenSSH版本 < 9.8p1

其他版本暂不受该漏洞影响。



如何修复这个漏洞?

目前官网已发布最新安全版本修复此漏洞,建议受影响用户升级至以下安全版本。

  • OpenSSH ≥9.8p1

  • 官网地址:
    https://www.openssh.com/releasenotes.html




无法修复漏洞时的缓解措施有哪些?


在无法通过补丁修复的情况下,可结合自身场景情况使用以下方式进行缓解。

  • 检查并启用加固措施:确保已经开启了内存地址空间布局随机化(ASLR)。

  • 设置用户访问策略,只给受信任的用户授权SSH登录权限。

  • 对系统或主机启用双因素身份验证(2FA)。

目前有提出在配置文件中将LoginGraceTime设置为0的方式来缓解该RCE风险的建议,但这种方法容易使sshd受到拒绝服务攻击,需要防御者根据自身的场景条件决定。开启该方法会增加服务器的连接占用,用于主机管理、设备管理、服务管理等低频的专用服务场景,特别是内网节点防范横向移动等可以采取此措施;但依托OpenSSH支撑开放的服务,需要慎重考虑是否采用该方法。


安天的产品如何辅助用户完善漏洞?

目前安天多款安全产品具备该漏洞的检测防御能力,我们强烈建议您及时更新对应安全产品,并利用安全产品对业务中应用的OpenSSH进行排查与防御。


安天产品检测与防护能力
安天睿甲主机安全检测响应系统

产品功能:分布式部署于云物理主机与容器之上,实现统一的工作负载防护。睿甲可以发现存在漏洞的组件、感知和阻断攻击连接。

升级:漏洞规则库升级至2024070401版本,可发现相关漏洞、检出和防御利用该漏洞的攻击活动。

安天探海威胁检测系统

产品功能:部署于网络关键节点,检测网络流量,发现流量中是否存在利用该漏洞的攻击行为。

系统升级至V6.6.1.2版本以上,可开启ssh暴力破解功能检测该攻击行为。

漏洞规则库升级至2024070507版本,可检出该漏洞。

安天可扩展检测响应平台

产品功能:对收集到的网络侧、终端侧日志信息进行扩展的检测与响应。可以发现利用该漏洞的攻击行为。

漏洞规则库升级至2024070401版本,可检出该漏洞。

安天融川代码安全检测系统

产品功能:对软件源代码进行安全检测,发现软件中是否存在该漏洞。

漏洞规则库升级至2.4.20240704.1版本,可检出该漏洞。

安天视频系统安全综合评估设备

产品功能:对业务应用进行安全检测,发现业务应用中是否存在该漏洞。

漏洞规则库升级至20240702114313版本,可检出该漏洞。


如果您需要获取产品升级包,请您致电安天技术支持热线:400-840-9234。


往期回顾