snap包

使用 X11 显示服务器的Ubuntu不能保证Snap包的安全

使用 X11 显示服务器的Ubuntu不能保证Snap包的安全

CoreOS的安全研究人员,Linux内核开发贡献者Matthew Garrett发表文章说:使用 X11 显示服务器的Ubuntu不能保证Snap包的安全。 Ubuntu 16.04于4月21日发布,其中的一个亮点是Snap包格式。Snap让上游开发者更加方便地向Ubuntu发布新版本软件。Snap包自带相关依赖包,并且能自行升级到新版本,不需依赖apt-get包管理器升级。Snap包在沙盒环境中运行,不能窃取用户的数据。 这是Canonical的官方说法。如果你用的是Mir显示服务器,那么这些说法是正确的,Snap确实加固了安全。但是Ubuntu 16.04桌面版的显示服务器默认是X11。X11老旧的设计很不安全,这是众所周知的。Snap软件包可以访问其他X11软件的数据并发送到其他计算机。实际上在X11显示服务器环境中,任何程序都能接收其他程序的按键数据。 Mir和Wayland显示服务器都没有X11的安全漏洞。和Snap类似的一个项目是Gnome的xdg-app,同样是为了让应用程序在沙盒环境中运行,但xdg-app不支持X11,只支持Wayland,因为X11存在先天性的安全隐患。 为了证明他的观点,Matthew Garrett在Github写了一个程序,证明snap包在X11环境下是可以访问用户数据的。读者若有兴趣,可以在虚拟机中安装Ubuntu 16.04,按照下面的步骤测试。 首先在Ubuntu 16.04安装git sudo apt-get install git 克隆Matthew Garrett的Github仓库...

Ubuntu Snap 的开发者模式

Ubuntu Snap的开发者模式

Ubuntu 16.04 LTS可以使用Snap命令来安装snap软件包。通常的命令语法如下: snap install <包名> 但snap命令的–devmode选项是很有趣的。 snap install --devmode <包名> 之前说过,snap包默认是与系统隔离开来,在沙盒环境中运行,访问系统受到限制,这种模式被称为强制模式(enforcing mode)。而–devmode就是开发者模式(developer mode),用这个选项安装的snap软件不受到沙盒环境的监禁,它继承当前用户的权限,这种模式也被称为抗议模式(complain mode)。 –devmode是提供给开发者用的,可以让他们明白自己的snap软件在底层所能做的事。普通用户请勿使用开发者模式。

snap包

Ubuntu 16.04 LTS提供snap包格式以加快软件包更新

Ubuntu的母公司Canonical宣布Ubuntu 16.04 LTS长期支持版将支持snap包格式以及相关的工具。snap可以更快地向用户推送更新。这在之前被证明是一件棘手的事情,因为打包和提供更新都是很复杂的,导致一些应用的更新不能推送。 snap这个单词有快速、容易的意思。 目前,Ubuntu使用Deb包格式来安装软件。Deb也是很多其他Linux发行版安装软件的主要方式,如Debian和Linux Mint。Canonical公司表示Ubuntu 16.04及以后的版本仍然可以安装deb包,deb和snap两种软件包格式可以和谐地共存于同一个Ubuntu系统,但会更加偏重于snaps(snappy apps)。Ubuntu的衍生版如Linux Mint也可以安装运行snap软件包。 snappy也是快速的意思。 Snaps将更好地整合所有的Ubuntu平台。程序员可以更加轻松地为PC端,服务器端,移动设备或IoT设备编写软件程序。当一个应用程序写好后,开发者使用Snapcraft工具来打包他们的应用程序和依赖,并最终上传到app store(应用商店)。用户从app store下载应用或接收开发者推送的更新。 Snaps的另外一大好处是它们比deb软件包更加安全。Snaps从系统中隔离出来,这意味着内含恶意软件的snap不能感染Ubuntu。snap软件包内含自身所需要的依赖,不需再额外安装依赖。 尽管snaps主要面向Ubuntu 16.04 LTS的Unity7桌面环境,但它也能在其他桌面环境中工作,如Unity 8,KDE,XFCE,Cinnamon,MATE,LXDE。Ubuntu 16.04,代号Xenial Xerus,将于2016年4月21日发布正式版。