中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么利用藍牙功能兩秒內攻擊解鎖Tapplock智能掛鎖

發布時間:2022-01-18 16:08:26 來源:億速云 閱讀:224 作者:柒染 欄目:數據安全

這期內容當中小編將會給大家帶來有關怎么利用藍牙功能兩秒內攻擊解鎖Tapplock智能掛鎖,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

幾個星期前,Youtube上名為JerryRigEverything的人上傳了一段針對 Tapplock 智能藍牙指紋掛鎖的拆解視頻。視頻顯示,只要用一個GoPro相機固定粘附底座就可以把 Tapplock 后蓋取下,然后再利用螺絲刀就能把 Tapplock 的鎖扣輕松打開。

有點不可思議,這段視頻引發了我對 Tapplock 智能掛鎖的安全性好奇,這款具備指紋識別、手機藍牙和莫爾斯碼解鎖的智能掛鎖,在方便的同時,它安全性如何呢?由此我對 Tapplock 進行了一番研究,最終我實現了2秒之內對Tapplock的解鎖。

演示視頻:

硬件構成

Tapplock智能掛鎖由淬火鋼和耐用壓鑄的Zamak-3鋅合金打造而成。怎么利用藍牙功能兩秒內攻擊解鎖Tapplock智能掛鎖Zamak-3鋅合金常用于兒童玩具、門把手、男士剃須刀等壓鑄產品,嚴格來說,這種金屬材質強度不高,且在400℃以下就能熔化變形,對于結實的鎖體來說,這不是一個好的材質選擇。Zamak-3便于制作一些外觀精致且感覺牢固的精細鑄件,也僅只是看著安全牢固而已。

加密機制

Tapplock智能掛鎖選用了 AES 128位的加密算法,加密強度算是很高的了。怎么利用藍牙功能兩秒內攻擊解鎖Tapplock智能掛鎖

這種加密強度與軍用級別相當,但于對 IoT 黑客們來說,這種對稱加密還是存在著一些缺點,尤其在這里的Tapplock使用說明中,完全沒有密鑰配對、交換和共享的規定,甚至在安全性說明中連基本的身份認證都沒有。所以,類似這種應用場景中,AES-128加密還存在不足。

此外,針對Tapplock掛鎖的安全性,也有諸多爭議,就比如這里的 “牢不可破的Tapplock沒那么安全可靠”,文章中羅列了好多針對 Tapplock 軟硬件的安全測試,最終發現Tapplock并不那么安全。

Tapplock官方宣稱自己的掛鎖 “非常強悍”,但實際在Abloy Protec門鎖面前,估計就沒法比了。Tapplock官方還宣稱自己的掛鎖 "幾乎牢不可破",但最終卻被一把4英寸的螺栓切割器瓦解。看來,一切都是的吹噓的營銷策略。

安全測試

以上各路安全測試也激起了我的好奇心,那就買一把Tapplock智能掛鎖來實際測測吧,80歐元的價格付款,14小時之后,一款Tapplock智能掛鎖就送到我家了。首先,我先按照  JerryRigEverything 的方法,用一個GoPro相機粘附底座粘住了 Tapplock 后蓋。

經過30分鐘的充分粘合后,用力拉粘附底座,可惜怎么也弄不開Tapplock后蓋。原來,在后蓋內還有一個伸到后蓋項部的彈簧梢,是專門為了防止后蓋的松動或轉動而設計的。這個彈簧梢有可能被破壞,但是只靠一個相機粘附底座可能是不行的。但 JerryRigEverything 的Tapplock測試用鎖,沒有這個伸出的彈簧梢,但我們購買的Tapplock測試用鎖是有這個彈簧梢的,所以,我們使勁拉住相機粘附底座最后也沒能按JerryRigEverything的方法打開Tapplock后蓋。

使用低功耗藍牙(BLE)控制 Tapplock

現在,我們轉向低功耗藍牙(BLE)進行測試,意外的是,我們通過這里發現了一些不可思議的事。一般來說,我喜歡閱讀一些費時且深入有創意的 IoT 破解文章,但這里我們就不繞了,直奔主題吧。在不到45分鐘的時間里,我們需要完成對 Tapplock 的破解解鎖。

首先,我們發現,Tapplock 手機APP的HTTP通信中,竟然沒有傳輸加密機制,這是2018年啊,又不是古時候,完全令人吃驚。

怎么利用藍牙功能兩秒內攻擊解鎖Tapplock智能掛鎖從以上網絡分析中可看到,當我每次用BLE連接 Tapplock 時,就會有一個 “隨機” 字符串被發送給Tapplock端,這些字符串貌似是與 Tapplock 進行交流的命令。怎么利用藍牙功能兩秒內攻擊解鎖Tapplock智能掛鎖

但也值得注意的是,無論我執行多少次對 Tapplock 的連接請求,這些字符串數據都是不變的。從以下藍牙利用工具gatttool的命令行執行中可以看到,Tapplock 還容易受到重放攻擊。怎么利用藍牙功能兩秒內攻擊解鎖Tapplock智能掛鎖

由于 Tapplock 手機APP允許用戶與其它人共用Tapplock掛鎖,或是在某個期限內撤銷使用權許可。由此,我把該測試用鎖與其他用戶進行了共享,然后抓取其中的BLE通信數據發現,這種用戶間共享Tapplock的做法,完全與正常單一用戶對Tapplock的控制一樣,也就是,即使你撤銷了其他共享用戶的解鎖權限,但其他用戶一樣可以在此之前,可以通過通信數據抓包方式獲取到解鎖認證的所有信息,利用該信息可以實現對Tapplock的認證解鎖,和單一控制用戶沒啥區別。這就有點像智能門鈴    Ring Smart Doorbell 的問題一樣,不可能撤銷另一具備高解鎖權限的用戶。

