破解加密磁碟的超級必殺技: 急凍攻擊

Princeton的Center for Information Technology Policy最近發明了一個破解加密磁碟的超級必殺技Cold Boot Attacks(直接翻譯應該稱為冷開機攻擊法,但聽起來容易誤會。所以讓我們叫它做「急凍攻擊」吧。)這方法之所以能稱得上「必殺」,是因為它不管你是什麼作業系統,或是用什麼需要一萬台電腦算上一億年的加密方法,只要電腦在已開機狀態,就能輕易取得解密用的key。這方法的關鍵是他們發現存在DRAM中的資訊,其實並不是一斷電就會消失。在室溫下,資料會有規則的慢慢消失,整個消失過程也要花上一分多鐘。也就是說,只要能碰到開機中的電腦,我們只要把它插頭拔掉,再用外接硬碟或光碟重開機,就能輕易地把剛才還存在DRAM中的資料dump出來。而任何硬碟加密保護技術,只要已經打過密碼進入系統,那麼解密用的key就一定存在RAM裡面,於是這個dump DRAM的方法就能輕易取得各種暫存在記憶體中的密碼,甚至是已解密的重要資料。雖然這方法很厲害,但畢竟只有一分多鐘的時間能dump memory,實在有點太短了(光重開機就得花上個半分鐘吧)。於是他們提出更厲害的招數:只要將DRAM降溫,就能延長資料消失的時間。在下面的影片中,他們拿壓縮空氣罐對著DRAM噴一噴,就輕易的讓資料保存在DRAM裡超過10分鐘。十分鐘已經足夠把DRAM拔起來,拿到另一台電腦去慢慢dump了...。(他們甚至實驗過如果把DRAM泡在-196°C的液態氮中,即使過了一個小時資料都能完整保存。)Princeton CITP還提供了一個簡單的實驗方法
  1. 用任何程式語言,在記憶體中隨便塞入一串可辨認的字串。例如#!/usr/bin/env python# a pirate's favorite chemical elementa = ""while 1: a += "ARGON"
  2. 讓這程式跑個幾分鐘,以確定記憶體中有夠多份這個字串。
  3. 接著拔掉電腦插頭,再重開機。最後看看現在記憶體中還有沒有這個字串。Lin...
閱讀全文