時至今日,許多企業(yè)和政府機(jī)構(gòu)都建有通信隔離網(wǎng)絡(luò)或者在不同網(wǎng)絡(luò)之間使用受限數(shù)據(jù)流。這些計算機(jī)網(wǎng)絡(luò)都是針對特定環(huán)境創(chuàng)建的,因為這些環(huán)境中可能包含非常特別或者非常重要的信息,比如工業(yè)控制系統(tǒng)、處理特定數(shù)據(jù)的高度安全環(huán)境或者符合安全標(biāo)準(zhǔn)的生產(chǎn)網(wǎng)絡(luò)等。在當(dāng)代網(wǎng)絡(luò)安全歷史上,發(fā)生過諸如震網(wǎng)(Stuxnet)的惡意軟件滲透進(jìn)核電廠隔離網(wǎng)絡(luò)中的真實事件。鑒于這個案例,我們可以看出,如果只是單純地將計算機(jī)網(wǎng)絡(luò)與其他網(wǎng)絡(luò)斷開是遠(yuǎn)遠(yuǎn)不夠的(不管是通過斷開網(wǎng)線還是斷開WiFi連接方式)。任何類型的外部連接都有可能給計算機(jī)帶來安全風(fēng)險。本文分析了此類隱藏網(wǎng)絡(luò)(Hidden Network)的可能性,介紹了如何檢測此類網(wǎng)絡(luò)的方法,并且介紹了如何在企業(yè)網(wǎng)絡(luò)中對此類網(wǎng)絡(luò)進(jìn)行防護(hù)。
一、網(wǎng)絡(luò)連接的安全風(fēng)險
就數(shù)據(jù)網(wǎng)絡(luò)安全方面而言,人們趨向于使用基于鏈路層的網(wǎng)絡(luò)連接(如以太網(wǎng)、WiFi連接等等)來分析網(wǎng)絡(luò)安全性。企業(yè)網(wǎng)絡(luò)的復(fù)雜度遠(yuǎn)遠(yuǎn)超過這類網(wǎng)絡(luò),因此我們需要從多個角度分析企業(yè)網(wǎng)絡(luò)的安全性。
對企業(yè)數(shù)據(jù)網(wǎng)絡(luò)的流量分析是理解企業(yè)網(wǎng)安全性的主要方法。此外,我們也可以對使用常見協(xié)議的網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行搜索分析,以了解企業(yè)網(wǎng)的安全性,這些節(jié)點(diǎn)往往是提供重要服務(wù)或者承擔(dān)關(guān)鍵作用的節(jié)點(diǎn)。基于這些背景知識,我們可以得出結(jié)論,那就是基于風(fēng)險的網(wǎng)絡(luò)分析可以根據(jù)不同的準(zhǔn)則在企業(yè)網(wǎng)安全方面為我們提供豐富的數(shù)據(jù)及信息。
以直觀的方式映射網(wǎng)絡(luò)結(jié)構(gòu)是理解網(wǎng)絡(luò)節(jié)點(diǎn)和網(wǎng)絡(luò)設(shè)置的最佳選擇,因此,這種情況下,使用遠(yuǎn)程測量方式來分析網(wǎng)絡(luò)安全風(fēng)險是非常必要的一種選擇。通過分析網(wǎng)絡(luò)上交換的數(shù)據(jù),我們能夠更好地理解網(wǎng)絡(luò)整體結(jié)構(gòu)以及網(wǎng)絡(luò)內(nèi)部的安全威脅。

