开发者称 snap 软件包格式在带有 X11 的 Ubuntu 环境中并不安全
创始人
2024-03-01 16:54:05
0

4/21 日,Canonical 揭晓了他们最新的 Ubuntu Linux 操作系统 Ubuntu 16.04 LTS(Xenial Xerus),在这个版本中,有个重要的功能是,Ubuntu 16.04 LTS 可以同时支持 deb 和 snap 两种软件包格式。snap 软件包格式用在 Canonical 的物联网操作系统 Snappy Ubuntu Core 中。

snap 软件包格式用来设计配合 Canonical 的新一代显示服务器 Mir 协同工作,它默认用在 Ubunut Touch 移动操作系统上,支持 Ubuntu 电话,以及新的 Ubuntu 平板: BQ Aquaris M10 Ubuntu 版,以给用户提供一流的安全性。

通过在 Ubuntu 桌面版和 Ubuntu 服务器版中支持安装 snap 软件包,Canonical 在给 Ubuntu 用户及时地提供软件更新方面取得了长足进展。Mozilla 是第一个在 Ubuntu 上以 snap 软件包格式提供软件的厂商,估计今年稍晚时候就会提供 Firefox 的 snap 包。

在 X11 下 snap 软件包并不安全

据著名的 CoreOS 安全开发者及 Linux 内核贡献者 Matthew Garrett 称, Canonical 的新式 snap 软件包格式用在 X.Org 服务器(X11 Window 系统)下很不安全,而 X11 目前仍旧是 Ubuntu 16.04 LTS 的默认显示服务器。

这个问题本质上是由于 X11 的古老设计,众所周知它在安全性上很差。Matthew Garrett 制作了一个简单的 snap 软件包来演示这个问题,它可以做到从其它的 X11 软件中偷取数据,比如可以获取你在 Mozilla Firefox 浏览器中输入的内容。

“我做了一个快速的概念验证,从 git 上获取了 XEvilTeddy,安装 Snapcraft (它在 16.04 中), 用 snapcraft 制作 snap,然后运行 sudo snap install xevilteddy*.snap,接着执行 /snap/bin/xevilteddy.xteddy。这是一个可爱的泰迪熊,真萌~ 现在打开 Firefox 并输入东西,然后去看看你的终端窗口。哦,天哪,我的小秘密呢… 再开一个终端窗口,然后将输入焦点放到其上,哦,我的天,一个被劫持的命令,它被替换成一个 curl 会话,可以上传你的 SSH 私钥到鬼才知道的某个地方。”

到目前为止,snap 格式还没流行起来,特别是因为目前只有很少的软件包支持这种格式。但是这也许不久就会改变,越来越多的开发者会以 snap 格式提供他们的软件,所以 Canonical 需要为使用 X11 的 Ubuntu 的安全性做些工作。

这也是为何大多数 GNU/Linux 发行版应该尽快切换到 Wayland 或 Mir 显示服务器的另外一个原因,尤其是现在的大多数桌面环境(如 GNOME 和 KDE)都支持它们了。不过,从另外一方面说,这个 snap 的安全问题不会影响到 Ubuntu 服务器操作系统,因为它根本没有显示服务器。

我们按照 Mr. Garrett 的指导,在一个最新更新的 Ubuntu 16.04 LTS 的机器上使用 Snapcraft 创建了 xevilteddy 的 snap 包。成功的创建了 snap 并安装之后,我们确认,当你看到如下的截屏时,这表明 xevilteddy 应用可以偷取你在另外一个 X11 应用中输入的任何内容,也能够使用 curl 将你的 SSH 密钥发送到远程的站点去。

相关内容

别被外表骗了:KDE 桌面...
核心结论:KDE Plasma 桌面同样漂亮,但两款发行版定位不同...
2026-05-21 03:37:42
Fedora决定停用Dee...
IT之家 5 月 20 日消息,Fedora 工程与指导委员会(F...
2026-05-20 18:27:51
放弃Ubuntu吧!Deb...
过去几年,我看到不少读者在评论区、私信里吐槽Ubuntu:Snap...
2026-05-09 16:17:21
谷歌首款AI眼镜即将呼之欲...
据路透社消息,开云集团表示将在2027年与谷歌合作推出古驰(Guc...
2026-05-06 22:51:02
Fedora 44正式版登...
备受期待的 Fedora 44 正式版系统已正式与用户见面,此次更...
2026-05-06 12:49:02
告别近10年界面停滞,Ub...
IT之家 4 月 25 日消息,科技媒体 omgubuntu 昨日...
2026-05-06 06:51:18

热门资讯

为什么计量 IT 的生产力如此... 在某些行业里,人们可以根据一些测量标准判定一个人的生产力。比如,如果你是一个零件制造商,可以通过一个...
硬核观察 #885 苹果 AR... 苹果 AR 眼镜被无限期推迟据报道,由于技术上的挑战,苹果公司已经无限期推迟了其轻型增强现实(AR)...
8 个提升你的隐私防护的开源密... 使用一些顶级开源密码管理器,确保你的登录凭证安全无虞。密码管理器是一项非常有用的实用程序。在你想寻找...
PHP最佳实践(译) 简介PHP是一门复杂的语言,经过多年折腾,使其不同版本之间高度不一致,有时还有些bug。 每个版本都...
8个有趣的Linux提示与技巧... 我们时不时给你带来关于Linux的提示与技巧。和这个系列保持一致,这里有8个我们从读者收到最有趣的提...
值得收藏的 27 个机器学习的... 机器学习 ( Machine Learning ) 有很多方面,当我开始研究学习它时,我发现了各种各...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
2020 年的 GitHub ... 距离 2020 年结束只剩下区区 24 天,我们即将结束魔幻的 2020 ,迎来新的一年,新的一年或...
开源新闻速递:openSUSE... 今日关注openSUSE 项目组的 Dominique Leuenberger 在他的周报中说:“这...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...