影响Snapd的漏洞 - 默认安装在Ubuntu中并由其他Linux发行版(如Debian,OpenSUSE,Arch Linux,Fedora和Solus)使用的软件包可能允许本地攻击者获得管理员权限,即root访问权限和对系统。
关于Snapd
Snapd是一种用于在Linux发行版上交付,更新和管理应用程序(以快照包的形式)的服务。
“此服务自动安装在Ubuntu中,并在'root'用户的上下文中运行。Snapd正在发展成为Ubuntu操作系统的重要组成部分,特别是在像云计算和物联网的“Snappy Ubuntu Core”等更精简的旋转中,“发现该漏洞的安全研究员Chris Moberly说道。
Snap生态系统包括一个快照存储库,开发人员可以在其中贡献和维护即用型软件包。
不幸的是,已经成功地尝试在其中一些软件包中引入恶意代码。
关于此漏洞(CVE-2019-7304)
Moberly发现了CVE-2019-7304(又名“Dirty Sock”)并于1月底私下向Ubuntu的制造商Canonical披露。
该缺陷影响Snapd版本2.28至2.37。
这是一个本地权限提升漏洞,这意味着攻击者必须首先获得对目标计算机的远程访问权限,然后才能使用它来提升其权限。
“Snapd提供附加到本地UNIX_AF套接字的REST API。通过查询与该套接字的任何连接相关联的UID来完成对受限API函数的访问控制。在for循环中进行字符串解析期间,可能会影响用户控制的套接字对等数据以覆盖UID变量。这允许任何用户访问任何API函数。通过访问API,有多种获取root的方法,“Moberly在博客文章中解释道。
他还公开了两个针对它的PoC攻击,它允许在具有Internet连接和SSH服务的系统上利用该漏洞,并在没有(通过恶意,侧载快照)的系统上利用该漏洞。
现在怎么办?
该漏洞在Snapd版本2.37.1及更高版本中得到修复,Ubuntu和其他上述Linux发行版已经实现了该软件包的固定版本。
当然,要求用户尽快升级他们的设备。