隨著智能家居等物聯(lián)網(wǎng)生態(tài)逐步普及,更多的傳統(tǒng)設(shè)備物聯(lián)網(wǎng)化呈現(xiàn)急劇增長(zhǎng)趨勢(shì),智能鎖就是一個(gè)很好的例子,智能鎖鎖可以提供一些典型的功能比如:遠(yuǎn)程解鎖,智能手機(jī)集成,高級(jí)身份驗(yàn)證方法等。但作為一個(gè)個(gè)人安防設(shè)備,安全是消費(fèi)者最為關(guān)注的問題,現(xiàn)在我們就來看看一個(gè)優(yōu)秀智能鎖開發(fā)者如何來從開發(fā)角度來提高安全性。
最近安全實(shí)驗(yàn)室RISCURE在一些智能鎖設(shè)備中設(shè)備中分析了內(nèi)部,反向設(shè)計(jì)了固件和相應(yīng)的智能手機(jī)應(yīng)用程序,并嘗試了幾次攻擊,看看鎖是否可能受到損害??偨Y(jié)如下:
(1)可以使用外部設(shè)備上的物理攻擊打開第一個(gè)鎖,通過一些練習(xí),這個(gè)鎖可以在幾分鐘內(nèi)被打開。
(2)可以對(duì)無線通信協(xié)議使用加密攻擊來打開第二個(gè)鎖,使得門在一小時(shí)內(nèi)被遠(yuǎn)程打開而不用鎖或門使用物理的方式。
(3)第三把鎖被充分保護(hù),以抵御測(cè)試者的攻擊。但是也發(fā)現(xiàn)了這一點(diǎn)上的副作用:鎖容易受到拒絕服務(wù)的攻擊,阻止合法用戶解鎖。。
這些研究結(jié)果表明,智能鎖可以帶來新的風(fēng)險(xiǎn),應(yīng)該更強(qiáng)調(diào)智能鎖在發(fā)展過程中的安全。根據(jù)分析,結(jié)合在評(píng)估安全嵌入式設(shè)備方面擁有豐富的經(jīng)驗(yàn),這里總結(jié)了以下,對(duì)智能鎖開發(fā)人員提供了13條建議。
1:正確使用密碼學(xué)
許多智能鎖依賴于加密算法來驗(yàn)證用戶并保持身份驗(yàn)證標(biāo)記保密。雖然一般來說,標(biāo)準(zhǔn)的加密算法是被認(rèn)為非常安全,它們的實(shí)施和組合方式通常決定了實(shí)際情況安全級(jí)別。
避免使用專有的加密協(xié)議
密碼專家對(duì)標(biāo)準(zhǔn)加密算法和協(xié)議進(jìn)行了廣泛的審查和研究。這些標(biāo)準(zhǔn)的算法安全性已經(jīng)非常成熟且經(jīng)過大量驗(yàn)證,但是一些開發(fā)人員卻通過構(gòu)建新的加密算法或以不設(shè)計(jì)使用的方式組合現(xiàn)有加密算法。但效果往往適得其反,但在許多情況下,由于算法的不成熟,設(shè)備往往更容易受到攻擊。
使用高強(qiáng)度的隨機(jī)數(shù)生成器
對(duì)于安全通信,身份驗(yàn)證和設(shè)備密鑰生成,使用高熵隨機(jī)數(shù)至關(guān)重要。確保用于加密目的的隨機(jī)數(shù)是從高質(zhì)量的隨機(jī)數(shù)發(fā)生器獲得的,也就是要做到真隨機(jī)性。比如時(shí)間或者其他可預(yù)測(cè)的值作為種子的偽隨機(jī)數(shù)是很容易被黑的。
不要在所有設(shè)備上存儲(chǔ)相同的秘密
如果在其他設(shè)備中也發(fā)現(xiàn)了涉及預(yù)共享密鑰的鎖密碼,主要風(fēng)險(xiǎn)是它很容易受到攻擊而且不需要攻擊者在現(xiàn)場(chǎng),一般采用一鎖一密的方式是最佳的。
不要使用弱密鑰生成或派生
如果根據(jù)攻擊者已知的可預(yù)測(cè)數(shù)據(jù)或生成密鑰,那么攻擊者可以直接確認(rèn)密鑰。
安全地存放和運(yùn)輸鑰匙
許多開發(fā)人員聲稱具備強(qiáng)大的加密技術(shù),但重要的是確保保存在硬件中的密鑰不能輕易被讀取,也要確保無線通信信道或云端系統(tǒng)中的漏洞不被旁路攻擊或者竊聽。
2:關(guān)閉測(cè)試和調(diào)試功能
在開發(fā)嵌入式設(shè)備時(shí),開發(fā)人員通常使用調(diào)試接口,測(cè)試功能或“后門”來支持他們的開發(fā)過程。在構(gòu)建生產(chǎn)版本時(shí),盡可能地關(guān)閉這些調(diào)試機(jī)制,因?yàn)樗鼈儗?duì)于想攻擊該設(shè)備的人來說也非常有用。,測(cè)試者已經(jīng)在智能鎖上使用這些接口來獲取內(nèi)部存儲(chǔ)器的固件和運(yùn)行時(shí)間。這顯著減少了反向工程和理解固件所需的時(shí)間。
在某些情況下,開發(fā)人員選擇使邏輯上無法訪問測(cè)試功能。但是,我們建議從代碼庫中完全刪除此功能的執(zhí)行,因?yàn)橐恍┻壿嫻艨梢灾匦聠⒂脺y(cè)試功能。此外,保持測(cè)試功能通常會(huì)導(dǎo)致調(diào)試字符串仍然包含在固件中并被引用。這會(huì)導(dǎo)致固件上的逆向工程的可能性。
3:安全更新機(jī)制
與任何其他軟件產(chǎn)品一樣,智能鎖上運(yùn)行的固件可能包含錯(cuò)誤和漏洞。嵌入式設(shè)備通常支持固件升級(jí),通常使用從網(wǎng)上下載的映像。安全地實(shí)施此更新機(jī)制非常重要。我們推薦:
(1)·正確驗(yàn)證更新映像。例如,通過在對(duì)新固件編程之前驗(yàn)證加密簽名。·
(2)防止固件降級(jí),因?yàn)檫@會(huì)帶來重新引入漏洞的風(fēng)險(xiǎn)。
(3)確保未經(jīng)所有者同意,無法從外部調(diào)用軟件更新機(jī)制。
除了真實(shí)性之外,還應(yīng)考慮固件的機(jī)密性。輕松訪問固件,例如,當(dāng)它可以從互聯(lián)網(wǎng)上下載時(shí),簡(jiǎn)化了反向工程過程。
4:防止外部設(shè)備的影響
不要信任來自在惡劣環(huán)境中運(yùn)行的設(shè)備或接口的命令。這包括通過無線通信信道發(fā)送的命令以及外部設(shè)備比如安裝在門外的按鍵所發(fā)送的命令。由于攻擊者已經(jīng)(或通過一些努力可以獲得)控制這些外部設(shè)備,命令可以很容易地監(jiān)控,復(fù)制或修改。
如果外部鍵盤對(duì)用戶進(jìn)行身份驗(yàn)證,則此外部按鍵應(yīng)僅發(fā)送認(rèn)證數(shù)據(jù)到內(nèi)部單元,或者它應(yīng)該執(zhí)行到內(nèi)部單元的安全通道并實(shí)施防篡改。無論如何,請(qǐng)確保他人難以添加竊聽裝備到外部設(shè)備。
5:實(shí)施緩和中繼攻擊
假設(shè)智能鎖在其密鑰(例如,移動(dòng)電話)非常接近時(shí)自動(dòng)打開。在這種情況下,攻擊者可以使用另一個(gè)通信通頻道來縮短智能鎖和所有者智能手機(jī)之間的距離并打開鎖。這種中繼攻擊可以看作是一種中間人攻擊,其中通信沒有被修改。我們建議實(shí)施針對(duì)此類攻擊的緩解措施; 例如,通過要求所有者的故意行動(dòng)(例如,按下按鈕以打開門)或?qū)νㄐ偶訌?qiáng)嚴(yán)格的時(shí)間要求。
6:使用安全編碼實(shí)踐
許多軟件漏洞都是由不安全的編碼實(shí)踐引起的,例如數(shù)據(jù)長(zhǎng)度的內(nèi)存副本來自不受信任來源。這可能導(dǎo)致緩沖區(qū)溢出,從而成功利用智能鎖。我們建議實(shí)施安全編碼實(shí)踐,例如正確的輸入驗(yàn)證,安全的默認(rèn)返回值和深度防御(即實(shí)現(xiàn)多層安全機(jī)制)。
7:防止異常活動(dòng)
在被分析的智能鎖上,我們進(jìn)行了多次攻擊,包括成功和不成功,這將被智能鎖內(nèi)的軟件所識(shí)別如果它可以監(jiān)視異?;顒?dòng)的話,通常,暴力攻擊(例如,暴力輸入PIN)或加密攻擊需要對(duì)智能鎖發(fā)送大量的請(qǐng)求以實(shí)現(xiàn)破解的目標(biāo)。
我們建議監(jiān)控通信異常活動(dòng)并采取適當(dāng)措施。例如,限制對(duì)智能鎖的請(qǐng)求數(shù)并通知所有者。請(qǐng)注意實(shí)施這些應(yīng)對(duì)措施不得導(dǎo)致拒絕服務(wù)(DOS)攻擊的可能性。例如,在十次嘗試失敗后仍保持門關(guān)閉也會(huì)阻止智能鎖的合法用戶進(jìn)門。
8:實(shí)施適當(dāng)?shù)某蜂N支持
在某些情況下,打開智能鎖的密鑰可能會(huì)受到損害或丟失,例如當(dāng)帶有智能鎖密鑰的智能手機(jī)被盜時(shí)。另一個(gè)例子是攻擊者試圖出售使用過的鎖,同時(shí)仍然持有有效的解鎖標(biāo)記。為了防止未經(jīng)身份驗(yàn)證的訪問,智能鎖的開發(fā)人員應(yīng)該提供撤銷可能受到攻擊的密鑰的功能。我們建議確保撤銷機(jī)制不僅依賴于密鑰設(shè)備來刪除標(biāo)記,而且還主動(dòng)對(duì)鎖進(jìn)行干涉來 確保以前有效的密鑰被刪除或被列入黑名單。
9:防止物理攻擊
當(dāng)智能鎖還包括外部單元在惡劣環(huán)境中操作時(shí),必須考慮對(duì)該外部單元的半侵入性和侵入性攻擊。特別是如果外部單元發(fā)送對(duì)內(nèi)部單元的“機(jī)密”消息,可以將外部單元物理地改變?yōu)槌掷m(xù)發(fā)送“機(jī)密”消息。在沒有其他漏洞的情況下,攻擊者可能會(huì)嘗試執(zhí)行更高級(jí)的攻擊例如故障注入或側(cè)通道分析。
故障注入攻擊旨在通過引入環(huán)境異常來干擾目標(biāo)的正常操作,如電壓尖峰或電磁脈沖。干擾可能導(dǎo)致目標(biāo)跳過執(zhí)行某些代碼,或執(zhí)行完全不同的代碼 - 從而達(dá)到繞過身份驗(yàn)證的最終目標(biāo)。這些攻擊特別適合帶外部單元的鎖,攻擊者通常可以控制電源。
側(cè)信道攻擊使用來自電子電路的泄漏來恢復(fù)秘密信息。例如,攻擊者可能能夠測(cè)量芯片的功耗或電磁輻射來恢復(fù)加密算法中使用的密鑰,利用執(zhí)行的漏洞而不是算法本身的弱點(diǎn)。
甚至內(nèi)部單元也可能被側(cè)通道分析或故障注入所攻擊。有一個(gè)最近的例子表明,長(zhǎng)距離邊通道可能攻擊到混合信號(hào)芯片所發(fā)射的無線電信號(hào)。像這樣的芯片通常在智能鎖中找到。因此,我們建議,組件在惡劣環(huán)境中運(yùn)行時(shí)受到故障注入和側(cè)通道分析攻擊時(shí),應(yīng)采取應(yīng)對(duì)措施。
10:拒絕服務(wù)攻擊
與網(wǎng)上的服務(wù)器類似,智能鎖可能會(huì)在使用拒絕服務(wù)(DoS)攻擊的時(shí)候遭受攻擊,攻擊者試圖阻止合法請(qǐng)求來打開門。攻擊者的目標(biāo)可能是為了破壞某個(gè)品牌的聲譽(yù)。攻擊可能是由以下原因引起的:導(dǎo)致某種內(nèi)存損壞的無效命令。故意保持連接打開(例如,藍(lán)牙或Wi-Fi)。中止(惡意)固件升級(jí)嘗試。我們建議考慮這些類型的攻擊,并確保任何外部請(qǐng)求經(jīng)過適當(dāng)?shù)尿?yàn)證和處理。
11:對(duì)于“鑰匙”的攻擊
對(duì)于智能鎖,傳統(tǒng)密鑰由數(shù)字版本取代。這可能是按鍵,智能卡,RFID標(biāo)簽或智能手機(jī)。特別是當(dāng)密鑰在智能設(shè)備上使用時(shí),例如智能手機(jī),必須考慮此設(shè)備的攻擊。第三方應(yīng)用程序可能會(huì)嘗試訪問身份驗(yàn)證令牌或鑰匙打開門。此外,攻擊者可能會(huì)創(chuàng)建一個(gè)請(qǐng)求身份驗(yàn)證令牌的假鎖。智能手機(jī)可能會(huì)認(rèn)為鎖是一個(gè)合法的,并泄露秘密信息。
我們建議在鎖和密鑰之間實(shí)現(xiàn)相互身份驗(yàn)證(雙向認(rèn)證)。
12:保障后端系統(tǒng)
許多智能鎖使用在云端運(yùn)行的后端系統(tǒng)來保持客戶端更新和管理密鑰或令牌。因此,后端系統(tǒng)的安全性就像鎖本身安全一樣重要。對(duì)后端系統(tǒng)的攻擊甚至可以更好地?cái)U(kuò)展,并允許攻擊者獲得對(duì)大量鎖的控制。對(duì)保護(hù)后端系統(tǒng)的不同方法的詳細(xì)分析超出了本文的目的。我們建議考慮適當(dāng)?shù)陌踩珯C(jī)制。這意味著在很大程度上取決于系統(tǒng)的架構(gòu)。
13:這不僅僅是打開門
智能鎖不僅應(yīng)該保護(hù)門??紤]用戶的隱私也很重要。作為一個(gè)例如,竊賊使用郵件堆積作為居民休假的指標(biāo)。在一個(gè)鎖中我們已經(jīng)確定了可能通過展示等效數(shù)字來發(fā)現(xiàn)最后一次使用鎖是什么時(shí)候。這項(xiàng)檢查可以快速執(zhí)行,一個(gè)竊賊可以開車和周圍掃描智能鎖幾天,并同時(shí)建立一個(gè)所有房屋的哪些鎖一直沒被使用的示意圖。由于此信息對(duì)于鎖的所有者不可見,因此他們不知道并且不會(huì)采取任何對(duì)策。
-
智能安防
+關(guān)注
關(guān)注
13文章
643瀏覽量
54237 -
智能鎖
+關(guān)注
關(guān)注
18文章
1068瀏覽量
39293
原文標(biāo)題:開發(fā)智能鎖中提高安全性的13個(gè)關(guān)鍵方法
文章出處:【微信號(hào):iotbanks,微信公眾號(hào):iotbanks】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
電池的安全性測(cè)試項(xiàng)目有哪些?
![電池的<b class='flag-5'>安全性</b>測(cè)試項(xiàng)目有哪些?](https://file1.elecfans.com/web3/M00/01/44/wKgZPGdSWXaAKUfjAABjfIXWbA4979.png)
在電氣安裝中通過負(fù)載箱實(shí)現(xiàn)最大效率和安全性
socket編程的安全性考慮
UWB模塊的安全性評(píng)估
智能系統(tǒng)的安全性分析
固態(tài)電池的安全性分析
在跨境電商中,如何確保網(wǎng)絡(luò)節(jié)點(diǎn)的安全性和合規(guī)性?
智能化病房管理,提高安全性和工作效率
NFC風(fēng)險(xiǎn)與安全性:揭示NFC技術(shù)高安全性的真相
藍(lán)牙模塊的安全性與隱私保護(hù)
芯盾時(shí)代中標(biāo)江蘇省蘇豪控股集團(tuán) 零信任實(shí)現(xiàn)業(yè)務(wù)訪問的高安全性
![芯盾時(shí)代中標(biāo)江蘇省蘇豪控股集團(tuán) 零信任實(shí)現(xiàn)業(yè)務(wù)訪問的<b class='flag-5'>高安全性</b>](https://file1.elecfans.com/web2/M00/C6/B3/wKgaomYCZkOAY1cwAAAZ2knKL44114.jpg)
藍(lán)牙在智能鎖中的應(yīng)用
DC電源模塊的安全性能評(píng)估與測(cè)試方法
![DC電源模塊的<b class='flag-5'>安全性</b>能評(píng)估與測(cè)試<b class='flag-5'>方法</b>](https://file1.elecfans.com/web2/M00/BE/B5/wKgZomW17JqAfFvMAAGBz-gmVP8805.png)
電流探頭測(cè)試小技巧:提高準(zhǔn)確性和安全性
![電流探頭測(cè)試小技巧:<b class='flag-5'>提高</b>準(zhǔn)確<b class='flag-5'>性</b>和<b class='flag-5'>安全性</b>](https://file1.elecfans.com//web2/M00/C4/29/wKgaomXqanqAcTYDAABxbSiBjK071.jpeg)
評(píng)論