駭客揭露「萬能房卡」漏洞,可秒開全球數百萬飯店房間
近日駭客公佈了一種被萬豪國際、華住酒店集團、錦江酒店集團、希爾頓酒店集團、如家酒店集團等全球知名酒店品牌廣泛採用的RFID感應房卡門鎖的漏洞,黑客只需獲取任何一張酒店房卡,就可以複製出可開啟該飯店所有房間的「萬能鑰匙」。
近日,安全研究人員Ian Carroll、Lennert Wouters及其團隊揭露了瑞士鎖具製造商Dormakaba生產的Saflok品牌RFID感應房卡鎖存在的一系列安全漏洞(命名為Unsaflok)。
Saflok門鎖系統被萬豪國際、華住酒店集團、錦江酒店集團、希爾頓酒店集團、如家酒店集團等全球知名酒店廣泛採用,全球131個國家有13000個物業的300萬扇門安裝了Saflok門鎖。
可“秒開”全球數百萬酒店房間的“萬能房卡”
Saflok房卡門鎖的破解始於2022年8月份拉斯維加斯舉行的駭客大會。在大會期間的一場私人活動中,一小部分研究人員受邀「合法」入侵一個拉斯維加斯酒店房間,他們在一個擠滿筆記型電腦和紅牛飲料的套房內競賽,挖掘房間內所有電子設備的漏洞,從電視到床邊的VoIP電話,無一倖免。
其中一組駭客(Carroll和Wouters的團隊)將研究重點放在了房間門鎖上,這或許是飯店房間中最敏感的技術之一。時隔一年多,團隊終於公佈了其研究成果:一種只需輕觸兩下即可打開全球數百萬酒店房間的技術。
利用Dormakaba加密系統和底層的MIFARE Classic RFID系統的漏洞,Carroll和Wouters成功破解了Saflok感應房卡鎖。他們只需取得目標飯店的任意房卡(例如預訂房間或從廢棄房卡盒中拿走一張),然後使用價值300美元的RFID讀寫設備(包括Proxmark3、Flipper Zero和支援NFC的安卓智慧型手機)讀取該卡中的特定代碼,最後寫入兩張他們自己製作的房卡。只要將這兩張卡輕觸門鎖,第一張卡就會重寫門鎖資料中的某一部分,第二張卡就會打開門鎖。
“只需輕觸兩下,我們就能打開門,”比利時魯汶大學計算機安全和工業密碼學研究小組的研究員Wouters說,“而且這種方法適用於酒店的每一扇門。”
僅有36%的Saflok門鎖修復漏洞
Wouters和Carroll早在2022年11月就將他們的破解技術細節完整地分享給了Dormakaba公司。 Dormakaba表示,自2023年初以來,他們向飯店客戶廣泛告知了Saflok的安全漏洞問題,並協助客戶修復或更換易受攻擊的鎖。對於過去八年內銷售的大部分Saflok系統,無需單獨更換各個門鎖的五金。飯店只需更新或更換前台管理系統,並由技術人員逐門快速重新編程即可。
然而,Wouters和Carroll表示,Dormakaba告知他們,截至本月,只有36%的已安裝Saflok系統完成了更新。更糟的是,由於這些鎖具並非連網設備,而且部分老式鎖具仍需進行硬體升級,他們估計漏洞的完全修復至少還需要幾個月的時間,甚至有些老式系統可能需要數年才能完成(編者:這往往意味著很多門鎖壓根不會被修復)。
破解詳情:利用了兩種漏洞
Wouters和Carroll的研究小組的Dormakaba門鎖破解技術利用了兩種不同的漏洞:一種漏洞允許他們寫入房卡數據,另一種漏洞讓他們知道需要寫入哪些數據到房卡上才能成功欺騙Saflok門鎖使其打開。
在分析Saflok房卡時,研究者發現這些房卡使用的是MIFARE Classic RFID系統,該系統早在十多年以前就被發現存在漏洞,駭客可以透過該漏洞寫入房卡數據,不過暴力破解過程可能需要長達20秒的時間。然後,他們破解了Dormakaba加密系統的一部分,即所謂的金鑰衍生函數,使他們能夠更快地寫入資料到房卡。利用上述技巧中的任何一種,研究人員都可以隨意複製Saflok房卡,但仍然無法產生可打開所有房間的「萬能房卡」。
接下來,最關鍵的破解步驟是取得Dormakaba分發給飯店的門鎖程式設計設備(可向網路購買二手物品),以及用於管理房卡的前台軟體副本。透過逆向工程該軟體,他們能夠讀取儲存在卡上的所有數據,提取酒店物業代碼以及每個房間的代碼,然後創建自己的值並使用Dormakaba系統的加密方式進行加密,從而偽造一個可以打開飯店內任何房間的萬能房卡。 Wouters說:“從本質上講,你可以製作一張看起來像是由Dormakaba軟體創建的房卡。”
那麼Carroll和Wouters是如何獲得Dormakaba的前台軟體的呢? Wouters坦言:「我們只需禮貌地向業內人士打聽。而且,廠商通常認為沒有人會將他們的設備在eBay上出售,也沒有人會複製他們的軟體。但我想每個人都知道,這些假設都是自欺欺人。”
一旦完成了所有逆向工程工作,最終的攻擊只需使用價值300美元的Proxmark RFID讀寫設備和幾張空白RFID卡、一部安卓手機或Flipper Zero無線電破解工具即可完成。
這項技術的最大限制在於,駭客仍然需要一張目標飯店房間的房卡(甚至是已過期的房卡)。這是因為每張卡都有一個他們需要讀取並複製到偽造卡上的特定物件代碼,以及目標房間的代碼。
如何識別易受攻擊的門鎖?
Unsaflok漏洞影響多個Saflok型號,包括由System 6000或Ambiance軟體管理的Saflok MT、Quantum系列、RT系列、Saffire系列和Confidant系列。
Carroll和Wouters指出,飯店客人可以透過門鎖上讀卡區的設計特徵(一個帶有波浪線圈的圓形RFID讀卡機)來識別是否易受攻擊的門鎖(但並非總是如此)。
兩個常見的易受攻擊的Saflok產品型號圖片:unsaflok.com
研究者還建議,如果用戶發現入住飯店房間的門鎖是Saflok品牌,可用NXP開發的NFCTaginfo應用程式(提供iOS和安卓兩種版本)檢查他們的房卡來確定是否已更新。如果門鎖由Dormakaba製造,並且該應用程式顯示房卡仍然是MIFARE Classic卡,則很可能仍然存在漏洞。
安全建議:拴上防盜鏈
兩位研究人員建議,如果房卡有漏洞,除了避免將貴重物品留在房間之外,在房間內時務必栓上防盜鏈,因為門鎖上的保險栓也由房卡鎖控制,無法提供額外的安全保障。
即使目前全球有大量飯店房間並未完全實施修復方案,Wouters和Carroll認為,讓飯店客人了解風險總比讓他們產生虛假的安全感要好。畢竟,Saflok品牌已經銷售了三十多年,並且可能在這些年的大部分或全部產品都存在漏洞。儘管Dormakaba表示他們沒有發現Wouters和Carroll的技術過去曾被使用過,但研究人員指出,這並不意味著它從未秘密發生過。
Wouters說:“我們認為這個漏洞已經存在了很長時間。”“我們不可能是第一個發現它的人。”