Google宣布,隨著Google Chrome 77的發(fā)布,Site Isolation已引入Android,并且桌面用戶在啟用此功能后會(huì)獲得更多保護(hù)。
在后 崩潰和幽靈 推測(cè)執(zhí)行漏洞被披露,谷歌快速跟蹤稱為安全功能隔離網(wǎng)站 于是有人在Chrome 67對(duì)于大多數(shù)用戶啟用。
啟用后,“站點(diǎn)隔離”將導(dǎo)致您訪問(wèn)的每個(gè)網(wǎng)站都被加載到其自己的進(jìn)程中,該進(jìn)程將進(jìn)一步沙盒化以限制該進(jìn)程可以訪問(wèn)的資源和功能。通過(guò)以這種方式隔離站點(diǎn),它可以防止惡意網(wǎng)站利用推測(cè)性執(zhí)行漏洞來(lái)訪問(wèn)加載在其他瀏覽器選項(xiàng)卡中的數(shù)據(jù)。
在下面的圖片摘自Google的“ 網(wǎng)站隔離:瀏覽器中的 網(wǎng)站的流程分離”中 ,您可以看到“網(wǎng)站隔離”在緩解已知的Meltdown和Spectre漏洞方面非常有效。

不幸的是,所有美好的事物都是有代價(jià)的。啟用站點(diǎn)隔離后,將啟動(dòng)更多進(jìn)程并使用更多內(nèi)存。從下圖可以看到,這導(dǎo)致某些站點(diǎn)的內(nèi)存利用率大大提高。

