如果黑客發起「微暖攻擊」,你怎麼接招? | 論文解讀
來自專欄人工智慧學習筆記13 人贊了文章
論文題目
Thermanator: Thermal Residue-Based Post Factum Attacks On Keyboard Password Entry論文作者 Tyler Kaczmarek,Ercan Ozturk,Gene Tsudik論文地址
https://arxiv.org/abs/1806.10189
也許是在某個冬夜,教授們在大雪中行走,偶然回頭髮現身後腳印的變化:遠處的腳印已經被大雪掩埋;稍遠的腳印在雪中已經模糊不清;而剛剛踏足的地方腳印還清晰可見。
於是教授們腦中靈光一閃:如果我自己是一隻跳動的手指,而這條路是一塊巨大的鍵盤,那根據我的腳印,不就能猜出我正在輸入的東西了嗎?
如果現在輸入的是密碼,
嘿嘿嘿 ……
於是來自加利福尼亞大學歐文分校(UC Irvine)的教授們就開始圍繞這個靈光一現的想法構建完整的場景和解決方案。身為科學家,第一步,當然是為自己的想法尋找理論依據。
理論依據
人擊打鍵盤的動作當然不可能留下如腳印般清晰可見的痕迹,那麼在擊打鍵盤時會發生什麼呢?
人體的溫度與鍵盤的溫度是不同的,那麼在擊鍵發生接觸的時候,肯定會發生熱交換啊!靈感的大門被打開,理論支撐隨之而來。
當兩個物體發生熱傳導,那麼它們當然應該服從熱傳導定律(傅里葉定律):
其中K是被加熱物體的導熱率,A是接觸面積,T1是較熱的物體的溫度,T2是較冷的物體的溫度,t是接觸時間,d是被加熱物體的厚度。集合等式右邊所有項計算出來的q,就是傳導過去的能量(單位焦耳)了。
通過查閱資料,我們獲知:
- 成人指尖的平均面積為400平方毫米。
- 平均人體皮膚溫度是307.15 k (34℃)。
- 按鍵的平均持續時間為0.28 s。
- 鍵盤溫度與空氣的溫度相同,對於一個典型的辦公室來說,OSHA2是294.15 k (21℃)。
- 鍵帽厚度0.0015m,也就是1.5 mm
代入上面的等式,然後按動手邊的小計算器,可計算出q= 0.1458 J 。這就是我們一次擊鍵時傳遞的能量。
唔...那這個q代表什麼呢?能不能跟我們所關注的熱量/溫度建立起公式呢?
是時候召喚出比熱容公式了:
q為總熱能,c為接受熱量物體的比熱容,m是接受熱量物體的質量,△T是改變的溫度。
那麼為了得知鍵盤將這些能量轉化為多少熱量,研究者們觀察了若干鍵盤,並將其中的一些大卸八塊,獲得了以下數據:
常用的鍵盤材質為PTB,密度為1.3 g/cm3;
平均每個鍵帽大小約為[15.5mm x 15.5mm x 1.5mm](其實??的鍵帽厚度就是這時候測量的),約為3.55mm3,平均重量為(不算空格和回車)0.4616g。
通過查閱資料,PTB的比熱容為1000 J/kgK,導熱率為0.274 W/mK。
將我們辛苦獲得的數據代入比熱容公式,按動計算器,算出?T = 0.3092 K,也就是我們每次擊打鍵帽將帶來0.3 ℃左右的溫度改變。選購前視紅外儀的時候,這將是一個重要的參考指標。
當輸入完成,手指離開鍵盤的時候,指尖殘留的熱量會從鍵帽漸漸消失,和大雪覆蓋腳印的過程如出一轍。
既然是散熱的過程那必然服從牛頓冷卻定律:
牛頓冷卻定律:
https://zh.wikipedia.org/wiki/%E5%86%B7%E5%8D%B4%E5%AE%9A%E5%BE%8B
T(t)代表t時刻的溫度,Ts代表環境溫度,T0代表物體(鍵帽)初始溫度,κ是在0.00024025平方米平面上(鍵帽面積)的靜止空氣的冷卻常數。
當將這些數據代入上述公式,最後一次按動計算器,得出 t=55.7 s。也就是說我們通過按鍵傳遞的溫度會在1分鐘內被散發。
通過這麼一系列較為縝密的計算,我們終於為漫步中的奇想建立了一個合理的理論基礎。
知己知彼
理論小樓已經構建完畢,想要在實戰中達到目標,當然需要知己知彼。首先,教授們考察了鍵盤的種類,確定了大多數人都在使用這個布局的鍵盤。
考察完目標後,還需要一個趁手的儀器來獲取理論中預測的鍵盤熱量數據。通過多方打聽,教授知道了,一個叫做前視紅外儀(FLIR)的儀器正是我們需要的東西,於是他們慎重的考察了四款前視紅外儀。除了對精度和效果方面的要求外,價格也是一個重要的參考因素,畢竟這個季節,地主家也沒有餘糧……
最終選定了性價比最優的SC620型作為實驗中的使用的儀器。
模擬實戰
拿到了裝備以後,可謂萬事俱備,只欠實戰。在進行實戰前,給將要進行的實驗起個名字。眾所周知,堡壘最容易從內部攻破,而本次使用的方法就是一種從內部發起的攻擊方法,於是作者們給這種破解密碼的方式起了一個響亮的名字:微暖攻擊(Thermanator Attacks)。
要發動這個攻擊,一共分四步:
- 觀察受害的小肥羊使用鍵盤輸入密碼;
- 稍等一下,期間小肥羊可能離開自己的位置,或者被有趣的東西吸引(總之就是離開電腦);
- 開動先進的前視紅外儀;
- 分析紅外儀中的圖像資料,找出密碼!
RE. 換隻小肥羊,再來一次。
如果第二步進行得不是很順利,請默默祈禱,如果祈禱也不行的話……管他呢,我們只是研發人員,以後使用這套方案的特工們會搞定這種小事的。
密碼分析
在拿到了紅外儀拍攝的結果後,教授們進行了詳細而縝密的分析,分析首先對輸入者們的輸入方式進行了一個分類:
- 二指禪(Hunt-and-Peck)
- 六脈神劍(Touch Typists)
- 九陰白骨爪(Acrylic Nails)
二指禪,顧名思義就是打字只用雙手食指的人。在通過紅外成像,教授們研究了這類輸入者的輸入模式,並觀察了在簡單和複雜密碼兩種情況下鍵盤紅外成像的變化。
圖5、圖6中縱坐標為時間,橫坐標中,每一組為一個密碼。在每個紅外圖像的開始,被按壓過的每個鍵都殘留著熱量,隨著時間流逝,鍵上的熱量會慢慢消失,體現在圖像上即為鍵的缺少,每組密碼中的D 0表示缺少0個鍵,D 1表示缺少一個鍵。
在本實驗中,針對不同難度的密碼都招募了數十位志願者,所以縱坐標的時間,為當前類(二指禪)輸入者的平均時間。
所以對二指禪的使用者來說,根據上面的直方圖,不論是簡單的密碼,還是複雜的密碼,似乎只要根據熱量依次消失的位置,就能夠獲得密碼!
鍵盤敲不好,密碼會被盜啊!
六脈神劍,當然不是指用六根手指打字的人,而是指打字時能夠十指並用的輸入者,這類輸入者左右手分別覆蓋鍵盤的不同區域,在實際開始輸入的時,左右手如果迅速依次按壓鍵帽,可能出現多個鍵迅速冷卻的情況。在紅外成像中的體現就是輸入模式更加複雜。
圖7、圖8的坐標軸含義與圖5、圖6相同。圖7、圖8中體現出這種輸入者模式更複雜的地方是——圖中存在多個鍵幾乎同時迅速消失的情況,有的甚至與單個(第一個)鍵消失的速度相當。
除了複雜的輸入模式,在打字的間歇,這類輸入者的手一般會放置在鍵盤的正上方,有時候可能會與鍵盤保持輕微的接觸。這給紅外成像帶來了極大的干擾。極有可能輸入者並沒有敲擊某個鍵,但是卻因為接觸在圖像上產生熱區從而誤導攻擊者。
從速度到假動作,全方位抵抗微暖攻擊!
儘管如此,對於一個真正的黑客來說,還是能通過微暖攻擊來獲得用戶最近使用過什麼鍵位,再以此通過其他重新排序演算法,來降低傳統的暴力枚舉破解法的計算量。
九陰白骨爪,在小說中,這是一種令很多人無可奈何的功夫。在實驗中,教授們觀察到了一類輸入者,她們大多是女生,有好看的長指甲,所以打字時,也自然是用指甲尖敲擊鍵帽,根本不會發生熱交換啊。在現實中,這種功夫也讓教授們無可能奈何。
結語
儘管本文提到的破解密碼的方法看起來有點科幻,而且實用性可能不太高。但是這種方案的存在,和理論上基本可行,也總會被除了研究者之外的真正黑客,在我們意想不到的場景使用,並且對我們的信息安全造成威脅。
為了應對這種情況,我們可能需要勤練指法來降低自己的中招風險(女同學們可以直接留指甲),同時也期望智慧的科學家和研究者們早日研究出替代手動輸入密碼的安全方案,為我們未來的生活保駕護航。
ps:本文所有設備選購,模擬攻擊表演圖片均來自論文原文,作者只是搬運工。
作者:彩雲小譯七號
審校:劉培源
課程地址 | https://campus.swarma.org
集智俱樂部QQ群|292641157
商務合作及投稿轉載|swarma@swarma.org
◆ ◆ ◆搜索公眾號:集智俱樂部
加入「沒有圍牆的研究所」
推薦閱讀:
※投入6500萬、收集文獻2000餘種!這是集民間力量完成的《中國本草全書》
※文獻綜述撰寫的原則和方法
※史部文獻通考馬端臨卷一百六十六 刑考五刑制
※攻克癌症:中醫治療肝癌(文獻彙編)的更多相關文章