當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]無線局域網(wǎng)安全分析終端的設計與實現(xiàn)

無線局域網(wǎng)WLAN因利用無線介質(zhì)進行數(shù)據(jù)傳輸,在無線設備覆蓋區(qū)域內(nèi)任何人都可以利用設備接收到通信數(shù)據(jù),所以通信數(shù)據(jù)的安全性顯得尤為重要。在802.11標準中,采用了MAC地址列表、WEP加密等安全措施,但是后來的實踐和研究證明,其安全機制是非常脆弱的,存在無線拒絕服務攻擊、MAC地址欺騙、偽裝AP、中間人攻擊、IP重定向攻擊和身份認證過程中的欺騙等安全問題。因此通過安全產(chǎn)品提高WLAN的安全性具有重要意義。
  本文所介紹的安全分析系統(tǒng)實現(xiàn)了被動和主動的安全分析。它包括一個主控節(jié)點和多個無線安全分析終端。系統(tǒng)在WLAN中的部署結(jié)構(gòu)如圖1所示。

主控節(jié)點集成了WLAN被動和主動安全分析模塊。主控節(jié)點接收各個終端采集來的WLAN數(shù)據(jù)報文,報文經(jīng)過處理后被發(fā)送到被動安全分析模塊進行分析,系統(tǒng)根據(jù)當前分析結(jié)果自動選取合適的安全策略;主控節(jié)點根據(jù)主動安全分析技術(shù)編寫攻擊腳本,并將腳本分發(fā)到各個終端,終端根據(jù)腳本對目標實施主動攻擊,以檢查目標是否有安全漏洞。
  本文設計和實現(xiàn)了基于PowerPC和Linux操作系統(tǒng)的分布式終端,該終端支持安全分析系統(tǒng)中的被動和主動安全分析的接口模塊。
1 終端的功能需求
  該嵌入式終端必須具備以下基本功能:
  (1) WLAN數(shù)據(jù)包的捕獲和定制發(fā)送:這是實現(xiàn)WLAN安全分析的重要一步,為下面的需求提供了必要依據(jù)。
  (2) 被動分析接口模塊:采集WLAN網(wǎng)絡信息并進行預定的本地處理,將處理后的數(shù)據(jù)發(fā)送到主控節(jié)點,這是對系統(tǒng)的被動分析提供支持。
  (3) 主動分析接口模塊:接收主控節(jié)點的攻擊腳本并執(zhí)行,將執(zhí)行結(jié)果返回給主控節(jié)點,這是對系統(tǒng)的主動分析提供支持。
  目前常見的嵌入式體系架構(gòu)是按要求選用相應嵌入式處理器以及嵌入式操作系統(tǒng)。
  由于分布式終端要收發(fā)無線數(shù)據(jù)包以及進行數(shù)據(jù)包的預處理,這就對處理器的處理速度提出了要求,如果速度達不到要求,就會出現(xiàn)丟包現(xiàn)象。所以本文采用Freescale的PowerPC家族的MPC 8270嵌入式處理器,它的內(nèi)核工作時鐘最高可達450 MHz。操作系統(tǒng)選擇Linux,Linux是免費且源碼開放的嵌入式操作系統(tǒng)。在開源社區(qū),有很多項目致力于無線網(wǎng)卡的驅(qū)動開發(fā)以及無線數(shù)據(jù)包的定制發(fā)送。利用這些資源,能很好地縮短設計周期。
2 終端的硬件設計
  本文設計的終端由核心板和接口板組成,其硬件結(jié)構(gòu)主要由處理器模塊、數(shù)據(jù)通信接口模塊和存儲模塊組成,如圖2所示。核心板集成了Freescale的MPC8270處理器,128 MB SDRAM以及16 MB的Flash,為系統(tǒng)軟件提供了足夠的空間。底板上則集成了非常豐富的外設接口:2個10 M/100 Mb/s以太網(wǎng)接口;1個兩線RS-232 串口(COM1);2個PCI槽,接入無線網(wǎng)卡后,作為無線分析終端的RF,一塊無線網(wǎng)卡用于被動分析接口模塊,捕獲WLAN數(shù)據(jù)包,隨時監(jiān)控網(wǎng)絡狀況;另一塊用于主動分析接口模塊,實現(xiàn)數(shù)據(jù)的定制發(fā)送,調(diào)整網(wǎng)絡性能。該系統(tǒng)具有體積小、耗電低、處理能力強、網(wǎng)絡功能強大的特點,能夠裝載和運行Linux操作系統(tǒng)。
