隨著我們繼續(xù)看到更多連接互聯(lián)網(wǎng)的設(shè)備,我們必須承認(rèn)它們將容易受到攻擊、遠(yuǎn)程禁用或以其他不受歡迎的方式受到損害——每種情況都嚴(yán)重威脅到這些新商業(yè)模式的整個基礎(chǔ)。
考慮以下家庭自動化領(lǐng)域的示例。它是物聯(lián)網(wǎng) (IoT) 的最大消費(fèi)者應(yīng)用程序之一,并且可能是攻擊者最有利可圖的應(yīng)用程序之一。犯罪分子可以如何處理存儲在可能被認(rèn)為是無害的家庭自動化設(shè)備(如 IP 連接的智能恒溫器)中的信息?嗯,這些設(shè)備是為了學(xué)習(xí)你的習(xí)慣而設(shè)計(jì)的。它們旨在識別或“學(xué)習(xí)”您何時在家和何時外出,以便它們可以優(yōu)化用于加熱和冷卻房屋的能量。你可以猜到我會用這個去哪里。他們會了解您的習(xí)慣并跟蹤您的日常生活——對于那些想不請自來的人來說,這是一種聳人聽聞的素材。
還記得三星智能電視的案例嗎?為了能夠響應(yīng)語音命令,它會不斷地“傾聽”您的談話,對其進(jìn)行解釋,然后甚至可能將其發(fā)送給“授權(quán)”的第三方。是的,我是認(rèn)真的。早在 2013年,智能電視就被證明是可破解的(不是沒有鎖定安全性)。這是一個完美的例子,證明了對多個可訪問性級別的需求。在智能電視案例中,只有一個用戶帳戶可能,并且該用戶(即攻擊者)可以訪問設(shè)備上的任何內(nèi)容。
通過默默無聞的安全
在過去的許多情況下,產(chǎn)品開發(fā)人員會依靠他們的設(shè)備太少且對黑客來說太無趣這一事實(shí)來嘗試?yán)盟鼈?。換句話說,這些設(shè)備是模糊的——網(wǎng)絡(luò)上表面上未知的節(jié)點(diǎn)。不幸的是,這種策略將不再有效。預(yù)計(jì)在未來五年內(nèi)將有數(shù)十億臺設(shè)備連接到互聯(lián)網(wǎng)(功能種類繁多),這些曾經(jīng)“不感興趣”的設(shè)備將成為非常誘人的攻擊目標(biāo)。
這個特定的網(wǎng)站專門用于展示連接到 Internet 的設(shè)備的存在,以及(如果可能)的類型。此類設(shè)備可能是網(wǎng)絡(luò)攝像頭、恒溫器或任何其他聯(lián)網(wǎng)的家庭自動化設(shè)備。通過這個網(wǎng)站,訂閱者可以掃描和搜索一系列連接的設(shè)備。
現(xiàn)在,如果您在這種情況下依靠默默無聞來保護(hù)您,您可能不會擔(dān)心更改默認(rèn) root 密碼。此密碼由供應(yīng)商設(shè)置為始終同名,因?yàn)槿绻J(rèn)密碼始終相同,則編寫文檔非常簡單。對消費(fèi)者來說是個壞主意。..
未更改的默認(rèn) root 密碼是對黑客的公開邀請,可以登錄并控制攝像頭。他們有效地獲得了通過遙控器查看和錄制視頻的完全控制權(quán),而所有者完全不知道。
您可能讀過一個關(guān)于嬰兒和父母用作嬰兒監(jiān)視器的網(wǎng)絡(luò)攝像頭的故事。父親走進(jìn)他孩子的房間,聽到一個男人通過攝像頭的揚(yáng)聲器在催促孩子“醒來”。當(dāng)父親走進(jìn)房間時,鏡頭搖動,另一端的人開始對他大喊粗俗,直到他拔掉了相機(jī)。
這只是為什么互聯(lián)網(wǎng)安全在未來幾年將變得非常重要的眾多例子之一。它需要成為聯(lián)網(wǎng)設(shè)備制造商的首要考慮因素。
這些設(shè)備中的大多數(shù)都運(yùn)行 Linux,這是世界上用于運(yùn)行嵌入式設(shè)備的最流行的操作系統(tǒng)。在本文中,我們將探討在保護(hù)連接 Linux 的設(shè)備時需要考慮的幾種技術(shù)。
在我們詳細(xì)介紹之前,重要的是您必須深入了解安全風(fēng)險(xiǎn),識別與此類業(yè)務(wù)攻擊相關(guān)的潛在成本,并最終了解如何設(shè)計(jì)您的軟件并適當(dāng)?shù)亟⒅悄馨踩呗?。?yīng)該說,額外的安全性確實(shí)是有代價的,通常是在性能損失、功能受限和額外的開發(fā)成本方面。
為了說明這些考慮,我希望您考慮在筆記本電腦或工作站上運(yùn)行增強(qiáng)的安全軟件的體驗(yàn)。我說的是防病毒軟件、驅(qū)動器或文件系統(tǒng)加密以及訪問控制軟件。我們大多數(shù)人都欣賞這些程序提供的額外安全性。但是,我可能會偏離基礎(chǔ),我猜大多數(shù)讀者有時實(shí)際上會禁用部分或全部功能,特別是如果您是開發(fā)人員并嘗試運(yùn)行一些 CPU 密集型任務(wù),安裝可能無法安裝的軟件工具或?qū)嵱贸绦虮?IT “批準(zhǔn)”,甚至運(yùn)行執(zhí)行大量文件系統(tǒng)訪問的程序,例如從源代碼構(gòu)建 Linux 發(fā)行版。
保護(hù)連接的 Linux 設(shè)備
在這里,我將分享一些簡單的方法,您可以使您的嵌入式 Linux 產(chǎn)品更安全地抵御某些類型的威脅,而無需安裝太多額外的軟件或?qū)S校ㄉ虡I(yè))軟件。
禁用并刪除(或不安裝)不必要的服務(wù)
Linux 的優(yōu)點(diǎn)之一是在開發(fā)過程中利用網(wǎng)絡(luò)服務(wù)調(diào)試和部署應(yīng)用程序是多么容易。這些服務(wù)(TFTP、SFTP、SSH、NTP、gdbserver 等)也是攻擊者目標(biāo)最豐富的切入點(diǎn)。您應(yīng)該只在生產(chǎn)期間在您的 Linux 平臺中實(shí)現(xiàn)特定的必需服務(wù),并使用諸如 nmap 之類的端口掃描器來檢查開放端口(例如,偵聽服務(wù))。
使用防火墻
防火墻的基本原因是在內(nèi)部和外部網(wǎng)絡(luò)之間提供屏障。這是網(wǎng)關(guān)或路由器的關(guān)鍵功能,因?yàn)榧僭O(shè)內(nèi)部網(wǎng)絡(luò)是開放且受信任的。Linux 有許多可用的防火墻解決方案。其中包括iptables/netfilter、Shorewall和UFW(簡單防火墻)。有不同級別的功能、易用性和可配置性。
安全
Grsecurity是 Linux 內(nèi)核源代碼的一組補(bǔ)丁,可提供增強(qiáng)的安全性。它為內(nèi)核提供了基于角色的訪問控制 (RBAC) 系統(tǒng),因此進(jìn)程(和用戶)只能訪問最少數(shù)量的文件,僅此而已。此外,它還提供了一個名為 PaX 的不同名稱的捆綁補(bǔ)丁。PaX 提供了其他安全功能,可以通過創(chuàng)建執(zhí)行空間保護(hù)來消除某些其他類型的攻擊,例如緩沖區(qū)溢出。它還可以解決進(jìn)程的空間布局隨機(jī)化問題,以擊敗依賴于了解任務(wù)的默認(rèn)虛擬內(nèi)存組織(緩沖區(qū)溢出和其他攻擊)的漏洞[8]。
RBAC
RBAC 的目標(biāo)是最小化用戶或進(jìn)程對系統(tǒng)其余部分的特權(quán)。例如,許多連接互聯(lián)網(wǎng)的基于 Linux 的系統(tǒng)可以實(shí)現(xiàn)許多互聯(lián)網(wǎng)服務(wù),包括 Web 服務(wù)器以及安全外殼 (SSH) 服務(wù)器。這些提供了對設(shè)備的各種級別的訪問,允許用戶使用漂亮的用戶界面(通過 Web 服務(wù)器)進(jìn)行簡單的配置更改,或者使用 SSH 進(jìn)行更精細(xì)的更改。RBAC 可以根據(jù)用戶的特定角色限制用戶對沙箱的讀取、寫入和執(zhí)行權(quán)限。這類似于基于 Linux/Unix 組限制對文件的訪問,其中 RBAC 中的角色類似于組。
RBAC 如何真正幫助保護(hù)您的設(shè)備?對于初學(xué)者,您可以設(shè)置一個策略來限制所有用戶對特定文件和系統(tǒng)服務(wù)的訪問,甚至包括 root 用戶。如果使用不同的漏洞利用來獲得 root,則攻擊者可能無法獲得對系統(tǒng)的完全訪問權(quán)限,這是他們成為 root 用戶時通常期望的。
PaX 功能
PaX(grsecurity 的一部分)有助于抵御緩沖區(qū)溢出攻擊。緩沖區(qū)溢出是指攻擊者將數(shù)據(jù)注入進(jìn)程的堆棧,從而允許他們更改程序流程并執(zhí)行惡意代碼。
許多現(xiàn)代處理器架構(gòu)都實(shí)現(xiàn)了一個位 (NX),它將內(nèi)存部分標(biāo)記為可執(zhí)行或不可執(zhí)行。PaX 可以關(guān)閉所有數(shù)據(jù)段的執(zhí)行權(quán)限,并可以禁用內(nèi)存中所有可執(zhí)行段的寫權(quán)限。這樣,即使攻擊者能夠?qū)崿F(xiàn)緩沖區(qū)溢出,他們也無法將代碼加載到指定的可執(zhí)行內(nèi)存中。
此外,PaX 在加載時隨機(jī)化進(jìn)程的地址空間。大多數(shù)進(jìn)程將加載到虛擬內(nèi)存的特定區(qū)域,加載庫,并將堆棧放置在已知的內(nèi)存位置(映射)中。這使得攻擊者很容易運(yùn)行緩沖區(qū)溢出,因?yàn)槎褩T谕粋€地方。通過隨機(jī)化堆棧位置,除了內(nèi)存的其他部分之外,它確實(shí)很難運(yùn)行緩沖區(qū)溢出,因?yàn)?(A) 攻擊者必須猜測堆棧的位置,或者 (B) 攻擊者可能會覆蓋一部分可執(zhí)行代碼并使進(jìn)程自身崩潰。
Grsecurity 實(shí)現(xiàn)和配置
grsecurity 的大部分功能都不需要額外的配置,這是其他 Linux 安全增強(qiáng)(例如 SELinux)所不能做到的。
您可以通過下載內(nèi)核版本的補(bǔ)丁來實(shí)現(xiàn) grsecurity,然后使用補(bǔ)丁實(shí)用程序?qū)⒀a(bǔ)丁更改應(yīng)用到內(nèi)核源代碼樹。在編譯內(nèi)核之前,您需要配置 grsecurity 的構(gòu)建選項(xiàng)。有很多選項(xiàng),但您可能想要開始的一個是將 GRKERNSEC_CONFIG_AUTO 設(shè)置為 Y。這將為您的內(nèi)核配置 grsecurity 提供最簡單的方法,并且可能是一個很好的開發(fā)基準(zhǔn)。
把它包起來(安全,連接時)
對于物聯(lián)網(wǎng)產(chǎn)品,在設(shè)計(jì)之初就將安全性構(gòu)建到產(chǎn)品中是絕對必要的。如果您不這樣做,您的業(yè)務(wù)的關(guān)鍵部分就會受到攻擊。真的就是這么簡單。您構(gòu)建的安全級別需要與與給定受損設(shè)備相關(guān)的風(fēng)險(xiǎn)相匹配。不過,請記住,您可以做一些相當(dāng)簡單的事情來大大提高保護(hù)級別。
-
處理器
+關(guān)注
關(guān)注
68文章
20256瀏覽量
252450 -
Linux
+關(guān)注
關(guān)注
88文章
11763瀏覽量
219088 -
源代碼
+關(guān)注
關(guān)注
96文章
2953瀏覽量
70344
發(fā)布評論請先 登錄
Lora基站在物聯(lián)網(wǎng)應(yīng)用的重要性
芯源半導(dǎo)體在物聯(lián)網(wǎng)設(shè)備中具體防護(hù)方案
請問如何協(xié)同工作來保障物聯(lián)網(wǎng)設(shè)備固件安全的?
在物聯(lián)網(wǎng)設(shè)備面臨的多種安全威脅中,數(shù)據(jù)傳輸安全威脅和設(shè)備身份安全威脅有何本質(zhì)區(qū)別?
學(xué)習(xí)物聯(lián)網(wǎng)怎么入門?
學(xué)習(xí)物聯(lián)網(wǎng)可以做什么工作?
信長城重構(gòu)物聯(lián)網(wǎng)安全新范式
物聯(lián)網(wǎng)藍(lán)牙模塊有哪些優(yōu)勢?
物聯(lián)網(wǎng)設(shè)備五大安全認(rèn)證和標(biāo)準(zhǔn)
基于Linux的物聯(lián)網(wǎng)設(shè)備的安全案例
評論