但是,這是安全性和資源利用之間的一個(gè)有價(jià)值的折衷。
Android獲得簡(jiǎn)化的網(wǎng)站隔離
當(dāng)發(fā)布適用于Android的Chrome 77時(shí),Google悄悄地采用了網(wǎng)站隔離功能,以進(jìn)一步保護(hù)移動(dòng)用戶。
與桌面實(shí)施不同,Android上的“網(wǎng)站隔離”將僅保護(hù)您使用密碼登錄的網(wǎng)站。這是為了減少移動(dòng)設(shè)備上的資源利用率,該移動(dòng)設(shè)備的內(nèi)存和CPU處理能力低于臺(tái)式計(jì)算機(jī)。
谷歌今天在一篇新博客中說(shuō):“我們希望確保站點(diǎn)隔離不會(huì)對(duì)像Android這樣的資源受限環(huán)境中的用戶體驗(yàn)產(chǎn)生不利影響!
“這就是為什么與我們隔離所有網(wǎng)站的臺(tái)式機(jī)平臺(tái)不同,Android上的Chrome瀏覽器使用了一種更窄的網(wǎng)站隔離形式,可以保護(hù)更少的網(wǎng)站以保持較低的開(kāi)銷。更具體地說(shuō),僅針對(duì)用戶登錄的高價(jià)值網(wǎng)站才啟用網(wǎng)站隔離輸入密碼!
當(dāng)Chrome 77檢測(cè)到正在向網(wǎng)站輸入密碼時(shí),它將啟用該網(wǎng)站上由密碼觸發(fā)的網(wǎng)站隔離功能。它還利用眾包網(wǎng)站列表,已知移動(dòng)用戶經(jīng)常輸入密碼,并為這些網(wǎng)站啟用功能。
目前,有99%的運(yùn)行Android且內(nèi)存超過(guò)2GB的用戶啟用了此功能,其中有1%的用戶保留用于監(jiān)視該功能并提高性能。Google希望將來(lái)增加更多設(shè)備。
對(duì)于希望完全保護(hù)站點(diǎn)隔離以便在每個(gè)站點(diǎn)上都啟用該功能的用戶,他們可以啟用chrome:// flags /#enable-site-per-process標(biāo)志,但應(yīng)該期望Chrome在移動(dòng)設(shè)備上利用更多的資源。
Google表示,他們計(jì)劃擴(kuò)展移動(dòng)網(wǎng)站隔離功能,以允許用戶指定其他希望啟用該功能的網(wǎng)站,即使他們沒(méi)有登錄該網(wǎng)站。
適用于臺(tái)式機(jī)的Chrome 77獲得其他保護(hù)
與Android上的Chrome不同,谷歌瀏覽器一直在默認(rèn)情況下啟用從Chrome 67開(kāi)始的所有網(wǎng)站的網(wǎng)站隔離。
借助Chrome 77,臺(tái)式機(jī)用戶獲得了更好的保護(hù),因?yàn)椤罢军c(diǎn)隔離”現(xiàn)在可以保護(hù)用戶免受渲染器進(jìn)程的損害。這些過(guò)程負(fù)責(zé)選項(xiàng)卡中發(fā)生的事情,例如將HTML,CSS和java script轉(zhuǎn)換為網(wǎng)頁(yè)并顯示。
不幸的是,它們也是內(nèi)存損壞錯(cuò)誤的目標(biāo),這些錯(cuò)誤可能導(dǎo)致攻擊者在另一個(gè)選項(xiàng)卡中運(yùn)行代碼。通過(guò)這種新的網(wǎng)站隔離措施,Google可以防止此類惡意活動(dòng)的發(fā)生。
“舉個(gè)例子,假設(shè)一個(gè)攻擊者發(fā)現(xiàn),并在Chrome的渲染引擎,眨眼利用的內(nèi)存破壞漏洞,該漏洞可能允許他們到沙箱渲染器進(jìn)程中運(yùn)行任意的本地代碼,不再在閃爍。但是,Chrome的安全檢查約束瀏覽器進(jìn)程知道渲染器進(jìn)程專用于哪個(gè)站點(diǎn),因此它可以限制整個(gè)進(jìn)程允許接收哪些cookie,密碼和站點(diǎn)數(shù)據(jù)。這使攻擊者更難以竊取跨站點(diǎn)數(shù)據(jù)!
借助Chrome 77和附加的渲染器進(jìn)程保護(hù),站點(diǎn)隔離通過(guò)限制對(duì)瀏覽器使用的數(shù)據(jù)的訪問(wèn)來(lái)保護(hù)用戶免受各種威脅。
其中包括以下保護(hù),其中大多數(shù)已添加到Chrome 73中。
身份驗(yàn)證:Cookie和存儲(chǔ)的密碼只能由鎖定到相應(yīng)站點(diǎn)的進(jìn)程訪問(wèn)。此保護(hù)已在Chrome 73中添加。
網(wǎng)絡(luò)數(shù)據(jù):站點(diǎn)隔離使用跨域讀取阻止來(lái)過(guò)濾流程中的敏感資源類型(例如,HTML,XML,Microsoft Office,Open Office,JSON,PDF),即使該流程試圖就其相關(guān)內(nèi)容躺在Chrome的網(wǎng)絡(luò)堆棧中起源。標(biāo)有Cross-Origin-Resource-Policy標(biāo)頭的資源也受到保護(hù)。
存儲(chǔ)的數(shù)據(jù)和權(quán)限:渲染器進(jìn)程只能基于進(jìn)程的站點(diǎn)鎖定來(lái)訪問(wèn)存儲(chǔ)的數(shù)據(jù)(例如localStorage)或權(quán)限(例如麥克風(fēng))。
跨域消息傳遞:Chrome的瀏覽器進(jìn)程可以驗(yàn)證postMessage和BroadcastChannel消息的來(lái)源,從而防止渲染器進(jìn)程謊報(bào)消息的發(fā)送者。
Google希望以后再為Android提供這些額外的保護(hù)。
除了當(dāng)前的保護(hù)措施外,Google還將在未來(lái)進(jìn)一步保護(hù)CSRF防御措施,更多類型的數(shù)據(jù),并遷移現(xiàn)有擴(kuò)展名,以使它們不具有廣泛的跨站點(diǎn)訪問(wèn)權(quán)限。
增加了站點(diǎn)隔離漏洞的漏洞賞金
在有限的時(shí)間內(nèi),Google還將增加與網(wǎng)站隔離相關(guān)的錯(cuò)誤的賞金獎(jiǎng)勵(lì)。
有資格獲得獎(jiǎng)勵(lì)的范圍內(nèi)錯(cuò)誤包括:
導(dǎo)致Web上的兩個(gè)或多個(gè)跨站點(diǎn)文檔在同一過(guò)程中提交的錯(cuò)誤。即強(qiáng)制執(zhí)行站點(diǎn)前隔離行為。
導(dǎo)致跨站點(diǎn)數(shù)據(jù)泄漏的錯(cuò)誤,即使該錯(cuò)誤假定渲染器已損壞。受站點(diǎn)隔離保護(hù)的數(shù)據(jù)示例:cookie,保存的密碼,localStorage,IndexedDB,CORB 或 CORP覆蓋的HTTP資源 。