沒有出廠重置設置

Tapplock 智能掛鎖沒有配備應有的出廠重置機制,使用賬戶只能刪除其相應的掛鎖信息,而不能刪除相應的解鎖數據。留存的解鎖數據是發送到服務端或是從服務端發送給Tapplock的,因此,處于網絡中適當位置的攻擊者可以攔截這些解鎖數據,利用這些數據間接實現Tapplock開鎖。

這可不是小問題,廢話少說,能開鎖才是重點,現在我們需要來分析一下那些隨機數據是如何實現開鎖的。

完全控制

經過幾分鐘的研究分析,我發現了與Tapplock掛鎖開鎖過程配對的具體函數方法:

 public void regularPair(String str, byte[] bArr, byte[] bArr2) {      bArr = getCMD(CMD_PAIRING_REGULAR, bArr, bArr2);
      send(str, bArr);
      str = TAG;
      bArr2 = new StringBuilder();
      bArr2.append("Regular pair called, send ");
      bArr2.append(BluetoothTool.byteToStr(bArr));
      Log.e(str, bArr2.toString());
   }

該方法中向Tapplock掛鎖發送了包含兩個雙字節數組的固定命令CMD_PAIRING_REGULAR。這兩個雙字節數組會讀取以下相應信息:

this.bluetoothCenterManager.regularPair(lockMacAddress, BluetoothTool.strToBytes(lockInfo.getKey1()), BluetoothTool.strToBytes(lockInfo.getSerialNo()));

有效信息也就是Key1 和 SerialNo,它們是從哪里發送來的呢?原來當鎖發生初始配對時,以上信息經keyAndSerialNo方法,間接轉化為Tapplock掛鎖的藍牙MAC地址。keyAndSerialNo方法如下:

public static String keyAndSerialNo(String str, String str2) {
      str = AndroidTool.md5(str.toUpperCase()).toUpperCase();
      if (str2.equals(KEY_ONE) {
         str = str.substring(0, 8);
      } else if (str2.equals(KEY_TWO) {
         str = str.substring(8, 16);
      } else if (str2.equals(SERIAL_NO) {
         str = str.substring(16, 24);
      }
      return str;
   }

這里,它會把Tapplock掛鎖的藍牙MAC地址大寫,然后把它轉化為一個MD5哈希值,其中0到7個字符為key1,16到23個字節為SerialNo序列號。

是的,解鎖Tapplock唯一需要知道的就是Tapplock的藍牙MAC地址,而這個MAC地址卻是由Tapplock廣播出來的。我直接被這種糟糕的安全性震驚了,于是乎,我又重新訂購了一個Tapplock,并確認了Tapplock掛鎖和其APP的真實性。

最后,我編寫了一個攻擊腳本來掃描Tapplock掛鎖并能實現解鎖,用該腳本可以不到2秒的時間就能解鎖任何一款Tapplock,完全不需要任何高深的知識和技巧。后期,我會將該腳本移植到一個Android應用程序中,使整個解鎖操作更方便快捷。總體來說,實現對Tapplock掛鎖的開鎖成本非常低廉。Tapplock智能掛鎖的這種安全性讓人汗顏,這種做法算是對消費者的不尊重,我也是無語了。怎么利用藍牙功能兩秒內攻擊解鎖Tapplock智能掛鎖

物理安全性

Tapplock聲稱具備防墊片功能,它在鎖栓中采用了傳統的做法,也就是在鎖扣中延伸出了另外一級咬合口,這樣能避免攻擊者用墊片開啟閂鎖。但是Tapplock的咬合口相對比較細薄,且離壓力的接合點有些遠。

怎么利用藍牙功能兩秒內攻擊解鎖Tapplock智能掛鎖

另外,用一個12寸的螺栓切割器,不到10秒就能把Tapplock鎖栓搞定:

怎么利用藍牙功能兩秒內攻擊解鎖Tapplock智能掛鎖

漏洞上報

作為一款智能掛鎖,Tapplock 的安全機制其實非常明確,那就是避免攻擊者開鎖。而鎖的安全程度取決于其自身的威脅模型設計,正確的安全設計多少能減緩攻擊者對鎖的攻擊過程,而且不會出現可被利用的安全紕漏。而作為 IoT 時代的智能掛鎖,Tapplock的安全性簡直堪憂,不出2秒鐘就能被開鎖搞定。但當我把這個問題反饋給Tapplock官方之后,它們竟然回復我:

“Thanks for your note. We are well aware of these notes.”

謝謝你的上報提醒,我們已經知曉了這些問題。

啊,原來Tapplock官方在知曉這些問題的同時,不但不修復,而且還繼續售賣這些鎖具,也不讓消費者知曉。這完全有些讓我震驚。

上述就是小編為大家分享的怎么利用藍牙功能兩秒內攻擊解鎖Tapplock智能掛鎖了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

儋州市| 雷山县| 沅江市| 文化| 麟游县| 新竹县| 营口市| 定边县| 岳西县| 合水县| 浙江省| 四会市| 汾西县| 卓资县| 沅陵县| 乐山市| 巴彦淖尔市| 武强县| 铅山县| 原阳县| 隆尧县| 尉犁县| 石柱| 长治县| 辽阳市| 紫云| 大新县| 泰州市| 龙游县| 宁河县| 秦安县| 康马县| 获嘉县| 饶河县| 开封县| 宁南县| 利津县| 花莲县| 长白| 体育| 德州市|