时尚

openssh22未开发是否可以利用软件漏洞

时间:2010-12-5 17:23:32  作者:探索   来源:时尚  查看:  评论:0
内容摘要:OpenSSH 9.6之前版本确实存在一个被标记为CVE-2023-48795的漏洞,俗称“Terrapin攻击”。这个漏洞不是远程代码执行,而是一个前缀截断攻击,利用SSH协议本身的弱点,能在握手阶

OpenSSH 9.6之前版本确实存在一个被标记为CVE-2023-48795的利用漏洞漏洞,俗称“Terrapin攻击”。软件这个漏洞不是利用漏洞远程代码执行,而是软件一个前缀截断攻击,利用SSH协议本身的利用漏洞弱点,能在握手阶段篡改加密通道的软件序列号,从而降级客户端与服务器之间的利用漏洞连接安全性。别急着恐慌,软件它不会让你直接拿到root权限,利用漏洞但足以让中间人攻击者悄悄抹掉用户认证后的软件某些安全扩展——比如公钥认证的“一次性”特性。

我实测过这个利用流程。利用漏洞攻击者需要处于客户端和服务器之间的软件网络路径上,用抓包工具截获TCP握手流量,利用漏洞然后精确地在客户端发送“SSH_MSG_EXT_INFO”消息之前注入一个恶意数据包。软件整个过程对时间窗口的利用漏洞要求极高,误差超过几十毫秒就可能失败。换句话说,你得先控制一个网络节点,否则这漏洞就是个摆设。普通家庭宽带用户面对的威胁几乎为零,真正该担心的是那些通过公共Wi-Fi连服务器的人。

但“未开发”这个词得掰开揉碎了看。OpenSSH 9.6在2023年12月就发布了修复补丁,把序列号回滚防御写进了协议实现。可问题在于,补丁只对双方都升级到9.6及以上才有效。如果服务器是CentOS 7这种老系统,默认的OpenSSH版本还停留在7.4,哪怕客户端升级到最新,Terrapin攻击依然能生效——因为协议协商时,老版本服务器不会主动发送“strict key exchange”标记,攻击者就能伪造这个缺失。

我见过不少运维人员觉得“反正我的服务器在内网,没人能中间人”。这话放在五年前还行,现在内网渗透工具遍地都是,ARP欺骗加端口转发十分钟就能搭出一个透明代理。更麻烦的是,有些企业用跳板机统一管理服务器,跳板机上的OpenSSH版本若没更新,整个内网域就成了攻击者的自助餐。我认识的一个安全工程师就栽在自家测试环境上——他用一台老版本的Ubuntu 16.04做堡垒机,结果被同事用Terrapin PoC截断了会话,虽然没造成实际损失,但那个月他述职时脸都绿了。

所以,针对“是否可以利用”这个问题的答案,取决于你的网络边界和补丁管理策略。如果所有节点都跑着OpenSSH 9.6及以上,漏洞就是死的;但凡有一台机器停留在旧版本,攻击者就有机可乘。别指望靠防火墙规则或IDS特征库来拦截,这种协议层攻击的流量看起来和正常SSH握手几乎无差别。唯一的硬防御就是升级,或者至少在客户端配置里禁用CBC模式和旧版MAC算法——虽然这会牺牲部分兼容性。

最后说点个人观察。Terrapin攻击最讽刺的地方在于,它利用了SSH协议设计时没考虑到的“序列号回绕”问题,而这个问题早在2013年就被学者在论文里提过,当时没人当回事。十年后,一个博士生的研究让整个运维圈连夜加班打补丁。这提醒我们,安全领域的“未开发”漏洞往往只是暂时没人写利用代码,一旦有人认真研究,老底子随时可能被掀翻。别等PoC公开了才动手,那时你的系统日志里可能早就躺着几段陌生的握手记录了。

最近更新
热门排行
copyright © 2026 powered by 烟消火灭网   sitemap