<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 無(wú)線(xiàn)局域網(wǎng)安全分析終端的設計與實(shí)現

無(wú)線(xiàn)局域網(wǎng)安全分析終端的設計與實(shí)現

作者: 時(shí)間:2009-06-17 來(lái)源:網(wǎng)絡(luò ) 收藏

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

本文引用地址:http://dyxdggzs.com/article/152462.htm

3.4 主動(dòng)分析接口模塊

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>