圖1. 反映不同節(jié)點(diǎn)以及節(jié)點(diǎn)連接情況的網(wǎng)絡(luò)拓?fù)鋱D
節(jié)點(diǎn)的表示方法以及節(jié)點(diǎn)的連接結(jié)構(gòu)對網(wǎng)絡(luò)內(nèi)部不同邊界的勾畫來說特別重要,合適的表示方法可以在抵御入侵行為、檢測攻擊活動或者預(yù)先實施安防措施方面起到非常大的作用。
問題在于對網(wǎng)絡(luò)的理解上。在許多情況下,人們將網(wǎng)絡(luò)定義為一組連接在一起的計算機(jī),各個節(jié)點(diǎn)之間可能通過不同的技術(shù)或者協(xié)議相互通信。在大多數(shù)情況下,普通用戶或者系統(tǒng)、網(wǎng)絡(luò)管理員樂于通過以太網(wǎng)或WiFi方式連接到不同機(jī)構(gòu)的計算機(jī)上,本文針對的并不是這種場景。當(dāng)某個組織沒有對USB設(shè)備的使用做出限制時,它就容易受到隱藏網(wǎng)絡(luò)的威脅。攻擊者可以使用USB設(shè)備創(chuàng)建隱藏網(wǎng)絡(luò),在物理或邏輯隔離的計算機(jī)之間進(jìn)行通信。
1.1 網(wǎng)絡(luò)隔離及USB連接
我們通過一個簡單的案例,使大家更好理解基于USB設(shè)備的隱藏網(wǎng)絡(luò)的危害。假設(shè)某個組織的網(wǎng)絡(luò)由3種類型的VLAN(虛擬局域網(wǎng))組成,第一個VLAN包含:
1、計算機(jī)A。該計算機(jī)與同一VLAN的其他計算機(jī)相連。
2、計算機(jī)B。該計算機(jī)與同一VLAN的其他計算機(jī)相連。
第二個VLAN包含:
1、計算機(jī)C。該計算機(jī)與同一VLAN的其他計算機(jī)相連。
2、計算機(jī)D。該計算機(jī)與同一VLAN的其他計算機(jī)相連。
3、計算機(jī)E。該計算機(jī)與同一VLAN的其他計算機(jī)相連。
第三個VLAN包含:
1、計算機(jī)F。該計算機(jī)與同一VLAN的其他計算機(jī)相連。
網(wǎng)絡(luò)拓?fù)浯笾氯缦聢D所示,從中我們可以看到VLAN對計算機(jī)的隔離效果。假設(shè)該機(jī)構(gòu)的員工使用USB設(shè)備來傳輸數(shù)據(jù),那么這些數(shù)據(jù)很有可能會從一個VLAN中的計算機(jī)傳輸?shù)搅硪粋VLAN中的計算機(jī)。USB設(shè)備本身就是一個安全威脅源,可以在組織內(nèi)部創(chuàng)建一個隱藏網(wǎng)絡(luò)。

圖2. 計算機(jī)在不同VLAN中的連接情況
假設(shè)計算機(jī)F以及計算機(jī)E正在使用USB設(shè)備來交換信息,此時這兩臺計算機(jī)之間正在創(chuàng)建一個隱藏網(wǎng)絡(luò)。這一情況可以使用兩個節(jié)點(diǎn)(E和F)以及從USB設(shè)備來源主機(jī)到第二臺主機(jī)之間的一條有向弧邊來表示。

圖3. 在已有網(wǎng)絡(luò)拓?fù)渖闲纬傻囊粋覆蓋型(overlapping)隱藏網(wǎng)絡(luò)
二、操作系統(tǒng)中的USB設(shè)備連接情況
當(dāng)某個USB設(shè)備在兩臺主機(jī)之間交叉連接時,這種情況就類似于植物的“授粉”現(xiàn)象。這原本是生物學(xué)領(lǐng)域的一個概念,這里指的是不同主機(jī)間通過USB設(shè)備交叉?zhèn)鬟f安全威脅或風(fēng)險(即使這些主機(jī)不處于同一網(wǎng)絡(luò)中)。
當(dāng)用戶連接USB設(shè)備時,Windows注冊表中會創(chuàng)建一系列鍵值。這類信息價值很高,比如,在安全取證中,分析人員可借此了解信息泄露的源頭或者在安全事件發(fā)生后進(jìn)行溯源。
Windows系統(tǒng)注冊表中的USBStor鍵值用于保存插入當(dāng)前計算機(jī)的所有不同設(shè)備的信息。當(dāng)某個USB設(shè)備插入到某臺主機(jī)中時,我們可以在USBStor鍵值中找到這個設(shè)備的信息,這些信息足以用來識別這個USB設(shè)備。

圖4. 已插入的USB設(shè)備在注冊表中留下的信息
當(dāng)USB設(shè)備插入到某臺主機(jī)中時,我們可以收集到以下信息:
1、設(shè)備名
2、設(shè)備類型(Class)
3、設(shè)備類型的唯一標(biāo)識符(ClassGUID)
4、設(shè)備所提供的服務(wù),如硬盤服務(wù)
5、驅(qū)動
6、其他信息
2.1 隱藏鏈接:如何探測此類網(wǎng)絡(luò)
了解了微軟操作系統(tǒng)保存USB設(shè)備相關(guān)信息的位置及具體方式,我們就能知道是那些主體在共享這個USB設(shè)備。這樣一來,我們可以使用兩個節(jié)點(diǎn)來表示兩臺主機(jī),使用一條弧邊來表示這兩臺主機(jī)之間的連接。正是由于隱藏鏈接(Hidden Link)的存在,我們才能發(fā)現(xiàn)隱藏網(wǎng)絡(luò)。此外,由于我們可以從操作系統(tǒng)
|