[!--empirenews.page--]

2.1 處理器模塊
  MPC8270基于PowerQUICC II結(jié)構(gòu),主要由高速PowerPC內(nèi)核、系統(tǒng)接口單元SIU、通信處理單元CPM構(gòu)成。它支持60 x總線和PCI/LOCAL總線,內(nèi)核工作時鐘最高為450 MHz。MPC8270采用雙處理器結(jié)構(gòu),內(nèi)部集成PowerPC處理器和CPM處理器。PowerPC完成對外設的配置;CPM用來完成通信處理,兩個處理器通過內(nèi)部的雙端口RAM相互配合工作。由于CPM分擔了PowerPC的外圍工作任務,減少了PowerPC對底層通信任務的干預,因而提高了PowerPC的工作效率。MPC8270內(nèi)部集成了微處理器和通信領(lǐng)域的常用外設控制組件,并且通信處理模塊中各通信控制器支持多種協(xié)議。
2.2 存儲模塊
  選用了1片8 M×16 bit共16 MB數(shù)據(jù)寬度的Flash,F(xiàn)lash芯片型號為Intel 28F128J3D75,速度為150 ns。Flash固定為16 bit數(shù)據(jù)讀寫訪問模式,它只接MPC8270的低16 bit數(shù)據(jù)總線,用片選信號/CS0選中。SDRAM用于存放用戶的數(shù)據(jù)和代碼,為程序的運行和保存臨時文件提供空間。采用商用的144引腳的128 MB內(nèi)存條,以MPC8270與60 x總線相連。數(shù)據(jù)寬度為64 bit。MPC8270提供了SDRAM控制器,故只需進行寄存器的設置即可。
2.3 數(shù)據(jù)通信模塊
  數(shù)據(jù)通信接口包括1個兩線RS-232接口、2個以太網(wǎng)接口和2個PCI插槽。
  RS-232接口是用來調(diào)試的控制口,只有收發(fā)兩根線;使用MPC8270的SMC模塊作為串口通信,配合MAX3222收發(fā)器實現(xiàn)硬件功能。
  兩個10 M/100 Mb/s網(wǎng)口中,一個用于調(diào)試,另一個被應用程序用于發(fā)送和接收有線口數(shù)據(jù)包。使用MPC8270的FCC1和FCC2模塊作為網(wǎng)口通信,配合LXT972收發(fā)器實現(xiàn)硬件功能。
  MPC8270處理器集成了PCI總線,如果選擇PCI接口的無線網(wǎng)卡,就不需要附加額外的芯片,網(wǎng)卡可以直接通過PCI插槽接入,非常方便。無線網(wǎng)卡是這個終端的重要設備,根據(jù)無線網(wǎng)卡采用的芯片組類型的不同,無線網(wǎng)卡可分為多種類型。而Linux并未針對每一種無線網(wǎng)卡都提供專屬的驅(qū)動程序,而是針對無線芯片組來提供驅(qū)動程序,所以不同類型的無線網(wǎng)卡所使用的驅(qū)動程序也是大不相同的,如Prism類型的無線網(wǎng)卡使用的驅(qū)動程序是Wlan-ng系列,而針對Atheros生產(chǎn)的AR系列則使用Madwifi-ng[4]。本設計則以芯片組型號為AR5212的PCI接口的無線網(wǎng)卡(TL-WN651G)為例。
3 終端的軟件設計
  基于嵌入式Linux操作系統(tǒng)的軟件設計包括BootLoader引導程序的移植、Linux操作系統(tǒng)的移植和用戶程序的編寫。Boot-Loader引導程序完成硬件的初始化并將操作系統(tǒng)引導裝入SDRAM;Linux操作系統(tǒng)是整個軟件的支撐,包含有內(nèi)存管理、設備驅(qū)動及TCP/IP通信協(xié)議等模塊;用戶程序完成無線數(shù)據(jù)包的捕獲和定制發(fā)送,實現(xiàn)支持安全分析系統(tǒng)中的被動分析和主動分析的接口模塊。下面重點介紹用戶程序的設計。
