當(dāng)?shù)谌椒?wù)收集各種人的信息,并利用這些信息幫助在其他在線用戶的海洋中識(shí)別他們時(shí),就會(huì)發(fā)生對(duì)用戶的在線追蹤。這種對(duì)特定信息的收集通常被稱為"指紋",攻擊者通常利用它來(lái)獲取用戶的信息。今天,研究人員宣布,他們成功地利用WebGL(網(wǎng)絡(luò)圖形庫(kù))的優(yōu)勢(shì),為每一顆GPU創(chuàng)建了一個(gè)獨(dú)特的指紋,以此追蹤在線用戶。
這個(gè)漏洞之所以有效,是因?yàn)槊繅K硅片在制造時(shí)都有自己的變化和獨(dú)特的特征,就像每個(gè)人都有一個(gè)獨(dú)特的指紋一樣。即使在確切的處理器型號(hào)中,硅料的差異也使每個(gè)產(chǎn)品與眾不同,這就是為什么你不能將每一枚處理器超頻到相同的頻率,所謂芯片“體質(zhì)”存在差異的原因。
如果有人能精確地探索GPU的差異,并利用這些差異通過(guò)這些特征來(lái)識(shí)別在線用戶,會(huì)發(fā)生什么?這正是創(chuàng)建DrawnApart的研究人員所想到的。使用WebGL,他們運(yùn)行了一個(gè)GPU工作負(fù)載,在16個(gè)數(shù)據(jù)收集處識(shí)別了超過(guò)176個(gè)測(cè)量值。這是在GLSL(OpenGL著色語(yǔ)言)中使用頂點(diǎn)操作完成的,工作負(fù)載被阻止在處理單元的網(wǎng)絡(luò)上隨機(jī)分布。
DrawnApart可以測(cè)量和記錄完成頂點(diǎn)渲染的時(shí)間,記錄渲染的確切路線,處理停滯功能,以及更多。這使得該框架能夠發(fā)出獨(dú)特的數(shù)據(jù)組合,變成GPU的指紋,可以在線利用。在下面的圖中你可以看到兩個(gè)GPU(相同型號(hào))的數(shù)據(jù)跟蹤記錄,從中可以顯示出變化。
WebGL API的創(chuàng)造者Khronos Group已經(jīng)成立了一個(gè)工作小組來(lái)處理這種情況,并防止API泄露過(guò)多的信息來(lái)在線追蹤用戶。
文章轉(zhuǎn)載自cnBeta.COM