背景:
本文發(fā)表在2016年6月的ACM MobSys會(huì)議上,主要針對(duì)第三方軟件所造成的隱私泄露問(wèn)題開(kāi)發(fā)了一款類(lèi)沙箱的工具。
出處:
MobiSys’16, June 25-30, 2016, Singapore, Singapore
作者:
Raul Herbster, Scott DellaTorre, Peter Druschel and Bobby Bhattacharjee
概述:
本文針對(duì)第三方app導(dǎo)致的隱私泄露問(wèn)題,設(shè)計(jì)privacy capsule以防止私人信息流向不可信第三方。Privacy Capsule對(duì)app設(shè)置兩種狀態(tài)sealed和unsealed來(lái)對(duì)app的行為進(jìn)行限制。
主要成果:
設(shè)計(jì)出privacy capsule對(duì)應(yīng)用數(shù)據(jù),通信進(jìn)行保護(hù)。將privacy capsule進(jìn)行開(kāi)源,并封裝成API。
主要框架:
如上圖所示,privacy capsule由兩種模式組成(unsealed state & sealed state)
在unsealed 狀態(tài)下,app不能訪(fǎng)問(wèn)敏感輸入但可以訪(fǎng)問(wèn)不可信的第三方源。在stealed狀態(tài)下,不可信app可以訪(fǎng)問(wèn)敏感輸入但不能與第三方源進(jìn)行通信。默認(rèn)的兩種狀態(tài)下的PC策略如下:
app執(zhí)行的初始狀態(tài)是在unsealed狀態(tài)下,此時(shí)可以訪(fǎng)問(wèn)公開(kāi)的輸入及不可信源。當(dāng)狀態(tài)切換到sealed時(shí),只能訪(fǎng)問(wèn)私有輸入和可信源,且不能在不可信通道中進(jìn)行寫(xiě)操作。一旦進(jìn)入sealed狀態(tài),不能變回unsealed,只能終止進(jìn)程并重新啟動(dòng)。
在模型中所有的傳感器信息,地理位置,GUI輸入,電話(huà)狀態(tài),數(shù)據(jù)庫(kù)都默認(rèn)為私有。共有文件,網(wǎng)絡(luò)連接,在unsealed狀態(tài)下與不可信進(jìn)程的跨進(jìn)程通信(IPC)被認(rèn)為是不可信信道。
PC中的主要組件
Key Manager:
對(duì)在sealed狀態(tài)下數(shù)據(jù)存儲(chǔ)和信道中數(shù)據(jù)加密的密鑰的管理。
Sealed Repositories:
允許一個(gè)app進(jìn)程與另一設(shè)備中的相同進(jìn)程進(jìn)行通信,通信過(guò)程中使用特殊加密,密鑰由KM進(jìn)行管理。
Selective declassification:
允許用戶(hù)在sealed模式下暴露一些特殊信息。當(dāng)app請(qǐng)求SD時(shí),privacy capsule向用戶(hù)提供該信息的源及狀態(tài),獲得用戶(hù)認(rèn)證。
總結(jié)
本文用很大篇幅對(duì)privacy capsule從功能、適用性、應(yīng)用角度進(jìn)行介紹,把PC封裝成API并介紹基于PC的應(yīng)用程序開(kāi)發(fā)。本文主要針對(duì)產(chǎn)品進(jìn)行介紹,對(duì)其中功能的具體實(shí)現(xiàn)敘述不多。