201132056 六、發明說明: 【發明所屬之技術領威】 [0001] 本發明係有關網路通訊裝置,尤指對網路位址解析攻擊 有較高防紫能力的路由裝置及相關的控制電路。 [先前技術] [0002] 網路位址解析協定(Address Resolution Protocol ,ARP)資訊在乙太網路的通訊上扮演重要角色,但習知 區域網路内之終端裝置或路由裝置的網路位址解析資訊 ’卻很容易被攻擊者或惡意程式利用所謂的ARP欺編( ^ ARP Spoof ing)手段加以破壞。 [0003] 由於路由裝置是負責處理區域網路與其他網段間之資料 • 往來的關鍵设備,一旦路由裝置中的網路位址解析資訊 因ARP攻擊而受到破壞,將會造成區域網路内的終端裝 置無法與其他網段(例如網際祕)進行通訊的嚴重問 題。 [0004] «免路由裂置中的網路位址解析資訊受到ARp攻擊的 〇 破壞’習知的1解決方法是網路管理者親自設定路由 裝置中的每-筆網路位址解析資訊U,這種方法對 許多满路環兄而§並不實用。例如,對於動態分配網路 協疋位址的、轉環境、終端裝置可經常移動位置的無線 網路終端裝置數錢大或架職雜的網路環 境而言’要求網路管理者逐-設定路由裝置中數量魔大 且可能隨時變動的網路位址解析資訊, 顯然是不切實際 aA -ir ο [發明内容】 099106321 表單煸號 Α0101 第3頁/共33頁 0992011449-0 201132056 [0005] 有鑑於此,如何提升路由裝置對ARP攻擊的防禦能力, 實係有待解決的問題。 [0006] 本說明書提供了一種用於路由裝置之控制電路的實施例 ,其包含有:一輸出/輸入介面;以及一處理器,耦接 於該輸出/輸入介面,當該處理器接收到一網路位址解 析封包,且該網路位址解析封包所包含之一第一網段之 一網路協定位址的網路位址解析資訊與該路由裝置中之 記錄不同時,若該網路協定位址曾至少一次存取其他網 段,且符合一預定條件,則該處理器不會更新該網路協 定位址之網路位址解析資訊。 [0007] 本說明書提供了一種用於路由裝置之控制電路的實施例 ,其包含有:一輸出/輸入介面;以及一處理器,耦接 於該輸出/輸入介面,當一第一網段之一網路協定位址 曾多次存取其他網段,且符合一預定條件時,該處理器 會將該網路協定位址的網路位址解析資訊設成不可改變 〇 [0008] 另一種路由裝置的實施例包含有:一控制電路,當接收 到一第一網路封包時,若該網路封包的來源網路協定位 址位於一第一網段、目的網路協定位址指向一第二網段 、目的實體位址與該路由裝置之實體位址不同、且該來 源網路協定位址符合一預定條件,則該處理器會產生目 的網路協定位址與該第一網路封包之目的網路協定位址 相同,且來源實體位址與該路由裝置之實體位址相同之 一第二網路封包;其中該預定條件係選自於由下列情況 所組成之一群組:(a)離該來源網路協定位址先前存取 099106321 表單編號A0101 第4頁/共33頁 0992011449-0 201132056 [0009] 其他網段的時間,小於一預定時間長度;(b)該來源網 路協定位址存取其他網段的頻率達到一預定頻率;(C) 該來源網路協定位址曾存取其他網段達一預定次數;及 (d)該來源網路協定位址先前存取其他網段時使用的實 體通訊埠,與收到該網路封包的實體通訊埠相同。 本發明的優點之一在於,可有效改善路由裝置對於偽造 的網路位址解析封包的辨識能力,進而提升對於ARP攻 擊的防禦力及/或警示能力。 〇 [0010] 本發明的另一優點在於,路由裝置可依據每一網路協定 位址存取其他網段的情況,動態地決定是否允許變更個 別網路協定位址的網路位址解析資訊,無需網路管理者 的介入操作,故適用於各種網路環境中。 [0011] ο 本發明的另一優點在於,路由裝置僅需分析一網路封包 之來源網路協定位址存取其他網段的相關連線記錄,而 無需耗費額外運算能力去讀取該網路封包的承載資料内 容便能快速地自動判斷該網路封包是否有效,並決定後 續的處理動作,可有效提升網路的資訊安全。 [0012] 本發明的另一優點是,即便區域網路内的終端裝置中的 網路位址解析資訊受到ARP攻擊的破壞,路由裝置仍可 維持該終端裝置與網際網路或其他網段的通訊,大幅降 低了 ARP攻擊對於網路通訊的威脅。 [0013] 【實施方式】 以下將配合相關圖式來說明本發明之實施例。在這些圖 式中,相同的標號係表示相同或類似的元件或流程步驟 099106321 表單編號A0101 第5頁/共33頁 0992011449-0 201132056 ο [0014] 在說明書及後續的申請專利範圍當中使用了某些詞囊來 指稱特定的元件。所屬領域中具有通“識者應可理解 ’製造商可能會用不同的名詞來稱呼同樣的元件。本說 明書及後續的申請專利範圍並不以名稱的差異來作 分元件的方式’而是以元件在功能上的Μ來作為區: 的基準。在通篇說明書及後續的請求項#中所提及的「 包含」係為一開放式的用語,故應解釋成「包含但不限 疋於J。另外,「耦接」一詞在此係包含任何直 接及間接0連接手段。因此,若文中描述—第—裝置 輕接於-第二裝置’則代表該第U可直接(包含透 過電性連接或無線傳輸、光學傳輸等訊號連接方式)連 接於該第:t置’或透過其他裝置或連接手段間接地電 性或訊號連接至該第二裝置。 [0015] 第1圖所繪示為本發明一實施例之網路系統1〇〇簡化 後的示意圖。在網路系統100中,路由裝置(又稱為通 訊閘道)110是區域網路12〇與其他網段(例如網路 網路)130之間的通訊橋樑。本實施例中的路由裝置 11〇包含一控制電路112 、用來與區域網路12〇進行 通訊之一網路介面丨14 '用來與其他網段13〇進行通 訊之一網路介面116 '以及一儲存媒體118 。實作上 ,路由裝置110可以是專用的網路設備,也可以將具有 封包轉遞能力的軟體或作業程式架設在一般電腦上來實 現。 [0016] 099106321 . 路由裝置110和區域網路120間,以及路由裝置110 表單編號 AG1G1 帛 6 頁/共 33 ! 0992011449-0 201132056 和其他網段13〇 _通訊,都可利用有線傳輸或無線傳 輸方式來達成。因此,網路介面114和網路介面116 可以是傳統的有線網路介面’也可以是無線通訊介面。 儲存媒體118則是用來儲存路由裝置11〇運作時所需 的路由資訊及網路位址解析資訊(Address Res〇iu_ tion Information )。儲存媒體U8可以是内建於 路由裝置11G中的儲絲置、外接的儲存裝置、也可以 是以上兩者的組合。 [0017] Ο Q [0018] [0019] 如第1圖所示,區域網路12〇來包含有多個終端裝置 (圖中繪示終端裝置122 ' 124和刚為例)。這 些終端裝置可以是手機、電滕、pDA、機上盒、遊戲機 或任何其他具有網路存取功能的設備。實作上,區域網 路120内的多個終端裝置可以透過一傷或多個集線器( 或父換器)128以有線或無線方式互聯,建構成較複雜 或較大型的區域網路環境,並耦接於路由裝置11〇的網 路介面114 。 以下將搭配第2圖與第3圖來進一步說明本發明之路 由裝置110的運作方式。 第2圖為本發明之控制電路112的一實施例功能方塊 圖。在本實施例中’控制電路112包含一處理器21〇 與一輸出/輸入介面220 。輸出/輸入介面220 耗接於路由裝·置丨1〇之網路介面114 、網路介面116 、以及儲存媒體118 ,用來進行處理器210與網路介 面Π4 、116 、以及儲存媒體118間的資料傳輸。 099106321 表單編號A0101 第7頁/共33頁 0992011449-0 201132056 _]帛3圖為本發明路由裝置UG之網路位址解析資訊管 理方法的一實施例流程圖300 。 剛好驟310巾,當路由裝置nG剛開始與區域網路 120建立連線關係時,控制電路112的處理器會 透過區域網路120内個別終端裝置所發出的網路位址解 析封包(例如ARP詢問封包或ARP答覆封包),取得 個別終端裝置的實體位址(例如MAC位址)和網路協定 位址(例如IPv4位址或ιΡν6位址)的配對資料。以 下假設路由裝置11〇的實體位址是MAC—11〇 、網路協 定位址是ΙΡ_11〇 ;終端裝置122的實體位址是 MAC_122 、網路協定位址是ip—122„:終端裝置124 的實體位址是MAC_124 、網路協定位址是IP_124 。 終端裝置126的實體位址是MAC__126 、網路協定位址 是 IP一126 。一般而言,IP_122 、 Ip_124 以及 I P_ 12 6屬於同一網段。 [0022]為方便說明起見,以下假碑網路管理者親自為路由裝置 110設定終端裝置122 '網路位址解析資訊為 IP一 122與MAC_122的配對,而處理器210於步驟 310中收到終端裝置124所傳來包含MAC_124與 IP一 124配對之一網路位址解析封包aRP_124以及終 端裳置126所傳來包含MAC_126與IP_126配對之 一網路位址解析封包ARP_126 。 [0023] 接著,處理器210會進行步驟320 ,將網路位址解析 封包ARP—124與ARP_126個別包含的網路協定位址 與實體位址的配對資料記錄於儲存媒體118中,以建立 099106321 表單編號A0101 第8頁/共33頁 0992011449-0 201132056 [0024] [0025] ❹ [0026]
[0027] 路由Ii 1 i 110的初步網路位址解析資訊。 如前所述, 位玉 攻擊者、入侵者或惡意程式很容易假造網路 “ 析封包來攻擊路由裝置所儲存的網路位址解析 D的路由裝置由於難以判定網路位址解析封包的 、偽所以不能有效地抵擋ARP攻擊。 為了接 由聿θ升路由裝置11〇對ARp攻擊的防禦能力,在路 路 1的初步網路位址解析資訊建立之後,控制電 U2的處理器210會進行步驟330 ,監視區 塔12 〇 肉 鬥的個別網路協定位址存取其他網段(例如網際 網路)的情况。 每當處理器 210發現區域網路120内之一網路協定位 祉取甘- 線)時、網段(例如與其他網段130成功建立網路連 連會進行步驟340 ’將韻轉定位址的相關 .录儲存於儲存媒體118中,以作為判斷後續收到 ㈣包有效性的依據。 、 例如,第 A 圖所繪示的連^線記錄表400是儲存於儲存 媒體 1l〇 _L 、 中之相關連線記錄之一實施例。在本實施例中 ’處理器210 t將在步驟310巾所收到的網路協定位 址與實體位址軌對資料(例如Ip_124肖 的配對),分別記錄在連線記錄表400的攔410與攔 420中。如第4圖所示,連線記錄表4〇〇每—列所儲 存的資料為特定網路協定位址的相關連線記錄。舉例而 言,列402是用來儲存網路協定位址IP_122 (正常 情況下應該是終端裴置122的網路協定位址)與其他網 099106321 表單編號A0101 第9頁/共33頁 0992011449-0 201132056 段間的相關連線⑽’而列404是用來料網路協定位 址IP—124 (正常情況下應該是終端裝置124的網路 協疋位址)與其他網段間的相關連線記錄。 [0028] [0029] [0030] [0031] 對連線記錄表400的每一列而言’欄“ο係用來記錄 特定網路協定位址存取其他網段(如果有的話)時,所 使用之網路介面114上的實體通訊埠號碼。欄44〇係 用來该特疋網路協定位址存取其他網段(如果有的士舌) 的時間點。攔450係用來記錄該特定網路協定位址與其 他網段(但並不限定要同一網段)建立連線($“_、、 sion/Socket )的次數,例如與其他網段13〇成功建 立網路連線的累計次數。 實作上,處理H 210纟騎特定網路協定位址存取 網段130的時間點時,可以有多種選擇,以下將以第5 圖及第6圖為例來進一步說明。 第5 ®是特定網路協定位址“ TCp傳輪方式存取其他 網段130的示意圖_。如第5圖所示當特定網 路協定位址要以TCP傳輸方式存取其他網段13Q中的 某-目的裝置時’會先透過三方交握(ΤΗπ心 Handshaking )程序與該目的裝置建立連線( sion ),接著才會進入資料傳輸階段。在一實施例中, 處理器210 t記錄接收到特定網路協定位址於三方交握 程序中所發出之連料認封包的時間點川,並以之作 為特定網路蚊位址存取其他網段13()的時間點。 在另一實施例中’處理器川t記錄該特定網路協定位 099106321 表單編號A0101 第頁/共33頁 0992011449-0 201132056
[0032] Ο 址與該目的裝置於資料傳輸階段中進行第Ν次資料傳輸 的時間點(例如接收到特定網路協定位址所發出之第Ν 個資料封包的時間點520 ,或是接收到該目的裝置所發 出之第Ν個資料確認封包的時間點530 ),並以之作 為特定網路協定位址存取其他網段130的時間點,其中 Ν的數值可依設計的需要而調整。除此之外,處理器 21 0也可改用該特定網路協定位址與該目的裝置確認結 束資料傳輸的時間點,來作為特定網路協定位址存取其 他網段1 3 0的時間點。 第6圖是特定網路協定位址以UDP傳輸方式存取其他 網段130的示意圖600 。由於UDP傳輸方式不是一 種連線導向的傳輸機制,故特定網路協定位址要與其他 網段130中的某一目的裝置建立連線(Socket )時 ,並不會先進行三方交握的程序,且資料的接收端收到 資料封包後也不會回覆確認訊息。在此情況下,處理器 210可記錄在特定網路協定位址發出資料封包後,第一 次收到該目的裝置回傳之相對應資料封包的時間點610 ,並以之作為特定網路協定位址存取其他網段130的時 間點。實作上,處理器210可於該目的裝置發出之資料 封包中的來源埠(Source Port )與目的埠(Destination Port ) 的内容與特定網路協定位址發出的資 料封包相同時,將該目的裝置發出的資料封包判斷成是 與特定網路協定位址發出的資料封包相對應。 在其他實施例中,處理器210亦可用收到該特定網路協 定位址所發出之第Μ個資料封包的時間點620 ,或是 099106321 表單編號Α0101 第11頁/共33頁 0992011449-0 [0033] 201132056 收到該目的裝置所發出之第P個相對應資料封包的時間 點630 ,來作為特定網路協定位址存取其他網段130 的時間點。 [0034] [0035] 每次處理器210偵測到特定網路協定位址與其他網段成 功建立連線(Session/Socket )時,便會將連線記 錄表400中與該特定網路協定位址相對應的欄450的 數值加一,以記錄特定網路協定位址與其他網段(並不 限定要同一網段)成功建立連線的累計次數。 在某些時候或應用中,網路管理者可能會親自為路由裝 置110設定某些網路協定位址(例如IP_122 )的網 路位址解析資訊。因此,處理器210還會於連線記錄表 400的攔460中設定一指示資料(Indicator ), 例如一旗標,以表示該特定網路協定位址之網路位址解 析資訊是否為網路管理者所設定。在一實施例中,處理 器210會將網路協定位址IP_122所對應的欄460 中的值設為1 ,代表路由裝置110中關於網路協定位 址IP_122的網路位址解析資訊是網路管理者親自設定 的。另外,處理器210則會將網路協定位址IP_124 與IP_126所對應的欄460中的值設為0 ,代表他 們的網路位址解析資訊,是經由路由裝置11 0所收到的 網路位址解析封包所獲得,不是網路管理者親自設定的 〇 實作上,處理器210可持續性地進行步驟330與步驟 340的流程,以更新連線記錄表400的内容。 099106321 表單編號A0101 第12頁/共33頁 0992011449-0 [0036] 201132056
[0037] 另一方面,路由裝置110在後續運作的過程中,可能會 收到其他的網路位址解析封包,但所包含之特定網路協 定位址的網路位址解析資訊與儲存媒體118中之記錄不 同的情況(步驟3 5 0 )。例如,假設路由裝置110在 步驟350中收到網路位址解析封包ARP_N ,其傳送端 網路協定位址為IP_124 ,而傳送端實體位址為MAC_N ,亦即,網路位址解析封包ARP_N所包含的網路協定位 址IP_124的網路位址解析資訊(IP_124與MAC_N 的配對)與路由裝置110所記錄之IP_124與 〇 MAC_124的配對不同。遇到這種情況,處理器210會 進行步驟360 。 . [0038] 發明人發現在許多網路環境中的大多數使用者都有一種 共通的網路使用行為態樣,那就是會因為工作、學習、 娛樂、從事社交活動或單純打發時間等各種原因,而頻 繁地連線到網際網路或其他網段進行網頁或資料存取動 作的傾向。因此,在步驟360中,處理器210會分析 連線記錄表400中所儲存之網路協定位址IP_124的 Q 一 相關連線記錄是否符合與正常使用者的網路使用行為態 樣相對應的預定條件。 [0039] 在一實施例中,與正常使用者的網路使用行為態樣相對 應的條件,是網路協定位址IPJ24與其他網段130 (例如網際網路)的連線頻率會達到一預定頻率,例如 10分鐘1次、1個小時3次、或是3個小時2 次之類的。預定頻率的高低亦可由網路管理者依據實際 的網路應用環境來加以調整。因此,處理器210在步驟 099106321 表單編號A0101 第13頁/共33頁 0992011449-0 201132056 360中會分析網路協定位址IP_1 24與其他網段130 (例如網際網路)的連線頻率是否達到該預定頻率。實 作上,處理器210可於步驟340中為連線記錄表400 增加一個記錄連線頻率計算結果的攔位,並於步驟360 中直接判斷該連線頻率攔位的值是否達到或大於該預定 頻率值。若是,處理器210會判定網路協定位址 IP_124的使用者的網路使用行為態樣符合正常使用者的 行為態樣,因此,會將所包含之網路位址解析資訊與儲 存媒體118中之記錄不一致的網路位址解析封包 ARP_N判斷成無效封包。 [0040] 或者,處理器210亦可將接收到網路位址解析封包 ARP_N當時的系統時間,減去連線記錄表400中對應 於網路協定位址IP_122的欄440所記錄的存取時間 點Ta ,以求得收到網路位址解析封包ARP_N的時間 ,離網路協定位址IP_122前一次存取其他網段130 的時間點Ta有多久。計算所得的時間長度,其倒數便 可以看成一種連線頻率的表達方式。例如,假設計算的 結果是10分鐘,表示收到網路位址解析封包ARP_N 的時間,距離網路協定位址IP_122上次存取其他網段 的時間點Ta已經有10分鐘,處理器210也可以將 其解讀成是網路協定位址IP_122最近的連線頻率是 10分鐘1次。因此,處理器210亦可於步驟360 中依據對應於網路協定位址IP_122的櫊440所記錄 的存取時間點Ta ,判斷收到網路位址解析封包ARP_N 的時間,離網路協定位址IP_122先前存取其他網段的 099106321 表單編號A0101 第14頁/共33頁 0992011449-0 201132056 時間是否小於一預定時間長度。若是,則代表網路協定 位址IPJ24的使用者的網路使用行為態樣符合正常使 用者的行為態樣,因此’則處理器210會將網路位址解 析封包ARP_N判斷成無效封包。 [0041] Ο ο [0042] 另外,在某些網路環境中,終端裝置與路由裝置110間 的連接是透過固定的網路線來實現的,且個別終端裝置 與路由裝置110之網路介面114上的實體通訊埠的連 接關係是固定不變的。在此情況下,與正常使用者的網 路使用行為態樣相對應的條件,是網路協定位址IP_124 先前與其他網段建立連線、傳輸資料時使用的實體通訊 埠,會與路由裝置110收到網路協定位址ip_124所 發出之正常網路位址解析封包的實體通m埠相同。因此 ,處理器210可於步驟360中判斷收到鋼路位址解析 封包ARP_N的通訊琿,是否與網路協定位址IP_122 先前存取其他網段時使用的實體通訊埠Port_l相同。 若不相同,則代表網路位址解析封包ARP_N可能是偽造 的網路位址解析封包,因此,處理器210會將網路位址 解析封包ARP_N判斷成無效封包。 在另一實施例中,與正常使用者的網路使用行為態樣相 對應的條件,是網路協定位址IP_124與其他網段130 (例如網際網路)建立連線次數會達一預定次數,例如 5次、10次等。預定次數的多寡可由網路管理者依據 實際的網路應用環境來加以調整。因此,處理器210於 步驟360中會判斷對應於網路協定位址IP—122的攔 450所記錄的建立連線次數c〇unt_122是否達該預定 099106321 表車煸號A0101 第15頁/共33頁 0992011449-0 201132056 次數。若Count_122的值未達該預定次數,則代表網 路協定位址IP_124的使用者的網路使用行為態樣不符 合正常使用者的行為態樣,故處理器210會將網路位址 解析封包ARP_N判斷成無效封包。 [0043] 另外,在網路管理者親自為路由裝置110設定某些特定 網路協定位址的網路位址解析資訊的網路應用中,該特 定網路協定位址的網路位址解析資訊不應該會自行變動 才對。因此,處理器210亦可於步驟360中依據連線 記錄表400的欄460的内容,來判斷所收到之一網路 位址解析封包是否有效。假設路由裝置110在步驟 350中收到網路位址解析封包ARP_Y ,其傳送端網路 協定位址為IP_122 ,而傳送端實體位址為MAC_Y , 亦即,網路位址解析封包ARP_Y所包含的網路協定位址 IP_122的網路位址解析資訊(IP_122與MAC_Y的 配對)與路由裝置110所記錄之IP_122與MAC_122 的配對不同。在步驟360中,處理器210會依據網路 協定位址為IP_122所對應的欄460中的值(本實施 例中為1 ),得知路由裝置110中關於網路協定位址 IP_122的網路位址解析資訊是網路管理者親自設定的。 由於網路位址解析封包ARP_Y所包含的網路協定位址 IP_122的網路位址解析資訊,與路由裝置110中由網 路管理者所設定的既有記錄產生衝突,故處理器210會 將網路位址解析封包ARP_Y判斷成無效封包。 [0044] 實作上,亦可將處理器210設計成於步驟360進行以 上所述的兩項或兩項以上的分析比對,以提升對網路位 099106321 表單編號A0101 第16頁/共33頁 0992011449-0 201132056 [0045] 址解析封包有效性判斷的準確度。 前述實施财的祕_表_,制來财路由裝置 所U#網路協定位址與其他網段間的相關連 線己錄肖路由裝置110運作所需的網路位址解析資訊 (例如ARP表)功能π 遺不相同’因此兩者可以分別記錄 於儲存媒體118的不同 又中。實作上,處理器21〇 可依據連線記錄表4〇〇沾 υυ的内容來產生路由裝置110運 作所需的ARP表。 ^ [0046] 若處理器210於步驟、 6 0的分析結果是將所收到的網 路位址解析封包判斷成無致封包,則處理器不會更 新健存媒體118中所記錄之網路位址解析資訊(步驟 3 7 0 )。在一實施例巾 Ύ 處理器210此時還會進行步 驟380 ,主動發出链‘ ^ s不现息通知網路管理者區域網路 UO内可能有ARP、 <擎發生’讓網路管理者能儘早採 取因應措施,以避免危害擴大。 [0047] 〇 反之’若處理器210於步驟36〇的分析結果是將所收 到的網路減解㈣包_成有_包,齡進行步驟 390,依據所收到的網路位址解析封包更新儲存媒體 118中所s己錄之網路位址解析資訊,並一併更新連線記 錄表400中的攔410與欄42〇的内容。 [0048] «月參考第7圖,其所鳍·示為本發明路由裝置11〇之網 路位址解析資訊管理方法的另一實施例流程H 700。流 程圖700中的步驟31〇~34〇與前述流程圖3〇〇中的 步驟310〜340相同,故在此不再贅述。 099106321 表單編號A0101 第17頁/共33頁 0992011449-0 201132056 [0049] 在步驟中,控制電路Π2的處理器21〇會分析 連線記錄表400中所儲存之各網路協定位址的相關連線 記錄是否符合與正常使用者的網路使用行為態樣相對應 的預定條件。步驟710的内容與前述的步驟36〇很類 似,但差異點在於兩者執行的時間點有所不同。在前述 的流程圖300中,處理器210是於接收到之網路位址 解析封包所包含的網路位址解析資訊與路由裝置中 的既有記錄不一致時,才進行步驟360 。但在流程圖 7 0 0中’處理器21 〇則是會週期性地進行步驟7丨〇 , 而不論當時是否有收到任何網路位址解析封包。如前所 述’處理器210可持續性地進行步驟330與340 , 以更新連線記錄表400的内容,所以本實施例中的處理 器210會定期對連線記錄表400中的每一筆資料進行 分析和檢視’以判斷各網路協定位址的相關連線記錄是 否符合與正常使用者的網路使用行為態樣相對應的預定 條件。 [0050] 若處理器21〇於步驟710的分析中發現,某一特定網 路協定位址的相關連線記錄符合與正常使用者的網路使 用行為態樣相對應的預定條件,則處理器210會進行步 驟 720 ·> [0051] 在步驟720中,處理器210會將儲存媒體118中所 記錄之該特定網路協定位址的網路位址解析資訊設成不 可改變(unchangeable )以避免受到ARP攻擊的破 壞。例如,在某些作業系統中,處理器210可將該特定 網路協定位址的網路位址解析資訊的類蜇設成靜態( 099106321 表單編號A0101 第18頁/共33頁 0992011449-0 201132056
Static ),以使得該筆網路位址解析資訊不會被路由裝 置110的其它程式修改。換言之,在特定網略協定位址 的相關連線記錄能通過步驟710之有效性檢驗的期間内 ,任何ARP攻擊都無法破壞路由裝置11()中關於嗜特 定網路協定位址的網路位址解析資訊的既有t己鲦 [0052] 在一實施例中,若處理器210於步驟71〇从、 的分析中發 Ο 現某一特定網路協定位址的相關連線記錄,不符人與正 常使用者的網路使用行為態樣相對應的預定條件,且該 特定網路協定位址的網路位址解析資訊是設成不可改變 的狀況,則處理器们〇會進行步驊72〇 ,將路由裝置 11 〇中關於該特定網路協定位址的網路位址解軒資1< 成可改變。例如,在某些作業系統中,處理器210可將 該特定網路協定位址的網路位址解析雜购型設成動 態(Dynamic ),以使得處理_ 21〇可依據^收到 的相關網路位址解析封包’來更新儲存媒體118中關於 ㈣__定位址的網路位址解析資訊的既有記錄/ ❹ 剛 實作上’流程圖300與流程冑7〇〇所揭示的兩種網路 位址解析資訊管理方法可以併行運用。例如,處理器 210可以於接收到網路位址解析封包時進行步驟360 ,以判斷所_之·位址解析封包的有效性,另-方 面又週期性地進行步驟71Q,以不斷更新儲存媒體 Π8中的ARP表的設定。 [0054] 099106321 由上述說明可知,本發B㈣優點之_在於,可有效改善 路由裝=11〇對於偽造的網路位址解析封包的辨識能力 ,進而提升對☆攻擊的防禦力及警示能力。 表單编號A0101 第19頁/共33頁 〇992〇11449-0 201132056 [0055] 本發明的另一優點在於,路由裝置可依據每一網路協定 位址存取其他網段的情況,動態地決定是否允許變更個 別網路協定位址的網路位址解析資訊,無需網路管理者 的介入操作,故可適用於各種網路環境中。 [0056] 請參考第8圖,其所繪示為本發明之網路封包處理方法 的一實施例流程圖800 。 [0057] 當路由裝置110的網路介面114收到一網路封包(步 驟810 ),控制電路112的處理器210會進行步驟 820 ° [0058] 步驟820的内容與前述的步驟360很類似,但差異點 在於兩者執行的時間點有所不同。在前述的流程圖3 0 0 中,處理器210是於接收到之網路位址解析封包所包含 的網路位址解析資訊與路由裝置110中的既有記錄不一 致時,才進行步驟360 。但在流程圖800中,處理器 210則是於接收到一網路封包時進行步驟820 。 [0059] 假設路由裝置110於步驟810中收到的網路封包,是 來源網路協定位址為IP_1 26之網路封包A ,則處理 器210在步驟820中會分析連線記錄表400中所儲 存之網路協定位址IP_126的相關連線記錄是否符合與 正常使用者的網路使用行為態樣相對應的預定條件,以 作為判斷網路封包A是否為有效網路封包的依據。 [0060] 若處理器210於步驟820的分析中發現,網路封包A 的來源網路協定位址IP_1 26的相關連線記錄不符合與 正常使用者的網路使用行為態樣相對應的預定條件,則 099106321 表單編號A0101 第20頁/共33頁 0992011449-0 201132056 [0061] [0062]Ο [0063]
[0064]G
[0065] 處理器210會進行步驟830 ,將網路封包Α判斷成 無效網路封包,並加以丟棄。 若網路封包A的來源網路協定位址IP_126的相關連 線記錄符合與正常使用者的網路使用行為態樣相對應的 預定條件,則處理器210會對網路封包A作進一步的 處理。例如,在一實施例中,處理器210會對網路封包 A進行步驟840及後續的流程。 在步驟840中,處理器210會讀取網路封包A的目 的網路協定位址欄位中的值,以判斷網路封包A的目的 地是在路由裝置110負責處理的網段範圍内,還是屬於 其他網段130 。 若網路封包A的目的網路協定位址是指向區域網路120 内同一網段中的其他網路協定位址(假設是網路協定位 址IP_122 ),則處理器210會進行步驟850 。 在步驟850中,控制電路112會透過網路介面114 將網路封包A送往實體位址MAC_122所對應的目的裝 置,亦即區域網路120中的終端裝置122 。在某些實 施例中,處理器210還可於進行步驟850之前,對網 路封包A中的承載資料進行預定的處理,例如掃毒、攔 截惡意程式、封包過濾、或其他應用層的處理等等。 在一實施例中,若處理器210在步驟840中發現網路 封包A的目的網路協定位址是指向屬於其他網段130 的目的裝置(假設其網路協定位址是IP_WAN ),則不 論網路封包A的目的實體位址欄位的值,是否為路由裝 099106321 表單編號A0101 第21頁/共33頁 0992011449-0 201132056 置110的實體位址MAC—110 ,處理器122都會進行 步驟8 6 0 。若處理器21 0發現網路封包A的目的實 體位址欄位的值不是指向路由裝置110的實體位址 MAC—110 ’則處理器210會推斷網路封包A的來源 裝置(正常情況下應該是終端裝置丨26 )受到了 arp 攻擊,並可依控制電路112的預設規則決定是否要發出 警訊通知網路管理者。 [0066] [0067] [0068] 099106321 在步驟860中,處理器會將該網路封包a的目的實體 位址欄位所填的位址更改成路由裝置110的實體位址 MAC—11〇 ,以產生一中間網路封包A’ 。 在步驟870十,處理器210會在儲存媒體118所記 錄的路由資訊中查找出與網路協定位址IP一WAN相對應 的路由規則,以及該路由規則所對應的次傳送點(此討 hop ) 〇 在步驟880中,處理器21〇會依據中間網路封包Α, 產生一待傳送網路封包B 。實作上,處理器210可直 接以中間網路封包A’的承載㈣(在本實施例中係與 網路^包A的承載資料相同)作為待傳送網路封包b的 承載資料’亦可對中間網路封包A,中的承載資料進行 預定的處理,例如掃毒、_惡意程式、封包過遽、或 其他應用層的處理料,並以處戦得到的:#料做為網 路封包B的承鮮料。此外,處理器川還會將網路 封包B的目的網路協定位址設成與_間網路封包△, 之目的網路協定位址IP_WAN (亦即網路封包a的目 第22頁/共33頁 =:Γ止):目同―’伽 0992 201132056 [0069] [0070] Ο [0071] Ο 址欄位填入路由裝置110之實體位址MAC_110 。換言 之,處理器210在步驟880中會產生目的網路協定位 址與網路封包A之目的網路協定位址IP_WAN相同, 且來源實體位址與路由裝置110之實體位址MAC_110 相同之網路封包B 。 接著,處理器210會進行步驟890 ,透過網路介面 116將該網路封包B往次傳送點傳送。 請注意,流程圖800中各步驟之實施順序僅係為一實施 例,而非偈限本發明之實作方式。例如,步驟820和步 驟840的順序可以對調或同時進行。另外,亦可將步驟 860的流程省略。 由以上說明可知,當路由裝置110發現網路封包A的 目的網路協定位址指向其他網段(例如網際網路)時, 只要網路封包A的來源網路協定位址IP_126的相關 連線記錄符合與正常使用者的網路使用行為態樣相對應 的預定條件,即使網路封包A的目的實體位址襴位因終 端裝置126受到ARP攻擊而填錯,本發明之路由裝置 110的處理器210就不會捨棄該網路封包A ,而是會 繼續對其進行路由處理,將網路封包A轉換成網路封包 B ,並往正確的路由路徑發送出去,以使終端裝置126 與其他網段(例如網際網路)的通訊不會因受到ARP攻 擊而中斷。 路由裝置110的另一項優點在於,其僅需分析一網路封 包之來源網路協定位址存取其他網段的相關連線記錄, 099106321 表單編號A0101 第23頁/共33頁 0992011449-0 [0072] 201132056 而無需耗費額外運算能力去讀取該網路封包的承載資料 内容,便能快速地自動判斷該網路封包是否有效,並決 定後續的處理動作,可有效提升網路的資訊安全。 [0073] 路由裝置110的又一優點是,即便區域網路内的終端裝 置中的網路位址解析資訊受到ARP攻擊的破壞,路由裝 置110仍可維持該終端裝置與網際網路或其他網段的通 訊,大幅降低了 ARP攻擊對於網路通訊的威脅。 [0074] 以上所述僅為本發明之較佳實施例,凡依本發明申請專 利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範 圍。 【圖式簡單說明】 [0075] 第1圖是本發明之網路系統之一實施例簡化後的示意 圖。 [0076] 第2圖是本發明之控制電路的一實施例功能方塊圖。 [0077] 第3圖是本發明之網路位址解析資訊管理方法的第一實 施例流程圖。 [0078] 第4圖是本發明之特定網路協定位址的相關連線記錄之 一實施例示意圖。 [0079] 第5圖是特定網路協定位址以TCP傳輸方式存取其他 網段的示意圖。 [0080] 第6圖是特定網路協定位址以UDP傳輸方式存取其他 網段的示意圖。 [0081]第 [0081] 圖是本發明之網路位址解析資訊管理方法的第二實 099106321 表單編號A0101 第24頁/共33頁 0992011449-0 201132056 施例流程圖。 [0082] 第8圖是本發明之網路封包處理方法的一實施例流程圖
【主要元件符號說明】 [0083] 100 網路糸統 [0084] 110 路由裝置 [0085] 112 控制電路 [0086] 114 、116網路介面 [0087] 118 儲存媒體 [0088] 120 區域網路 [0089] 122 、124 、126終端裝置 [0090] 128 集線器 [0091] 130 其他網段 [0092] 210 處理器 [0093] 220 輸出/輸入介面 [0094] 400 連線記錄表 [0095] 410 、420 、 430 、 440 、 450 、 460 m [0096] 402 、404 、 406 列 099106321 表單編號A0101 第25頁/共33頁 0992011449-0