物理隔離網(wǎng)絡(luò)雙向數(shù)據(jù)傳輸關(guān)鍵技術(shù)研究_第1頁
物理隔離網(wǎng)絡(luò)雙向數(shù)據(jù)傳輸關(guān)鍵技術(shù)研究_第2頁
物理隔離網(wǎng)絡(luò)雙向數(shù)據(jù)傳輸關(guān)鍵技術(shù)研究_第3頁
物理隔離網(wǎng)絡(luò)雙向數(shù)據(jù)傳輸關(guān)鍵技術(shù)研究_第4頁
物理隔離網(wǎng)絡(luò)雙向數(shù)據(jù)傳輸關(guān)鍵技術(shù)研究_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

0引言高防護環(huán)境是計算機防護等級下的概念,對于計算機網(wǎng)絡(luò)中重要的數(shù)據(jù)和文件,可采用網(wǎng)絡(luò)隔離技術(shù)提高防護能力。網(wǎng)絡(luò)隔離通常分為物理隔離和邏輯隔離。邏輯隔離是通過協(xié)議阻隔數(shù)據(jù)交互的隔離手段;物理隔離,又稱為“氣隙”隔離(air-gap),通過阻斷網(wǎng)絡(luò)的物理連接,將重要的、需高防護的目標網(wǎng)絡(luò)或節(jié)點與其他網(wǎng)絡(luò)隔離,是一種更為徹底、安全性更高的安全防護方法。對于物理隔離的計算機網(wǎng)絡(luò)主機,以色列古里安大學(xué)團隊依托電磁波、磁場、熱量、聲波、可見光等介質(zhì),實現(xiàn)了對物理隔離網(wǎng)絡(luò)主機的數(shù)據(jù)竊取。這種利用物理隔離網(wǎng)絡(luò)主機自主產(chǎn)生的介質(zhì)建立數(shù)據(jù)傳輸通道的方法,又稱為側(cè)信道攻擊,其突出的優(yōu)點是隱蔽性好,缺點是技術(shù)難度高。在2014年美國的一次黑客會議上,首次出現(xiàn)了利用USBHID協(xié)議漏洞的攻擊方法,攻擊設(shè)備稱為BADUSB。隨后,國內(nèi)也陸續(xù)出現(xiàn)了“燒鵝”、Leonardo、WifiDucky、USBninja數(shù)據(jù)線、樹莓派系列的BADUSB等,以上設(shè)備在網(wǎng)上商城基本都能購買,價格在幾十元到幾百元不等。這些設(shè)備的共同點是,將USB接口設(shè)備模擬成HID設(shè)備,通過模擬鍵盤或鼠標的方法對物理隔離網(wǎng)絡(luò)主機進行攻擊(前提是目標主機USB接口可用),其突出優(yōu)點是技術(shù)門檻低,缺點是單向控制,無法雙向數(shù)據(jù)傳輸?;赨SBHID攻擊技術(shù),2016年利用microPython開發(fā)板,使用2.4G無線模塊主動構(gòu)建無線傳輸信道,基本實現(xiàn)了對物理隔離網(wǎng)絡(luò)主機的惡意軟件植入、遠控、雙向數(shù)據(jù)傳輸?shù)裙δ?,傳輸速?.4kB/s,在功能上較為接近美國“水蝮蛇”攻擊設(shè)備[8]。然而,該攻擊方法沒有設(shè)計出基于最小開發(fā)系統(tǒng)芯片的便攜設(shè)備。文章利用STM32F103C8T6和ESP8266無線模塊設(shè)計了最小開發(fā)系統(tǒng)芯片的設(shè)備,即STM32Ducky便攜設(shè)備,針對物理隔離網(wǎng)絡(luò)主機構(gòu)建了有效的雙向傳輸模型,具有較好的實踐性,對USBHID類的便攜設(shè)備開發(fā)有一定參考意義。1物理隔離網(wǎng)絡(luò)隱蔽信道通信模型1.1隱蔽信道通信一般模型圖1利用隱蔽信道攻擊物理隔離網(wǎng)絡(luò)模型如圖1所示,假定目標主機位于物理隔離網(wǎng)絡(luò),與互聯(lián)網(wǎng)等外界網(wǎng)絡(luò)無任何通信。攻擊者利用社會工程學(xué)等方法將惡意軟件或硬件植入目標主機中;惡意軟硬件按照攻擊者意圖收集敏感信息,并通過電磁波、磁場、聲波等介質(zhì)與攻擊者建立隱蔽通信信道;最終攻擊者竊取到目標機敏感信息。隱蔽通信信道是一種突破物理隔離網(wǎng)絡(luò)封鎖,進行數(shù)據(jù)竊取和雙向控制的較為有效的方法。具體實現(xiàn)過程中,往往需要攻擊者抵近到目標區(qū)域,直接將惡意程序植入或間接利用社工的方法植入,同時需要借助物理隔離網(wǎng)絡(luò)主機本身提供的電磁波、光等傳輸介質(zhì)或攻擊者主動構(gòu)建的傳輸通道。文章主要對主動構(gòu)建隱蔽信道的實現(xiàn)技術(shù)和可行性方法進行探索研究。1.2