3.1 軟件設計的層次結(jié)構(gòu)
  終端的軟件設計思想:用Tcl的C/C++接口將編寫的低層網(wǎng)絡通信函數(shù)擴展成命令;基于這些擴展命令,用Tcl腳本語言編寫頂層接口模塊;主控節(jié)點也可以利用這些擴展命令編寫安全分析腳本。這樣的層次結(jié)構(gòu)模型具有良好的擴展性與靈活性,而且修改接口模塊程序時,不需要重新編譯,直接就可以運行。圖3為軟件設計的層次結(jié)構(gòu)模型。
驅(qū)動程序是整個模型的要點,它向上層提供訪問硬件層的接口。本文選擇針對AR5212無線芯片組的開源驅(qū)動程序Madwifi-ng[4](版本號為0.9.4),通過模塊的形式加載驅(qū)動程序。

網(wǎng)絡操作命令支撐庫為上層提供擴展命令的支持。Tcl的C/C++函數(shù)庫有清晰的接口,本文通過接口自定義新的Tcl命令,這些命令與網(wǎng)絡操作程序提供的C函數(shù)相關(guān)聯(lián),從而實現(xiàn)對Tcl的擴展,成為一個以最大程度符合用戶需求的新工具。網(wǎng)絡操作程序直接訪問硬件驅(qū)動層,實現(xiàn)WLAN數(shù)據(jù)包的定制發(fā)送或捕獲;通過調(diào)用無線配置命令,實現(xiàn)網(wǎng)卡的配置。[!--empirenews.page--]
  主動/被動分析接口模塊由Tcl擴展命令來構(gòu)建。被動分析接口模塊和主動分析接口模塊實現(xiàn)WLAN數(shù)據(jù)包的發(fā)送和定制捕獲,以及對安全分析系統(tǒng)中的被動分析和主動分析予以支持。
3.2 網(wǎng)絡操作命令支撐庫
  安全分析終端提供以下兩類低層網(wǎng)絡操作命令:
  (1) 網(wǎng)絡通信支撐命令。包括有線口和無線口的網(wǎng)絡通信。
  有線口網(wǎng)絡操作命令:它提供了一組訪問數(shù)據(jù)鏈路層socket的命令,包括socket的創(chuàng)建以及通過socket進行數(shù)據(jù)包發(fā)送和接收。
  無線口網(wǎng)絡操作命令:實現(xiàn)WLAN數(shù)據(jù)包的定制發(fā)送或捕獲以及設置網(wǎng)卡的工作模式和工作信道等。
  (2)協(xié)議報文編、解碼命令。在被動分析模塊和主動分析模塊中,需要對相關(guān)頭部域進行解析或重組,以實現(xiàn)過濾報文或定制頭部域的功能,這就需要編寫報文編、解碼命令。
3.3 被動分析接口模塊
  被動分析是基于捕獲的數(shù)據(jù)包,因此捕獲WLAN數(shù)據(jù)包是該模塊實現(xiàn)的基礎。從協(xié)議分析的角度來檢測非法入侵和攻擊,需要將捕獲的數(shù)據(jù)包發(fā)往主控節(jié)點。每個安全分析終端都將大量的報文發(fā)送主控節(jié)點,為了減輕主控節(jié)點處理報文的壓力,安全分析終端將根據(jù)主控節(jié)點的需要過濾掉部分報文。終端的被動分析接口模塊就是實現(xiàn)這一功能的。
3.3.1 捕獲WLAN數(shù)據(jù)包的實現(xiàn)
  無線網(wǎng)卡有兩種工作模式:正常模式和監(jiān)聽模式。在正常模式下,網(wǎng)卡工作在非偵聽狀態(tài),只會接收到發(fā)給自己的數(shù)據(jù)包和廣播包,而丟棄其他包。如果把網(wǎng)卡設置為監(jiān)聽模式,則可使網(wǎng)卡工作在偵聽狀態(tài)時,就可以接收某一信道上的所有數(shù)據(jù)包。為了實現(xiàn)程序的可移植性,本文使用Libpcap函數(shù)庫捕獲數(shù)據(jù)包。
  用Libpcap捕獲的數(shù)據(jù)包中,包含Prism頭或者Radiotap頭部。這是網(wǎng)卡添加在802.11MAC頭部前的數(shù)據(jù),它記錄了信號強度、噪聲強度和傳輸速率等物理層信息。由于Radiotap頭部比Prism頭部更能靈活地表達捕獲幀的物理層信息,所以本文選擇Radiotap頭部來表達。
