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

物聯(lián)網(wǎng)的應(yīng)用范圍有哪些?
物聯(lián)網(wǎng)未來(lái)發(fā)展趨勢(shì)如何?
物聯(lián)網(wǎng)工程師為什么要學(xué)Linux?
物聯(lián)網(wǎng)設(shè)備和應(yīng)用的安全性
為什么選擇蜂窩物聯(lián)網(wǎng)
物聯(lián)網(wǎng)就業(yè)有哪些高薪崗位?
物聯(lián)網(wǎng)設(shè)備安全性:挑戰(zhàn)和解決方案

藍(lán)牙AES+RNG如何保障物聯(lián)網(wǎng)信息安全
物聯(lián)網(wǎng)系統(tǒng)的安全漏洞分析
物聯(lián)網(wǎng)設(shè)備的標(biāo)準(zhǔn)與規(guī)范
如何實(shí)現(xiàn)物聯(lián)網(wǎng)安全
基于物聯(lián)網(wǎng)的設(shè)備管理

評(píng)論