• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于FPGA的多路安全連接抗重放攻擊設(shè)計(jì)實(shí)現(xiàn)

      2022-08-23 06:49:06張宏亮
      關(guān)鍵詞:待處理序列號(hào)子網(wǎng)

      陳 明,張宏亮,鄧 軍,唐 文,龔 萍

      (中國(guó)電子科技集團(tuán)公司第三十研究所,四川 成都 610041)

      0 引言

      隨著計(jì)算機(jī)網(wǎng)絡(luò)的不斷深入發(fā)展,信息安全問(wèn)題日益受到人們廣泛關(guān)注和重視。在影響網(wǎng)絡(luò)安全的因素中,重放攻擊是一種常見(jiàn)的、危害巨大的網(wǎng)絡(luò)主動(dòng)攻擊手段。重放攻擊是指將通過(guò)竊聽(tīng)等手段獲取的信息再次發(fā)出以產(chǎn)生非授權(quán)的效果[1-2],針對(duì)重放攻擊原理與防范手段的研究也日益出現(xiàn)。文獻(xiàn)[3]對(duì)常用的抗重放方案進(jìn)行了總結(jié)概述,但沒(méi)有給出詳細(xì)實(shí)施方案和平臺(tái)。文獻(xiàn)[4]提出基于時(shí)間戳/消息ID方式實(shí)現(xiàn)應(yīng)用層抗重放攻擊的方法,但該方法不適用于高速I(mǎi)P數(shù)據(jù)傳輸網(wǎng)絡(luò)。文獻(xiàn)[5]提出了一種針對(duì)可信平臺(tái)模塊的抗重放攻擊方案。文獻(xiàn)[6]設(shè)計(jì)了一種適用于車(chē)載CAN總線網(wǎng)絡(luò)協(xié)議的抗重放實(shí)現(xiàn)方案,適用于低速現(xiàn)場(chǎng)總線網(wǎng)絡(luò)。文獻(xiàn)[7]提出了一種在VPN隔離網(wǎng)關(guān)使用軟件實(shí)現(xiàn)抗重放技術(shù),但沒(méi)有深入分析高速多路通信的抗重放并行處理機(jī)制。

      為了解決上述問(wèn)題,同時(shí)結(jié)合工程應(yīng)用中網(wǎng)絡(luò)設(shè)備多個(gè)物理子網(wǎng)之間的互通需求,本文創(chuàng)造性提出一種基于FPGA硬件平臺(tái)實(shí)現(xiàn)多路安全連接抗重放技術(shù)的機(jī)制,該方案充分利用FPGA支持高速、并行處理的特點(diǎn),滿足快速檢測(cè)網(wǎng)絡(luò)中多路重放攻擊,并迅速做出報(bào)警響應(yīng)的需求,同時(shí)不影響設(shè)備正常工作,最終達(dá)到既實(shí)現(xiàn)安全通信,又滿足網(wǎng)絡(luò)高速互通的目的。

      1 基本通信原理概述

      1.1 安全連接概述

      安全連接[8]數(shù)據(jù)處理流程如圖1所示,網(wǎng)絡(luò)設(shè)備的物理端口從邏輯上劃分為N個(gè)獨(dú)立的安全連接邏輯通道,對(duì)于網(wǎng)絡(luò)接入側(cè),支持同一個(gè)物理子網(wǎng)的不同業(yè)務(wù)分別接入到不同的邏輯通道,也支持不同的物理子網(wǎng)分別接入不同的邏輯通道。邏輯通道之間相互獨(dú)立,數(shù)據(jù)處理互不干擾,為用戶提供類(lèi)似專(zhuān)用線路的使用體驗(yàn)。

      圖1 安全連接數(shù)據(jù)處理示意圖

      1.2 通信數(shù)據(jù)幀格式

      在標(biāo)準(zhǔn)以太網(wǎng)數(shù)據(jù)幀定義[9]基礎(chǔ)上,自定義私有網(wǎng)絡(luò)通信數(shù)據(jù)幀格式如圖2所示,具體說(shuō)明如下:

      圖2 數(shù)據(jù)幀結(jié)構(gòu)定義

      MAC地址:DMAC和SMAC都是6 B。

      Type:以太網(wǎng)類(lèi)型,2 B。

      安全連接索引:用于指示安全連接通道號(hào),2 B。

      協(xié)議頭:自定義協(xié)議頭,16 B。

      SN:抗重放序列號(hào),單調(diào)遞增,4 B。

      數(shù)據(jù):凈荷數(shù)據(jù)。

      FCS:以太網(wǎng)CRC32計(jì)算值,4 B。

      自定義數(shù)據(jù)幀中安全連接索引、協(xié)議頭和SN屬于增加的額外開(kāi)銷(xiāo),長(zhǎng)度為22 B,當(dāng)數(shù)據(jù)幀發(fā)送給對(duì)端用戶子網(wǎng)時(shí)需要提前丟掉。數(shù)據(jù)發(fā)送與接收處理流程如下:本地網(wǎng)絡(luò)數(shù)據(jù)需要發(fā)送到對(duì)端網(wǎng)絡(luò)時(shí),按照?qǐng)D2的數(shù)據(jù)幀格式封裝好后傳輸?shù)骄€路上;對(duì)端接收數(shù)據(jù),進(jìn)行合法性判斷和抗重放解析后,正確的數(shù)據(jù)包去掉自定義封裝數(shù)據(jù)字段,再發(fā)送給目的用戶網(wǎng)絡(luò),非法數(shù)據(jù)包直接丟棄。

      2 多路安全連接抗重放方案設(shè)計(jì)

      2.1 抗重放實(shí)現(xiàn)機(jī)制

      每一個(gè)數(shù)據(jù)幀包含了一個(gè)唯一的序列號(hào)字段(SN),用于標(biāo)識(shí)一定時(shí)間范圍內(nèi)唯一的數(shù)據(jù)幀,具體定義如圖2所示。當(dāng)創(chuàng)建一個(gè)新的安全連接時(shí),序列號(hào)計(jì)數(shù)器會(huì)初始化為0,每發(fā)送一個(gè)有效數(shù)據(jù)幀,發(fā)送方的序列號(hào)計(jì)數(shù)器的值加1并寫(xiě)入對(duì)應(yīng)數(shù)據(jù)段。序列號(hào)是一個(gè)連續(xù)單調(diào)遞增的4 B十六進(jìn)制數(shù),當(dāng)安全連接更新時(shí),一般不超過(guò)24 h,對(duì)序列號(hào)清0重新開(kāi)始計(jì)數(shù)。

      網(wǎng)絡(luò)數(shù)據(jù)在經(jīng)過(guò)傳輸網(wǎng)到達(dá)目的網(wǎng)絡(luò)設(shè)備時(shí),由于網(wǎng)絡(luò)設(shè)備內(nèi)部處理、路由轉(zhuǎn)發(fā)、數(shù)據(jù)丟包等原因,導(dǎo)致接收端數(shù)據(jù)可能存在亂序的情況,因此,需要使用滑動(dòng)窗口來(lái)提高對(duì)數(shù)據(jù)亂序的容忍度。根據(jù)實(shí)際工程應(yīng)用經(jīng)驗(yàn),一般規(guī)定窗口寬度W為8,16,32,64,128等數(shù)值[3]。窗口寬度設(shè)置過(guò)大,可消耗更多存儲(chǔ)資源,抗重放效果增加不明顯;窗口寬度設(shè)置過(guò)小,對(duì)數(shù)據(jù)報(bào)文亂序的容忍度降低,易導(dǎo)致丟包率增加,影響到正常通信。結(jié)合本文所述網(wǎng)絡(luò)特點(diǎn),窗口寬度設(shè)置為64能夠滿足使用要求。

      初始化時(shí),窗口最右側(cè)序列號(hào)為X,左邊依次為X-1,X-2,…,X-W+2,最左側(cè)序列號(hào)為X-W+1,滑動(dòng)窗口工作原理[10]如圖3所示。每收到一個(gè)數(shù)據(jù)幀,接收端按如下流程進(jìn)行處理:

      (1)接收端提取待處理數(shù)據(jù)幀序列號(hào)SN,如果SN大于X-W+1且小于X,查詢對(duì)應(yīng)的序列號(hào)標(biāo)志位,如圖3所示。如果標(biāo)志位為0,表示從未收到過(guò)該包數(shù)據(jù),數(shù)據(jù)合法,并將標(biāo)志位置1;如果標(biāo)志位為1,表示曾收到過(guò)該數(shù)據(jù),當(dāng)前數(shù)據(jù)幀為重放包,丟棄。

      圖3 滑動(dòng)窗口工作原理示意圖

      (2)如果待處理數(shù)據(jù)幀序列號(hào)SN小于X-W+1,表明該數(shù)據(jù)幀的序列號(hào)在窗口之外,判定該數(shù)據(jù)為重放包,丟棄。

      (3)如果待處理數(shù)據(jù)幀序列號(hào)SN大于X,則計(jì)算兩者之間的差值β,如果β大于設(shè)定的窗口閾值,則判定為非法包,丟棄;反之將窗口序列號(hào)X向右偏移β,并將bit0位置1。

      2.2 多路安全連接抗重放攻擊方案設(shè)計(jì)

      由于單條安全連接只能實(shí)現(xiàn)兩個(gè)子網(wǎng)通信功能,無(wú)法滿足實(shí)際應(yīng)用中多個(gè)子網(wǎng)的互通需求,因此本文在已有研究基礎(chǔ)上,對(duì)多路安全連接抗重放技術(shù)進(jìn)行了深入研究,設(shè)計(jì)了多路安全連接抗重放實(shí)現(xiàn)方案,并通過(guò)實(shí)驗(yàn)對(duì)方案進(jìn)行驗(yàn)證。

      每一個(gè)數(shù)據(jù)幀包含了一個(gè)安全連接索引,用于標(biāo)識(shí)該數(shù)據(jù)幀歸屬的安全連接通信數(shù)據(jù),具體定義如圖2所示,安全連接索引長(zhǎng)度為2 B,理論上能夠支持建立215-1=65 535條安全連接。通過(guò)安全連接索引,能夠解析出并發(fā)數(shù)據(jù)流各條網(wǎng)絡(luò)數(shù)據(jù),提取數(shù)據(jù)序列號(hào),從而實(shí)現(xiàn)多條安全連接抗重放攻擊檢測(cè)。

      多路安全連接抗重放方案設(shè)計(jì)如圖4所示,主要功能模塊包括數(shù)據(jù)處理、調(diào)度管理、序列號(hào)緩存、抗重放判決等。數(shù)據(jù)處理模塊完成以太網(wǎng)入口數(shù)據(jù)預(yù)處理,根據(jù)安全連接索引分離出各安全連接的有效數(shù)據(jù)幀;調(diào)度管理模塊輪詢?cè)L問(wèn)輸入的數(shù)據(jù)緩存,并提取序列號(hào),完成序列號(hào)緩存管理控制;抗重放判決模塊根據(jù)輸入的序列號(hào),完成合法性判斷,輸出有效數(shù)據(jù)。

      圖4 多路安全連接抗重放實(shí)現(xiàn)方案圖

      2.3 多路安全連接抗重放工作流程

      網(wǎng)絡(luò)設(shè)備在創(chuàng)建多條新的安全連接時(shí),每條連接產(chǎn)生獨(dú)立的序列號(hào)SN,并進(jìn)行控制管理,發(fā)送方向序列號(hào)產(chǎn)生機(jī)制如圖5所示,數(shù)據(jù)處理流程如下:

      圖5 發(fā)送方向序列號(hào)產(chǎn)生流程

      (1)設(shè)備接收子網(wǎng)待處理數(shù)據(jù)幀,提取安全連接索引。

      (2)根據(jù)地址映射表,產(chǎn)生該連接對(duì)應(yīng)的序列號(hào)SN緩存讀地址。

      (3)讀取序列號(hào)SN后,執(zhí)行+1運(yùn)算后輸出給數(shù)據(jù)發(fā)送模塊,按照自定義數(shù)據(jù)幀格式封裝SN,發(fā)送到網(wǎng)絡(luò)中;同時(shí)執(zhí)行原地址回寫(xiě)操作,將更新后的SN寫(xiě)回緩存,為下一幀數(shù)據(jù)處理做準(zhǔn)備。

      (4)完成數(shù)據(jù)處理后,狀態(tài)機(jī)回到開(kāi)始狀態(tài),等待處理下一路數(shù)據(jù)幀。

      從網(wǎng)絡(luò)設(shè)備接收的以太網(wǎng)數(shù)據(jù)分離出各安全連接獨(dú)立的數(shù)據(jù)幀,多路數(shù)據(jù)抗重放工作流程如圖6所示,詳細(xì)處理流程如下:

      圖6 抗重放工作流程圖

      (1)設(shè)備接收網(wǎng)絡(luò)數(shù)據(jù),提取各路數(shù)據(jù)的安全連接索引和序列號(hào)SN,寫(xiě)入寄存器。

      (2)根據(jù)序列號(hào)SN和窗口標(biāo)志狀態(tài)位緩存地址映射規(guī)則,產(chǎn)生緩存讀地址,讀取該連接存儲(chǔ)的上一幀數(shù)據(jù)的序列號(hào)SN和對(duì)應(yīng)的窗口標(biāo)志狀態(tài)位。

      (3)將待處理數(shù)據(jù)幀的序列號(hào)SN_new與緩存的序列號(hào)SN_old比較,進(jìn)行合法性判斷。如果SN_old-SN_new≤64,表示待處理數(shù)據(jù)幀序列號(hào)在窗口范圍內(nèi),查詢對(duì)應(yīng)的窗口狀態(tài)標(biāo)志位,如果標(biāo)志位為0,表示從未收到過(guò)該包數(shù)據(jù),數(shù)據(jù)合法,并將標(biāo)志位置1;如果標(biāo)志位為1,表示曾收到過(guò)該數(shù)據(jù),當(dāng)前數(shù)據(jù)幀為重放包,丟棄。如果SN_old-SN_new>64,表示待處理數(shù)據(jù)幀序列號(hào)在窗口范圍外,直接丟棄。如果SN_new>SN_old,計(jì)算兩者之間的差值β,如果β大于設(shè)定的窗口閾值,則判定為非法包,丟棄;反之將窗口序列號(hào)X向右偏移β,同步更新窗口狀態(tài)位信息。

      (4)完成數(shù)據(jù)幀抗重放合法性判決后,輸出正確的數(shù)據(jù),重放的數(shù)據(jù)則丟棄,并將更新后的序列號(hào)和狀態(tài)標(biāo)識(shí)原地址寫(xiě)回緩存。

      (5)完成數(shù)據(jù)處理后,狀態(tài)機(jī)開(kāi)始處理下一路數(shù)據(jù)幀。

      3 FPGA實(shí)現(xiàn)

      3.1 序列號(hào)和窗口狀態(tài)緩存結(jié)構(gòu)

      對(duì)于存儲(chǔ)序列號(hào)和窗口狀態(tài)的緩存結(jié)構(gòu),在FPGA中使用雙口RAM來(lái)實(shí)現(xiàn)。雙口RAM擁有獨(dú)立的讀寫(xiě)地址、數(shù)據(jù)和控制信號(hào),讀寫(xiě)操作互不影響,通過(guò)采用狀態(tài)機(jī)方式,能夠保證讀寫(xiě)信號(hào)時(shí)序正確。以序列號(hào)SN緩存為例,緩存具體實(shí)現(xiàn)結(jié)構(gòu)如下:

      3.2 抗重放功能模塊主要代碼實(shí)現(xiàn)

      抗重放功能模塊主要實(shí)現(xiàn)窗口計(jì)算,完成窗口狀態(tài)判斷,并輸出數(shù)據(jù)抗重放檢測(cè)結(jié)果。在FPGA中只需要1個(gè)時(shí)鐘完成上述所有功能,大大提高了數(shù)據(jù)吞吐率。抗重放功能模塊的主要代碼實(shí)現(xiàn)如下:

      3.3 窗口滑動(dòng)模塊主要代碼實(shí)現(xiàn)

      窗口滑動(dòng)模塊主要完成窗口狀態(tài)位更新,F(xiàn)PGA主要源代碼實(shí)現(xiàn)如下:

      4 測(cè)試結(jié)果

      4.1 多路安全連接互通測(cè)試

      為驗(yàn)證本設(shè)計(jì)的正確性,開(kāi)展了實(shí)際的工程應(yīng)用測(cè)試。兩臺(tái)網(wǎng)絡(luò)設(shè)備模擬建立了四條安全連接,使用IXIA公司的XGS2以太網(wǎng)測(cè)試儀雙向同時(shí)發(fā)送8組數(shù)據(jù)流,即每條安全連接配置2條流,數(shù)據(jù)幀長(zhǎng)度為1 024 B,速率設(shè)置為1 Gb/s,總數(shù)據(jù)吞吐量達(dá)到8 Gb/s,測(cè)試結(jié)果如圖7所示。

      圖7 多路安全連接通信測(cè)試結(jié)果圖

      從測(cè)試結(jié)果可以看出,收發(fā)數(shù)據(jù)幀計(jì)數(shù)(Tx Frames Rates和Rx Frames Rates)是一致的,丟包計(jì)數(shù)為0,說(shuō)明安全連接工作正常,8條數(shù)據(jù)流通信正常,沒(méi)有功能缺陷和數(shù)據(jù)丟失問(wèn)題發(fā)生。

      4.2 多路安全連接抗重放攻擊測(cè)試

      為驗(yàn)證多路安全連接抗重放攻擊檢測(cè)的正確性,以4路安全連接抗重放攻擊測(cè)試為例,開(kāi)展抗重放攻擊檢測(cè)實(shí)驗(yàn)。使用信而泰公司以太網(wǎng)測(cè)試儀bigtao 220作為抗重放測(cè)試儀器,該儀器能夠抓取線路上的數(shù)據(jù)包,再重放到線路上發(fā)送給接收端,通過(guò)查看測(cè)試儀的收發(fā)兩端計(jì)數(shù),驗(yàn)證測(cè)試結(jié)果是否符合預(yù)期。4路安全連接抗重放攻擊測(cè)試結(jié)果如圖8所示。

      圖8 抗重放測(cè)試結(jié)果圖

      從圖8可以看出,發(fā)送端口發(fā)送了8條流,每條流發(fā)送100 000個(gè)數(shù)據(jù)包,接收端口接收數(shù)據(jù)數(shù)量為0,線路丟包100 000個(gè),說(shuō)明序列號(hào)重復(fù)的數(shù)據(jù)包為非法數(shù)據(jù),全部被丟棄,多路安全連接抗重放攻擊功能正常,同時(shí)在受到外部攻擊情況下,網(wǎng)絡(luò)設(shè)備仍然能正常工作。

      5 結(jié)論

      本文結(jié)合工程應(yīng)用實(shí)踐,針對(duì)多個(gè)子網(wǎng)安全互通需求,深入分析了抗重放技術(shù)實(shí)現(xiàn)機(jī)制,設(shè)計(jì)了多路安全連接抗重放技術(shù)實(shí)現(xiàn)方案,并給出了測(cè)試結(jié)果,符合設(shè)計(jì)預(yù)期。通過(guò)與同類(lèi)設(shè)計(jì)相比,本文創(chuàng)造性提出使用FPGA作為硬件平臺(tái)的設(shè)計(jì)方案能夠支持多路安全連接抗重放功能,具備高并發(fā)通信能力,實(shí)現(xiàn)協(xié)議簡(jiǎn)單,處理效率高,并有較好的可拓展性。

      猜你喜歡
      待處理序列號(hào)子網(wǎng)
      一種簡(jiǎn)單子網(wǎng)劃分方法及教學(xué)案例*
      財(cái)產(chǎn)清查結(jié)果的賬務(wù)處理
      子網(wǎng)劃分問(wèn)題研究及應(yīng)用
      recALL
      “待處理”事項(xiàng)在科學(xué)事業(yè)單位的核算探討
      政府會(huì)計(jì)核算中待處理財(cái)產(chǎn)損溢賬戶應(yīng)用探究
      子網(wǎng)劃分的簡(jiǎn)易方法
      無(wú)法收回的房租押金,應(yīng)怎樣進(jìn)行賬務(wù)處理
      基于安全協(xié)議的虛擬專(zhuān)用子網(wǎng)研究
      河南科技(2014年16期)2014-02-27 14:13:04
      PP助手教你辨別翻新iPhone5小白不再中招
      共和县| 横峰县| 布拖县| 河东区| 宣城市| 桦川县| 定南县| 疏勒县| 盘山县| 富阳市| 饶河县| 沁源县| 荆门市| 镇远县| 南充市| 石林| 顺昌县| 乐山市| 辉南县| 于都县| 视频| 湛江市| 巴南区| 商城县| 石门县| 灵台县| 麻城市| 定日县| 寿阳县| 霞浦县| 游戏| 西和县| 石家庄市| 沁阳市| 门头沟区| 汉沽区| 广灵县| 广西| 鹰潭市| 怀来县| 林口县|