3.3.2 被動分析接口模塊的實現(xiàn)
  程序設計的難點是防止出現(xiàn)丟包現(xiàn)象。當某一信道上的負載很大時,受到處理速度的限制,將不能捕獲到該信道上的每一個報文,即出現(xiàn)丟包現(xiàn)象。
  為了解決該問題,本文使用多線程并發(fā)執(zhí)行,主線程用來處理捕獲到的數(shù)據(jù)包;子線程1用來不間斷地捕獲無線數(shù)據(jù)包;子線程2與主控機交互,實現(xiàn)過濾規(guī)則的改變。同時,還引入了先入先出的隊列來緩存接收到的數(shù)據(jù)報文。在筆者搭建的環(huán)境中,當某一信道上的負載達到24 Mb/s、將隊列長度設為500時,就能很好地解決這一問題。
  為了實現(xiàn)隊列操作的同步,本文使用信號量hAccess和hRecive,當子線程1接收到報文,并將報文存放到隊列之后,將釋放信號量hRecive,通知主線程從隊列中提取報文來處理。主線程提取出報文后,釋放信號量hAccess,通知子線程1繼續(xù)接收數(shù)據(jù)包。
  子線程2接收主控節(jié)點發(fā)送來的配置文件,并且執(zhí)行該文件。配置文件的主要作用就是設置全局變量。在過濾前,主線程都重新獲取全局變量的值,從而設定主線程的包過濾規(guī)則。采用的過濾規(guī)則主要有源和目的MAC地址過濾以及序列號過濾等。主線程、子線程1、子線程2的流程圖分別如圖4、圖5、圖6所示。

3.4 主動分析接口模塊[!--empirenews.page--]
  主動分析的作用有兩個:一是對被測目標實施主動攻擊,探測其是否有安全漏洞;二是根據(jù)被動分析結(jié)果,采用相應的措施調(diào)整網(wǎng)絡性能。它們都主要通過發(fā)送相應的數(shù)據(jù)包來實現(xiàn)。為了對系統(tǒng)中的主動分析予以支持,終端需要實現(xiàn)主動分析接口模塊。WLAN數(shù)據(jù)包的定制發(fā)送是該模塊實現(xiàn)的基礎。
3.4.1 WLAN數(shù)據(jù)包的定制發(fā)送
  由于要實現(xiàn)目標漏洞的探測或攻擊,必須能將自己定制的WLAN數(shù)據(jù)包發(fā)送出去,這里的定制是指數(shù)據(jù)包的每個域都可以任意指定。在開源社區(qū),開源項目Lorcon[5]實現(xiàn)WLAN數(shù)據(jù)包的定制發(fā)送。它是專為Linux操作系統(tǒng)設計的,它屏蔽了通過抽象層來發(fā)送802.11信息包的底層操作,提供了更高層次的接口來發(fā)送802.11信息包。通過Lorcon本設計不需要編寫特定驅(qū)動的代碼,只需通過驅(qū)動的名字就能找到相應的接口,進而調(diào)用Lorcon庫函數(shù)發(fā)送報文。Lorcon是純C語言編寫的函數(shù)庫,它直接將用戶空間的報文通過無線口發(fā)送出去,實現(xiàn)報文的定制發(fā)送。
3.4.2 主動分析接口模塊的實現(xiàn)
  主控節(jié)點使用安全分析終端提供的底層網(wǎng)絡操作命令編寫各種網(wǎng)絡攻擊腳本。攻擊腳本由主控節(jié)點分發(fā)到各個安全分析終端,由各安全分析終端并行地執(zhí)行,以保證攻擊的性能,使得攻擊腳本的執(zhí)行與目前存在的實際網(wǎng)絡攻擊過程有同樣的效果。
  為了實現(xiàn)主動分析,無線安全分析終端需要創(chuàng)建基于有線網(wǎng)口的TCP服務器端,接收主控節(jié)點發(fā)送的攻擊腳本。執(zhí)行該腳本,將腳本執(zhí)行的結(jié)果返回給主控節(jié)點以供其分析。其PAD圖如圖7所示。

本文設計實現(xiàn)了基于嵌入式處理器PowerPC和Linux操作系統(tǒng)的安全分析終端。通過與主控節(jié)點的主動和被動分析模塊配合,能檢測到被測目標是否存在安全漏洞;也能檢測出WLAN中的MAC地址欺騙、偽裝AP、中間人攻擊、IP重定向攻擊以及身份認證過程中的欺騙等安全問題,并采取相應的措施,成功地改善了網(wǎng)絡性能。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