Qubes:為安全而生的開源系統(tǒng)
無論代碼審核做的是多么的好,或者驗(yàn)收規(guī)格是多高,應(yīng)用程序始終會(huì)有bugs。驅(qū)動(dòng)和文件系統(tǒng)也是這樣。Invisible Things實(shí)驗(yàn)室的發(fā)起人兼CEO Joanna Rutkowsta這樣說。
沒有人,甚至是谷歌的安全小組,也不能保證發(fā)現(xiàn)和修改所有出現(xiàn)在桌面應(yīng)用程序的漏洞。Rutkowska 在以下的提問采訪中說了這樣的話。
這也是為什么她和她的團(tuán)隊(duì)創(chuàng)建了 Qubes 系統(tǒng),一個(gè)關(guān)注安全,基于 Fedora 系統(tǒng)的開源系統(tǒng),本質(zhì)上,這個(gè)系統(tǒng)是假設(shè) bugs 無處不在。Qubes 能夠使用 Xen hypervisor 把應(yīng)用程序的各個(gè)功能點(diǎn)分布在不同的虛擬機(jī)上,取代全都運(yùn)行在一個(gè)內(nèi)核上的老方法。每個(gè)功能也許只是獲取它需要運(yùn)行的必要組件,通過這種機(jī)制,把一個(gè)潛在的漏洞的危害降到***。
什么是Qubes系統(tǒng)?
Joanna Rutkowska:Qubes 是開源的操作系統(tǒng),為桌面計(jì)算機(jī)提供高度安全的一種系統(tǒng)。它通過一種劃分塊的方法來提供安全服務(wù)。是基于 Xen 和 Linux 的,但是同樣支持 Windows 的應(yīng)用。
它是怎么使用Xen和Linux的?
Joanna Rutkowska:Qubes 把 Xen 當(dāng)作一個(gè)"塊提供者",事實(shí)上,Xen非常適合這樣的一個(gè)角色。Xen hypervisor 仍然是相對(duì)報(bào)告自由和一個(gè)優(yōu)秀的機(jī)制使我們能夠讓它保持安全(它允許我們把qemu從TCB分離出來)。它也為我們平常的驅(qū)動(dòng)領(lǐng)域提供支持,使我們能夠利用沙盒網(wǎng)絡(luò)和USB堆棧。
上面已經(jīng)提到,Qubes 獨(dú)立于底層的管理程序是很重要的一點(diǎn)。在一個(gè)發(fā)行版本中,我們會(huì)介紹管理程序的虛擬層,這個(gè)層使其它的一些虛擬服務(wù)和 Xen 的交互相對(duì)容易些。因此,在未來,我們也許會(huì)看到基于特定服務(wù)的 Qubes 系統(tǒng),為了更好的硬件兼容性。
沒有貶低Linux的重要性,如果沒有自由的Linux系統(tǒng),就不會(huì)有 Qubes。盡管我們也支持 Windows的應(yīng)用程序模擬,Linux 仍是創(chuàng)建輕量的應(yīng)用程序和復(fù)雜的服務(wù)虛擬的首要選擇。
你主要是關(guān)注什么樣的安全問題?
Joanna Rutkowska:我們應(yīng)該接受桌面程序一直有bug這個(gè)事實(shí)。沒有人,甚至是谷歌的安全小組,也不能保證發(fā)現(xiàn)和修改所有出現(xiàn)在桌面應(yīng)用程序中的bug。各種各樣的驅(qū)動(dòng)程序(Wifi、USB等)也一直有bug。各種各樣的文件系統(tǒng)也確實(shí)有一些bug。
Qubes是怎么樣解決這些問題的?
Joanna Rutkowska:不同于以往那些試圖增加安全機(jī)制到已經(jīng)臃腫系統(tǒng)中的案例,Qubes 使用不同的方法:它從一系統(tǒng)分很多分隔開來的塊(Xen虛擬)出發(fā),這些塊代表了用戶安全領(lǐng)域和系統(tǒng)服務(wù),然后建立把這些塊連接起來的“橋”。
這些“連接橋”是本質(zhì)上讓Qubes變成一個(gè)有用的桌面系統(tǒng),包括這看不見的桌面GUI,在不同的主機(jī)間安全的復(fù)制黏貼文件,和許多其它的服務(wù)。如果很好的利用這些內(nèi)部的“連接橋”,會(huì)在安全方面取得更好的效果,你可以了解更多關(guān)于這個(gè)功能在一面的文章中。