CoreOS Linux Alpha 的重大漏洞已修复

  • James Chesters
  • 大愚若智

2016 年 5 月 29 日

话题:Linux云计算DevOps语言 & 开发

CoreOS Linux Alpha 中的一个重大漏洞已修复,安全团队称此问题只影响该 Linux 发行版的 104x.0.0 版。

在博客文章《CoreOS Linux Alpha 中远程 SSH 存在重大安全问题,部分用户受影响》中,CoreOS 安全团队在描述这个问题时说:

CoreOS Linux Alpha 1045.0.0 和 1047.0.0 中 PAM 子系统的一项错误配置将使得未经授权用户能够在无需密码,或不具备任何其他必要身份验证令牌的情况下访问帐户。该漏洞影响了部分运行 CoreOS Linux Alpha 的计算机。

根据该团队介绍,这个问题最初上报于 5 月 15 日 20:21,仅六小时后就发布了可用的修复程序。运行 CoreOS Linux Beta 或稳定版系统的计算机不受影响。

在 CoreOS 于 5 月 19 日发布的事件简报中,资深安全工程师 Matthew Garrett 称接获通知说有人已经“发现有系统被攻陷”。据报攻击者以 Operator 用户的身份登录,并“使用被攻陷的系统发送垃圾邮件”。

“最开始我们很纳闷,因为 Operator 用户是被禁用的,但我们在内部也可以复现这个问题,”Garett 说:最后发现有人可以通过任何密码登录 Operator 和其他核心帐户,“哪怕帐户并未设置任何密码。”

Garrett 努力将问题原因缩小至coreos-overlay中提交的一项内容,其中为了实现用户身份验证,需要将 Red Hat 的 System Security Services 工具与 CoreOS 进行集成。最终发现这个问题是由于基于 Gentoo 的系统和基于 Red Hat 的系统之间的一个差异导致的,前者默认会使用一个可选的pam_permit作为 PAM 配置的结尾,而后者默认会使用一个必备的pam_deny。在这种情况下,配置将最终落实为pam_permit,进而导致用户可以登录。

在解释为什么会出现这种问题时,Garrett 称尽管 Operator 用户被禁用,但该用户“依然存在于很多 UNIX 类系统中,并会出现在很多自动化 SSH 攻击脚本中,因此只要存在 Operator 用户,就可能在不具备有效密码的情况下访问,这也使得此类系统面对这样的自动化攻击更显脆弱。”

在 Hacker News 对于这个简报的讨论中,Kamil Choudhury 评论问到:“认为这种问题是小题大做,我的想法错了吗?”

Garrett回复解释说,“没有极为可信的理由”能让我们相信 Alhpa 测试版软件比其他版本更糟糕。

我认为,分布式计算的优势之一就是可以在部分部署中运行 Alpha 测试版软件,而无须担心 Bug 会拖累整个部署。这样用户就可以更容易地确信新发布的稳定版软件不会造成更大麻烦,同时这也意味着用户可以更快速用上稳定版,并避免继续运行老版本软件可能造成的安全隐患。

为此用户需要确信 Alpha 测试版并不是“包含大量安全问题”的版本,Garrett 说:“尽管我们没做到,但这一点很重要。”

查看英文原文Major CoreOS Linux Alpha Vulnerability Patched


感谢张龙对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

Linux云计算DevOps语言 & 开发