一種寬帶接入設備的用戶安全防護方法
2023-09-21 23:10:40 1
專利名稱:一種寬帶接入設備的用戶安全防護方法
技術領域:
本發明涉及在二層寬帶接入設備上對採用DHCP (Dynamic Host Configuration Protocol, 動態主機配置協議)方式接入的用戶進行安全防護的方法。
背景技術:
一、 DHCP接入認證
DHCP (Dynamic Host Configuration Protocol,動態主機配置協議)是一種目前較為常 見的寬帶接入認證方式。它建立在客戶端一伺服器(client-server)模型之上。在認證的初 始階段,客戶端用戶主機(DHCP client)發起請求,發送DHCP請求(DHCP DISCOVER)報文, 申請網絡IP位址。網絡中的DHCP伺服器(DHCP server)做出回應若可以分配IP,則通過發 送DHCP分配應答(DHCP ACK)報文向用戶主機傳送配置參數;若無法分配,則發送DHCP拒絕 分配(DHCPNAK)報文。當用戶退出連接時,向伺服器發送DHCP釋放(DHCP RELEASE)報文, DHCPserver回收之前分配給該用戶的IP位址,並可以將它分配給其它發出請求的用戶。具體 交互過程如附圖l所示。
二、 訪問控制列表技術
訪問控制列表(Access Control List)簡稱為ACL,訪問控制列表使用包過濾技術, 在網絡設備上讀取第三層及第四層包頭中的信息如源地址,目的地址,源埠,目的 埠等,根據預先定義好的規則對包進行過濾,從而達到訪問控制的目的。該技術初 期僅在路由器上支持,近些年來已經擴展到三層交換機,目前部分二層交換機(包括 接入設備)也開始提供ACL的支持了。
三、 數據報文捕獲機制
當前各主流網絡處理器(Network Processor, NP)或FPGA晶片均支持對於特定數據報文 的捕獲功能,其大致工作機制是這樣的程式設計師可以設定用於捕獲特定數據報文的報文過濾 器(filter),每一條filter的內容包括報文處理行為(rule)和報文匹配原則(subrule)。 Rule確定行為,具體可以是丟棄報文(drop)、允許通過(allow)等;subrule定義了匹配原 則,這個可以多種多樣,例如對於本發明中涉及的二層DHCP報文而言,可以是匹配乙太網幀 頭中的幀類型欄位,確定是哪一種類型的報文。 一條filter設置生效並應用到埠後,當端 口接收到與規則匹配的報文後,晶片底層硬體觸發中斷,開發人員可以在註冊fitler的同時 指定對應的中斷服務程序用於報文捕獲後的數據處理。
四、 DHCP接入方式存在的安全隱患
採用DHCP的接入方式,主要存在以下安全隱患在用戶申請獲得合法的IP位址之前,上 層設備無法對來自該埠的報文進行基於IP的ACL安全過濾;而即使用戶獲得了IP位址,如果
有其他非法用戶盜用他的IP位址上網,甚至採用地址欺騙的方式發起攻擊,單純的基於IP的
ACL安全機制也是無能為力的。目前,對此種安全隱患防範的主要方法是在採用基於IP的ACL 包過濾機制的基礎上,在用戶埠上綁定用戶的MAC地址。這樣可以有效的防止盜用IP的情形。 但同時帶來的問題是,如果用戶主機發生改變,如更換網卡等,用戶的MAC地址發生改變,就 無法上網了。這給用戶乃至運營商帶來了極大的不便。
發明內容
本發明的目的在於,針對現有技術存在的缺陷和不足,提供一種有效地減輕上層網絡設 備的處理負擔,提高設備運行效率的寬帶接入設備的用戶安全防護方法。
為達到上述目的,本發明採用以下技術方案本發明一種寬帶接入設備的用戶安全防護 方法,包括如下步驟
步驟A,在數字用戶線接入復用器上對動態主機配置協議報文進行偵聽(DHCP snooping), 步驟B,通過對IP報文來源的監測(IP Source guard),實現對用戶報文的通過進行限 制和過濾。
其中,所述步驟A具體為
步驟Al,開啟全局或永久性虛電路通道埠的動態主機配置協議報文偵聽功能使能開關; 步驟A2,設置提取動態主機配置協議報文的過濾器;
步驟A3,所述過濾器在同一個埠提取動態主機配置協議報文後,中斷服務程序判斷報 文類型,並作相應處理。
進一步的,所述步驟A3具體為
步驟A31,如果是上行的動態主機配置協議請求報文,向綁定資料庫的空閒記錄項中添 加一條記錄,將用戶主機MAC地址和PVC號填入對應欄位,狀態欄位為未啟用;
步驟A32,如果是下行的動態主機配置協議分配應答報文,更新綁定資料庫對應記錄項 中的用戶主機IP位址欄位,同時將狀態欄位設為啟用;
步驟A33,如果是上行的動態主機配置協議釋放報文或者下行的拒絕分配報文,在綁定 資料庫中,找到對應記錄項,刪除該記錄項,並把狀態欄位設為未啟用。
進一步的,所述步驟B具體為
步驟Bl,開啟全局或永久性虛電路通道埠的IP報文來源監測功能使能開關; 步驟B2,所述永久性虛電路通道埠設置動態主機配置協議報文過濾器、非動態主機配 置協議報文過濾器和匹配過濾器;
步驟B3,所述動態主機配置協議報文過濾器捕獲到下行的動態主機配置協議分配應答報
文;
步驟B4,在所述永久性虛電路通道埠解除非動態主機配置協議報文過濾器;
步驟B5,啟用匹配過濾器,以被捕獲報文中的IP+MAC+PVC為關鍵字欄位在所述綁定數 據庫中查詢,如果有與所述關鍵字欄位匹配的記錄項,則轉發該報文;否則,丟棄該報文;
步驟B6,當所述動態主機配置協議報文過濾器捕獲到上行的動態主機配置協議釋放報文 或者下行的拒絕分配報文,在所述綁定資料庫中刪除與其對應的相關記錄項;
步驟B7,所述永久性虛電路通道埠解除匹配過濾器,重新綁定非動態主機配置協議報 文過濾器。
與現有技術相比較,本發明引入了DHCP snooping和IP Source guard的概念,以綁定 資料庫(binding database)為核心引擎,在較低的層次上實現了對於用戶數據報文的過濾, 實現方案簡單,並且通過動態的綁定用戶IP和MAC的方式克服了背景技術中提到的傳統基於 IP的ACL安全機制的缺陷,對非法用戶盜用他人IP上網或發起攻擊的情況進行了有效的防 護。當二層接入設備採用了本發明中的技術方法後,上層設備減少了報文處理量,並可以專 注於其它安全策略的實現,從而降低了系統開發的難度和提高了系統的可靠性。
圖1是DHCP中客戶端和伺服器數據報文交互過程示意圖2是本發明的DHCP snooping功能實現的流程圖3a是本發明的IP Source guard功能啟動的流程圖3b是IP Source guard功能中filter工作機制實現的流程圖。
具體實施例方式
在數字用戶線接入復用器(Digital Subscribe Loop Access Multiplexer, DSLAM)上 實現DHCPsno叩ing功能。其具體功能包括提取上、下行DHCP報文,創建和維護針對用戶 埠的綁定資料庫(binding database),資料庫中的每個記錄項(entry)包括以下欄位 用戶主機IP位址、用戶主機MAC地址、用戶使用的永久性虛電路通道(Permanent Virtual Circuit, PVC)和記錄狀態status (標示該記錄是否啟用),其中IP/MAC/PVC為關鍵字字 段。
在實現DHCP snooping功能的基礎上,實現IP Source guard功能對用戶報文的通過 進行限制和過濾:用戶在通過DHCP獲得合法IP位址前不能訪問網絡,此時DSLAM僅捕獲DHCP 報文,而丟棄其它的所有報文;盜用他人IP位址的非法報文,將在PVC埠就予以丟棄,不
允許進入網絡;從PVC埠接收到的IP報文,將與binding database中的相關記錄項目進 行比較,不匹配的將被丟棄。
以上所有功能都支持基於全局和基於PVC埠的使能開關。
由於需要對上下行的報文進行截取、分析、過濾等操作,最佳的實現方式是在DSLAM的 線卡上實現DHCP snooping和IP Source guard功能。這主要是利用線卡上網絡處理器(NP) 或FPGA晶片的filter機制來實現對特定報文的捕獲並進而對報文進行處理,正如前文背景 技術介紹中所提到的那樣。
下面就結合附圖重點對線卡上的實現方法進行說明。 如圖2所示,在線卡上實現DHCP sno叩ing功能的步驟如下 步驟l:提供全局和PVC埠的使能開關,初始化設置為關閉(disable)狀態。 步驟2:初始化binding database,所有entry的狀態(status)欄位設置為未啟用(not ready)
步驟3:接收主控板下發的埠 DHCP snooping功能使能命令,將使能開關置為開啟 (enable)狀態。
步驟4:設置filter提取DHCP報文。
步驟5:提取到DHCP報文後,中斷服務程序判斷報文類型。
(1) 如果是上行的DHCP DISCOVER報文,向binding database的空閒entry中添加一 條記錄,將MAC地址和PVC號填入對應欄位,status欄位仍為not ready。
(2) 如果是下行的DHCP ACK報文,査詢binding database,更新對應entry中的IP 地址欄位,同時將status欄位設為啟用(active)。
(3) 如果是上行的DHCP RELEASE報文或者下行的DHCP NAK報文,査詢binding database, 找到對應entry,將所有欄位清0 (即刪除該記錄),並把status欄位設為not ready,從而 使該entry回到初始狀態。
在線卡上實現IP Source guard功能,主要包括如下幾個步驟(步驟l一4如圖3a所示; 步驟5—8如圖3b所示)
步驟h提供全局和PVC埠的使能開關,初始化設置為關閉(disable)狀態。 步驟2:接收主控板下發的埠 IP Source guard功能使能命令。
步驟3:判斷對應埠的DHCP snooping功能使能開關狀態,若為disable,則直接報錯 退出。
步驟4:在DHCP snooping功能使能的前提下,將該埠的IP Source guard功能使能開 關設為開啟(enable)狀態。
步驟5:剛開始用戶尚未通過DHCP認證得到分配的IP,因此status欄位為未啟用(not ready),此時應用2條filter到PVC埠 filterl捕獲DHCP報文,filter2丟棄所有報 文。此時可以保證除DHCP報文外所有其他報文都被丟棄。
步驟6:當步驟5中創建的filterl捕獲到下行的DHCP ACK報文後,在更新binding database entry表項的同時在該PVC埠解除原先設置的filter2,添加一條新的filter, 進行IP+MAC的匹配,稱之為f ilter3。此時,只有IP和MAC均匹配的報文才能夠進入網絡, 其它報文將被丟棄。同時filterl繼續捕獲DHCP報文。
步驟7:當filterl捕獲到上行DHCP RELEASE報文或下行DHCP NAK報文,從binding database中刪除相關entry的同時,刪除步驟6中創建的匹配IP+MAC的filter3,重新綁定 步驟5中的filter2,系統拒絕接收除DHCP報文外的所有報文。
步驟8:重複步驟5-7,直到管理員關閉IP Source guard功能。
權利要求
1、一種寬帶接入設備的用戶安全防護方法,包括如下步驟步驟A,在數字用戶線接入復用器上對動態主機配置協議報文進行偵聽,步驟B,通過對IP報文來源的監測,實現對用戶報文的通過進行限制和過濾。
2、 根據權利要求l所述的一種寬帶接入設備的用戶安全防護方法,其特徵在於,所述步 驟A具體為步驟Al ,開啟全局或永久性虛電路通道埠的動態主機配置協議報文偵聽功能使能開關; 步驟A2,設置提取動態主機配置協議報文的過濾器;步驟A3,所述過濾器在同一個埠提取動態主機配置協議報文後,中斷服務程序判斷報 文類型,並作相應處理。
3、 根據權利要求2所述的一種寬帶接入設備的用戶安全防護方法,其特徵在於,所述步 驟A3具體為步驟A31,如果是上行的動態主機配置協議請求報文,向綁定資料庫的空閒記錄項中添 加一條記錄,將用戶主機MAC地址和PVC號填入對應欄位,狀態欄位為未啟用;步驟A32,如果是下行的動態主機配置協議分配應答報文,更新綁定資料庫對應記錄項 中的用戶主機IP位址欄位,同時將狀態欄位設為啟用;步驟A33,如果是上行的動態主機配置協議釋放報文或者下行的拒絕分配報文,在綁定 資料庫中,找到對應記錄項,刪除該記錄項,並把狀態欄位設為未啟用。
4、 根據權利要求1或3所述的一種寬帶接入設備的用戶安全防護方法,其特徵在於,所 述步驟B具體為步驟B1,開啟全局或永久性虛電路通道埠的IP報文來源監測功能使能開關; 步驟B2,所述永久性虛電路通道埠設置動態主機配置協議報文過濾器、非動態主機配 置協議報文過濾器和匹配過濾器;步驟B3,所述動態主機配置協議報文過濾器捕獲到下行的動態主機配置協議分配應答報文;步驟B4,在所述永久性虛電路通道埠解除非動態主機配置協議報文過濾器;步驟B5,啟用匹配過濾器,以被捕獲報文中的IP+MAC+PVC為關鍵字欄位在所述綁定數 據庫中査詢,如果有與所述關鍵字欄位匹配的記錄項,則轉發該報文;否則,丟棄該報文;步驟B6,當所述動態主機配置協議報文過濾器捕獲到上行的動態主機配置協議釋放報文 或者下行的拒絕分配報文,在所述綁定資料庫中刪除與其對應的相關記錄項;步驟B7,所述永久性虛電路通道埠解除匹配過濾器,重新綁定非動態主機配置協議報 文過濾器。
全文摘要
本發明公開了一種寬帶接入設備的用戶安全防護方法,針對現有DHCP的接入方式,在用戶申請獲得合法的IP位址之前,上層設備無法對來自該埠的報文進行基於IP的ACL安全過濾的問題而發明。步驟A,在數字用戶線接入復用器上對動態主機配置協議報文進行偵聽,步驟B,通過對IP報文來源的監測,實現對用戶報文的通過進行限制和過濾。本發明在較低的層次上實現了對用戶數據報文的過濾,實現方案簡單,並且通過動態的綁定用戶IP和MAC的方式克服了傳統基於IP的ACL安全機制的缺陷,對非法用戶盜用他人IP上網或發起攻擊的情況進行了有效的防護。當二層接入設備採用了本發明中的技術方法後,上層設備減少了報文處理量,降低了系統開發的難度,提高了系統的可靠性。
文檔編號H04L29/06GK101098227SQ200610090770
公開日2008年1月2日 申請日期2006年6月30日 優先權日2006年6月30日
發明者捷 任, 熊文杰 申請人:中興通訊股份有限公司