基于HID便攜設(shè)備的雙向數(shù)據(jù)傳輸模型如圖2所示,模型主要涉及兩項關(guān)鍵技術(shù),分別為植入技術(shù)和雙向數(shù)據(jù)傳輸技術(shù),前者解決物理隔離網(wǎng)絡(luò)“破”的問題,即打破物理隔離的封鎖;后者解決物理隔離網(wǎng)絡(luò)“出”的問題,即通過主動建立隱蔽通道,實現(xiàn)雙向控制和數(shù)據(jù)傳輸。目標主機假定,物理隔離網(wǎng)絡(luò)計算機主機,操作系統(tǒng)為Windows系統(tǒng),已禁用或拆除網(wǎng)卡,不存在有線和無線的網(wǎng)絡(luò)接入;計算機安全策略禁止大容量存儲設(shè)備接入。雙向數(shù)據(jù)傳輸?shù)年P(guān)鍵是,在攻擊機和目標機之間主動構(gòu)建雙向數(shù)據(jù)傳輸通道。文章中采用STM32Ducky便攜設(shè)備(核心模塊為STM32芯片和ESP8266無線模塊)構(gòu)建無線網(wǎng)絡(luò)信道,其中STM32芯片模擬HID設(shè)備,實現(xiàn)隱蔽性植入,ESP8266模塊用來構(gòu)建無線網(wǎng)絡(luò);同時利用“客戶端/服務(wù)器(C/S,即client/server)模式”,實現(xiàn)攻擊機和目標機的雙向數(shù)據(jù)傳輸。圖2基于STM32Ducky便攜設(shè)備的雙向數(shù)據(jù)傳輸模型2物理隔離網(wǎng)絡(luò)雙向數(shù)據(jù)傳輸關(guān)鍵技術(shù)2.1植入技術(shù):BreachingtheAir-Gap(1)惡意軟件植入對物理隔離網(wǎng)絡(luò)目標主機數(shù)據(jù)竊取,不能采取傳統(tǒng)互聯(lián)網(wǎng)通過上傳或下載文件的方法。有效的方法是,借助惡意軟件將敏感信息和文件保存到移動存儲介質(zhì)中或遠程實時傳輸。惡意軟件的作用包括搜索目標主機系統(tǒng)信息、敏感文件,根據(jù)遠程攻擊端指令,建立穩(wěn)定的數(shù)據(jù)傳輸通道。惡意軟件的植入包括軟件的上傳和軟件的觸發(fā)。軟件上傳的關(guān)鍵問題是免殺,即躲避目標殺軟系統(tǒng)和入侵檢測系統(tǒng)。文章使用的惡意軟件為client.exe,經(jīng)前期測試,基本不會被殺軟系統(tǒng)攔截??衫蒙鐣こ虒W(xué)的方法,讓物理隔離網(wǎng)絡(luò)內(nèi)部人員主動接觸和下載程序;也可利用BADUSB模擬鍵盤執(zhí)行的方式,將存儲在HID設(shè)備芯片固件中的client.exe觸發(fā)執(zhí)行,并設(shè)置為隨開機啟動,執(zhí)行后無窗口界面,隱蔽運行。(2)硬件植入硬件設(shè)備植入的關(guān)鍵是隱蔽性。文章中使用的STM32Ducky本質(zhì)是HID模擬設(shè)備,即采用STM32最小開發(fā)芯片模擬HID設(shè)備;實際應(yīng)用中,可嵌入目標主機的USB鍵盤、鼠標等具有USB接口的設(shè)備中。目標主機對接入的HID設(shè)備無法枚舉為普通的移動存儲設(shè)備,也無法對其內(nèi)部閃存上的惡意代碼進行檢測,基本上可規(guī)避殺毒軟件和安全策略的檢測。2.2雙向數(shù)據(jù)傳輸技術(shù):BridgingtheAir-GapBridgingtheAir-Gap,即物理隔離網(wǎng)絡(luò)橋接,實際上是在遠程攻擊機和物理隔離網(wǎng)絡(luò)主機之間建立一個穩(wěn)定的C&C通道(即Command命令和Control控制),最終實現(xiàn)雙向數(shù)據(jù)傳輸。具體內(nèi)容如下:(1)無線網(wǎng)絡(luò)通道的建立無線網(wǎng)絡(luò)通道的建立,采用ESP8266無線傳輸模塊,該模塊集成在STM32芯片上。ESP8266模塊的作用是,使物理隔離網(wǎng)絡(luò)主機實現(xiàn)了無線基站拓展。由無線模塊在目標機建立AP(accesspoint)網(wǎng)絡(luò)節(jié)點,并作為服務(wù)器;同時,遠端的攻擊機利用無線網(wǎng)卡主動接入目標機的AP網(wǎng)絡(luò)中,從而實現(xiàn)了無線通道的建立。因此,遠端攻擊機進行指令控制和數(shù)據(jù)傳輸?shù)木嚯x與無線模塊直接相關(guān),經(jīng)測試,有效傳輸距離不小于15米。(2)數(shù)據(jù)通道建立和遠控圖3數(shù)據(jù)通道建立和遠控過程在無線通道的基礎(chǔ)上,數(shù)據(jù)通道建立依賴四個程序,分別是目標機上的client.exe、STM32模塊上的stm32.ino、esp8266模塊的esp.ino、攻擊機上的server.exe。具體實現(xiàn)過程如下:第一,目標機程序client.execlient.exe程序,可通過社工的方法植入目標機中,并隱蔽運行,根據(jù)指令執(zhí)行文件搜索、數(shù)據(jù)回傳等功能。目標機與STM32模塊的交互是通過client.exe完成的,程序功能主要包括STM32Ducky設(shè)備識別、控制指令交互、文件傳輸交互。實際上,攻擊機遠控的shell權(quán)限也是基于client.exe實現(xiàn)的,client.exe存儲運行的位置和權(quán)限,即為攻擊機遠控的權(quán)限,攻擊機遠控的shell文件目錄即為client.exe所處的路徑。圖3中目標機程序client.exe主要包含hidapi.h、hidclient.cpp。其中hidapi.h是一個跨平臺的、用于USBHID設(shè)備通信的庫文件,提供了hid設(shè)備識別函數(shù)(包括hid_device_info結(jié)構(gòu)體、hid_enumerate設(shè)備枚舉函數(shù)、hid_open設(shè)備打開函數(shù)等),hid設(shè)備讀寫函數(shù)(包括hid_write()設(shè)備寫、hid_read()設(shè)備讀等);hidclient.cpp文件調(diào)用hidapi.h,完成設(shè)備識別、遠程控制和文件傳輸?shù)取T谶h控指令識別方面,文章將指令類型放在數(shù)據(jù)緩存buffer的第一個字節(jié),即buffer[0],并定義系統(tǒng)控制指令(即DOS環(huán)境中能識別的命令)識別符為0x40,文件傳輸識別符為0x50。client.exe根據(jù)buffer判斷是控制指令還是文件雙向傳輸指令,并作出響應(yīng)。第二,STM32控制程序stm32.inoSTM32Ducky便攜設(shè)備中的STM32模塊是通過USB口直接與目標主機連接的。stm32.ino程序基于ArduinoIDE環(huán)境開發(fā),通過ST-link或J-link的方式燒錄到STM32開發(fā)板中。stm32.ino程序依賴USBComposite.h庫文件,該庫文件是USBHID設(shè)備兼容庫,在文章中的主要功能是:將STM32模塊USB接口定義為HID設(shè)備,并對設(shè)備描述符、接口描述符、中斷傳輸中端點等進行了定義;提供了雙向數(shù)據(jù)傳輸?shù)腁PI接口。STM32模塊和目標機讀寫交互。與client.exe中的hid_write()和hid_read()相對應(yīng),在stm32.ino中,通過getOutput()和send()函數(shù)與目標機數(shù)據(jù)交互。STM32模塊和ESP8266無線模塊雙向交互。STM32模塊主要負責(zé)轉(zhuǎn)發(fā)目標機和無線模塊的數(shù)據(jù)。STM32Ducky便攜設(shè)備內(nèi)部,兩個模塊在物理端口連接的基礎(chǔ)上,通過serial.read()和serial.write()函數(shù)進行串口通信。第三,無線基站控制程序esp.inoESP8266模塊建立的無線網(wǎng)絡(luò)AP熱點,是在物理隔離網(wǎng)絡(luò)和遠控主機之間主動構(gòu)建無線信道的關(guān)鍵。程序基于ArduinoIDE環(huán)境開發(fā),完成初步的編譯和固件生成,由ESP6266Flasher燒錄程序?qū)⒐碳ㄟ^ST-link燒錄到ESP8266模塊的閃存中。其主要功能是:提供無線網(wǎng)絡(luò)的接入,實現(xiàn)STM32模塊和攻擊機的雙向數(shù)據(jù)轉(zhuǎn)發(fā)。ESP8266模塊和攻擊機的雙向數(shù)據(jù)傳輸。esp.ino程序調(diào)用ESPAsyncTCP.h庫文件,并通過onData()函數(shù)響應(yīng)和接收遠控端server.exe的數(shù)據(jù);通過庫文件中的send()函數(shù)將STM32模塊的數(shù)據(jù)轉(zhuǎn)發(fā)到遠控端server.exe。第四,攻擊端控制程序server.exe攻擊端控制程序server.exe運行在遠程攻擊機主機上,借助攻擊機主機自帶的無線網(wǎng)卡,按照約定的無線網(wǎng)絡(luò)配置,接入AP網(wǎng)絡(luò)中。程序由Python語言編寫,直接在攻擊機主機上運行。其主要功能是:接入AP無線網(wǎng)絡(luò)中;主動與目標機client.exe建立通信;發(fā)送控制指令到目標機,接收回傳的指令和文件。server.exe在python開發(fā)環(huán)境中,調(diào)用socket庫文件,通過socket.send()和socket.recv()函數(shù)與esp.ino雙向數(shù)據(jù)交互。3雙向數(shù)據(jù)傳輸測試3.1軟硬件設(shè)備植入測試圖4STM32Ducky便攜設(shè)備圖4是設(shè)計的STM32Ducky便攜設(shè)備,可根據(jù)需要對其加殼封裝成“U盤”、數(shù)據(jù)線等設(shè)備。當(dāng)便攜設(shè)備植入目標機后,通過目標機設(shè)備管理器查看,如圖5所示,僅識別為“符合HID標準的供應(yīng)商設(shè)備”。圖5設(shè)備管理器中識別為HID植入目標機的軟件client.exe如圖6所示,在建立連接和數(shù)據(jù)傳輸過程中,沒有任何代碼和指令顯示,實際應(yīng)用中,可根據(jù)需要將client.exe控制臺程序隱藏。圖6client植入軟件3.2數(shù)據(jù)測試在client.exe運行、便攜設(shè)備植入、攻擊機通過server.exe主動與目標機建立連接的整體過程中,目標機殺軟系統(tǒng)不報毒。如圖7所示,在攻擊機的server.exe中輸入cmddir命令,查看目標機client所在位置和目錄文件。通過命令getfile11.txt將目標機的11.txt文件下載到攻擊機計算機,下載過程中,攻擊機顯示文件傳輸實時進程。圖7控制指令和文件傳輸測試圖8中,通過cmdnetstat-ano命令,可以查看目標機當(dāng)前端口連接狀態(tài),沒有發(fā)現(xiàn)任何基于TCP/UDP的端口連接狀態(tài),這是由于STM32Ducky與目標機通過USBHID協(xié)議數(shù)據(jù)交互,無需建立socket,這使得整個雙向控制過程較為隱蔽和安全。圖8查看目標機端口狀態(tài)如圖9所示,在指令控制和數(shù)據(jù)傳輸過程中,攻擊機通過命令netstat-ano查看本機端口連接狀態(tài),僅有192.168.4.2(2523)-192.168.4.1(7050)鏈路,即攻擊機與ESP8266無線網(wǎng)絡(luò)的連接。圖9查看本機端口連接狀態(tài)總體來看,STM32Ducky雙向數(shù)據(jù)傳輸隱蔽安全,直接獲取了目標機的shell權(quán)限,傳輸文件較為穩(wěn)定。不同于BADUSB等傳統(tǒng)攻擊設(shè)備,其在目標機鎖屏情況下,無法進行模擬鍵盤攻擊;而STM32Ducky基于USBHID協(xié)議傳輸,非模擬鍵盤攻擊,一旦鏈路建立成功,即使目標機鎖屏,仍然能夠隱蔽、穩(wěn)定地實現(xiàn)指令控制和雙向數(shù)據(jù)傳輸。3.3重難點問題(1)傳輸速率STM32Ducky在HID讀寫過程中,采用HID中斷傳輸方式,端點1為in,中斷輸入,即hid設(shè)備到目標機,中斷輸出和控制端點均為端點0。中斷傳輸最小時間間隔1ms,每一個單獨的事務(wù)處理能力為wMaxPacketSize=8字節(jié),則讀寫速率為8×(1s/0.001s),即8kB/s。實際測試中,除去雙向傳輸中用于協(xié)議控制的額外消耗,雙向傳輸實際速率約為1.5-2.5kB/s。(2)傳輸穩(wěn)定性控制影響數(shù)據(jù)雙向傳輸穩(wěn)定性的主要因素是硬件緩存速率的不匹配。目標機USB接口的速率遠大于HID緩存速率,HID緩存速率也明顯低于ESP8266無線網(wǎng)絡(luò)速率處理能力。因此,緩存速率的不同會造成數(shù)據(jù)傳輸?shù)牟环€(wěn)定性。解決數(shù)據(jù)傳輸穩(wěn)定性的一種做法是數(shù)據(jù)分段校驗。如超過2kB的文件傳輸時,可在client.exe和stm32.ino程序模塊中,每512個字節(jié)校驗一次;由stm32.ino發(fā)出停止傳輸請求,client.exe收到請求后停止發(fā)送,stm32.ino收到停止校驗符后,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論