虚拟化:侧信道攻击案例
具體實(shí)例:一個真實(shí)的在線醫(yī)療系統(tǒng)
在線醫(yī)療是一個很私人的信息服務(wù)系統(tǒng),它由信譽(yù)最好的企業(yè)研發(fā),并且在數(shù)據(jù)傳輸?shù)倪^程中采用了HTTPS協(xié)議對用戶的信息進(jìn)行了加密傳輸。一旦登陸,用戶可以建立自己的健康檔案,包括癥狀、用藥、療程等內(nèi)容,甚至還可以尋找醫(yī)生。在研究中發(fā)現(xiàn),入侵者可以完全可以推斷出一個用戶服用的藥物,療程以及他尋找的醫(yī)生的類型。
如上圖所示,是該醫(yī)療系統(tǒng)的添加病例的頁面。此時用戶所選擇的是癥狀標(biāo)簽,用戶可以在這個界面中鍵入自己的癥狀,在鍵入的過程中,系統(tǒng)會幫助用戶彈出一個小的提示窗口。對于其他的用藥、療程等標(biāo)簽,輸入的狀態(tài)也是一樣的。
而這標(biāo)簽欄的設(shè)計(jì),就已經(jīng)會泄露用戶當(dāng)前填寫記錄的類型信息了,因?yàn)辄c(diǎn)擊每個標(biāo)簽,就會產(chǎn)生一個Web數(shù)據(jù)流向量:(1515±1 ->, 266±1 ->, <- 583±1, <- x),這里x的值分別是4855,30154, 20567, 1773, 2757和2299,代表著癥狀(Conditions),用藥(Medications),過敏(Allergies),療程(Procedures),測試結(jié)果(Test Result)和免疫接種(Immunizations)(其中±代表著不同用戶操作時產(chǎn)生的流量大小的差異)。
當(dāng)用戶鍵入信息時,提示列表就會在輸入框的下面出現(xiàn)。這個輸入框大約有十條記錄,會對鍵入的內(nèi)容及時的更新。如上圖所示的提示列表是鍵入“ac”后的結(jié)果。可怕的是,這個自動提示會引發(fā)對用戶信息的災(zāi)難性的泄露,因?yàn)楣粽呖梢酝ㄟ^匹配提示信息響應(yīng)包的大小推斷出用戶輸入的內(nèi)容。更明確的,每個擊鍵都會產(chǎn)生如下的Web數(shù)據(jù)流向量:(253±1 ->,<- 581,<- x),x能夠精確地指示出提示列表的大小,并且對于所有的用戶來說都是一樣的。
隨后收集了在癥狀記錄填寫時,英文中的所有26個字母在作為第一個字母之后的x值,在[273,519]之間。除了字母“h”和“m”對應(yīng)的x值相同外,其他的均不相同。但是隨后他們證實(shí)了,當(dāng)輸入的字母增加時,就可以消除類似上面“h”和“m”的歧義,進(jìn)而推測出用戶的輸入,也就獲得到用戶十分敏感的醫(yī)療隱私數(shù)據(jù)了。
防范方法
針對樣例中根據(jù)數(shù)據(jù)包大小不同的攻擊手段,最簡單有效地手段就是對應(yīng)答的數(shù)據(jù)包進(jìn)行填充處理,可以參考兩種填充的思想。一種是將數(shù)據(jù)包填充到最接近的Det大小的整數(shù)倍,另一種方法是填充增加(0,Det)大小。但是這樣的填充,還是可以根據(jù)接收到的數(shù)據(jù)包的大小推斷出輸入內(nèi)容的集合,當(dāng)差異度增大時或許依舊可以推斷出用戶輸入的內(nèi)容。更加有效安全的做法,就是根據(jù)具體的Web應(yīng)用的特點(diǎn)分析可能造成的側(cè)信道攻擊的潛在威脅加以防范了。
推薦閱讀:明辰智航云安網(wǎng)絡(luò)與虛擬化性能管理系統(tǒng)
總結(jié)
以上是生活随笔為你收集整理的虚拟化:侧信道攻击案例的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: plecs一些细节
- 下一篇: CTF之做题总结(二)