TWI413375B - 路由裝置及相關的控制電路 - Google Patents

路由裝置及相關的控制電路 Download PDF

Info

Publication number
TWI413375B
TWI413375B TW099106321A TW99106321A TWI413375B TW I413375 B TWI413375 B TW I413375B TW 099106321 A TW099106321 A TW 099106321A TW 99106321 A TW99106321 A TW 99106321A TW I413375 B TWI413375 B TW I413375B
Authority
TW
Taiwan
Prior art keywords
network
address
protocol address
network protocol
packet
Prior art date
Application number
TW099106321A
Other languages
English (en)
Other versions
TW201132056A (en
Inventor
Perry Wu
Original Assignee
Gemtek Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gemtek Technology Co Ltd filed Critical Gemtek Technology Co Ltd
Priority to TW099106321A priority Critical patent/TWI413375B/zh
Priority to US12/774,946 priority patent/US8483213B2/en
Publication of TW201132056A publication Critical patent/TW201132056A/zh
Application granted granted Critical
Publication of TWI413375B publication Critical patent/TWI413375B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

路由裝置及相關的控制電路
本發明係有關網路通訊裝置,尤指對網路位址解析攻擊有較高防禦能力的路由裝置及相關的控制電路。
網路位址解析協定(Address Resolution Protocol,ARP)資訊在乙太網路的通訊上扮演重要角色,但習知區域網路內之終端裝置或路由裝置的網路位址解析資訊,卻很容易被攻擊者或惡意程式利用所謂的ARP欺騙(ARP Spoofing)手段加以破壞。
由於路由裝置是負責處理區域網路與其他網段間之資料往來的關鍵設備,一旦路由裝置中的網路位址解析資訊因ARP攻擊而受到破壞,將會造成區域網路內的終端裝置無法與其他網段(例如網際網路)進行通訊的嚴重問題。
要避免路由裝置中的網路位址解析資訊受到ARP攻擊的破壞,習知的一種解決方法是網路管理者親自設定路由裝置中的每一筆網路位址解析資訊。然而,這種方法對許多網路環境而言並不實用。例如,對於動態分配網路協定位址的網路環境、終端裝置可經常移動位置的無線網路環境、或是終端裝置數量龐大或架構複雜的網路環境而言,要求網路管理者逐 一設定路由裝置中數量龐大且可能隨時變動的網路位址解析資訊,顯然是不切實際的方式。
有鑑於此,如何提升路由裝置對ARP攻擊的防禦能力,實係有待解決的問題。
本說明書提供了一種用於路由裝置之控制電路的實施例,其包含有:一輸出/輸入介面;以及一處理器,耦接於該輸出/輸入介面,當該處理器接收到一網路位址解析封包,且該網路位址解析封包所包含之一第一網段之一網路協定位址的網路位址解析資訊與該路由裝置中之記錄不同時,若該網路協定位址曾至少一次存取其他網段,且符合一預定條件,則該處理器不會更新該網路協定位址之網路位址解析資訊。
本說明書提供了一種用於路由裝置之控制電路的實施例,其包含有:一輸出/輸入介面;以及一處理器,耦接於該輸出/輸入介面,當一第一網段之一網路協定位址曾多次存取其他網段,且符合一預定條件時,該處理器會將該網路協定位址的網路位址解析資訊設成不可改變。
另一種路由裝置的實施例包含有:一控制電路,當接收到一第一網路封包時,若該網路封包的來源網路協定位址位於一第一網段、目的網路協定位址指向一第二網段、目的實體位址與該路由裝置之實體位址不同、且該來源網路協定位址符合一預定條件,則該處理器會產生目的網路協定位址與該第一網路封包之目的網路協定位址相同,且來源實體位址與該 路由裝置之實體位址相同之一第二網路封包;其中該預定條件係選自於由下列情況所組成之一群組:(a)離該來源網路協定位址先前存取其他網段的時間,小於一預定時間長度;(b)該來源網路協定位址存取其他網段的頻率達到一預定頻率;(c)該來源網路協定位址曾存取其他網段達一預定次數;及(d)該來源網路協定位址先前存取其他網段時使用的實體通訊埠,與收到該網路封包的實體通訊埠相同。
本發明的優點之一在於,可有效改善路由裝置對於偽造的網路位址解析封包的辨識能力,進而提升對於ARP攻擊的防禦力及/或警示能力。
本發明的另一優點在於,路由裝置可依據每一網路協定位址存取其他網段的情況,動態地決定是否允許變更個別網路協定位址的網路位址解析資訊,無需網路管理者的介入操作,故適用於各種網路環境中。
本發明的另一優點在於,路由裝置僅需分析一網路封包之來源網路協定位址存取其他網段的相關連線記錄,而無需耗費額外運算能力去讀取該網路封包的承載資料內容便能快速地自動判斷該網路封包是否有效,並決定後續的處理動作,可有效提升網路的資訊安全。
本發明的另一優點是,即便區域網路內的終端裝置中的網路位址解析資訊受到ARP攻擊的破壞,路由裝置仍可維持該終端裝置與網際網路或其他網段的通訊,大幅降低了ARP攻擊 對於網路通訊的威脅。
100‧‧‧網路系統
110‧‧‧路由裝置
112‧‧‧控制電路
114、116‧‧‧網路介面
118‧‧‧儲存媒體
120‧‧‧區域網路
122、124、126‧‧‧終端裝置
128‧‧‧集線器
130‧‧‧其他網段
210‧‧‧處理器
220‧‧‧輸出/輸入介面
400‧‧‧連線記錄表
410、420、430、440、450、460‧‧‧欄
402、404、406‧‧‧列
第1圖是本發明之網路系統之一實施例簡化後的示意圖。
第2圖是本發明之控制電路的一實施例功能方塊圖。
第3圖是本發明之網路位址解析資訊管理方法的第一實施例流程圖。
第4圖是本發明之特定網路協定位址的相關連線記錄之一實施例示意圖。
第5圖是特定網路協定位址以TCP傳輸方式存取其他網段的示意圖。
第6圖是特定網路協定位址以UDP傳輸方式存取其他網段的示意圖。
第7圖是本發明之網路位址解析資訊管理方法的第二實施例流程圖。
第8圖是本發明之網路封包處理方法的一實施例流程圖。
以下將配合相關圖式來說明本發明之實施例。在這些圖式中,相同的標號係表示相同或類似的元件或流程步驟。
在說明書及後續的申請專利範圍當中使用了某些詞彙來指稱特定的元件。所屬領域中具有通常知識者應可理解,製造商可能會用不同的名詞來稱呼同樣的元件。本說明書及後續的 申請專利範圍並不以名稱的差異來作為區分元件的方式,而是以元件在功能上的差異來作為區分的基準。在通篇說明書及後續的請求項當中所提及的「包含」係為一開放式的用語,故應解釋成「包含但不限定於…」。另外,「耦接」一詞在此係包含任何直接及間接的連接手段。因此,若文中描述一第一裝置耦接於一第二裝置,則代表該第一裝置可直接(包含透過電性連接或無線傳輸、光學傳輸等訊號連接方式)連接於該第二裝置,或透過其他裝置或連接手段間接地電性或訊號連接至該第二裝置。
第1圖所繪示為本發明一實施例之網路系統100簡化後的示意圖。在網路系統100中,路由裝置(又稱為通訊閘道)110是區域網路120與其他網段(例如網路網路)130之間的通訊橋樑。本實施例中的路由裝置110包含一控制電路112、用來與區域網路120進行通訊之一網路介面114、用來與其他網段130進行通訊之一網路介面116、以及一儲存媒體118。實作上,路由裝置110可以是專用的網路設備,也可以將具有封包轉遞能力的軟體或作業程式架設在一般電腦上來實現。
路由裝置110和區域網路120間,以及路由裝置110和其他網段130間的通訊,都可利用有線傳輸或無線傳輸方式來達成。因此,網路介面114和網路介面116可以是傳統的有線網路介面,也可以是無線通訊介面。儲存媒體118則是用來儲存路由裝置110運作時所需的路由資訊及網路位址解析資訊(Address Resolution Information)。儲存媒體118可以 是內建於路由裝置110中的儲存裝置、外接的儲存裝置、也可以是以上兩者的組合。
如第1圖所示,區域網路120中包含有多個終端裝置(圖中繪示終端裝置122、124和126為例)。這些終端裝置可以是手機、電腦、PDA、機上盒、遊戲機或任何其他具有網路存取功能的設備。實作上,區域網路120內的多個終端裝置可以透過一個或多個集線器(或交換器)128以有線或無線方式互聯,建構成較複雜或較大型的區域網路環境,並耦接於路由裝置110的網路介面114。
以下將搭配第2圖與第3圖來進一步說明本發明之路由裝置110的運作方式。
第2圖為本發明之控制電路112的一實施例功能方塊圖。在本實施例中,控制電路112包含一處理器210與一輸出/輸入介面220。輸出/輸入介面220耦接於路由裝置110之網路介面114、網路介面116、以及儲存媒體118,用來進行處理器210與網路介面114、116、以及儲存媒體118間的資料傳輸。
第3圖為本發明路由裝置110之網路位址解析資訊管理方法的一實施例流程圖300。
在步驟310中,當路由裝置110剛開始與區域網路120建立連線關係時,控制電路112的處理器210會透過區域網路120內個別終端裝置所發出的網路位址解析封包(例如ARP詢問封包或ARP答覆封包),取得個別終端裝置的實體位址(例如 MAC位址)和網路協定位址(例如IPv4位址或IPv6位址)的配對資料。以下假設路由裝置110的實體位址是MAC_110、網路協定位址是IP_110;終端裝置122的實體位址是MAC_122、網路協定位址是IP_122;終端裝置124的實體位址是MAC_124、網路協定位址是IP_124。終端裝置126的實體位址是MAC_126、網路協定位址是IP_126。一般而言,IP_122、IP_124以及IP_126屬於同一網段。
為方便說明起見,以下假設網路管理者親自為路由裝置110設定終端裝置122之網路位址解析資訊為IP_122與MAC_122的配對,而處理器210於步驟310中收到終端裝置124所傳來包含MAC_124與IP_124配對之一網路位址解析封包ARP_124以及終端裝置126所傳來包含MAC_126與IP_126配對之一網路位址解析封包ARP_126。
接著,處理器210會進行步驟320,將網路位址解析封包ARP_124與ARP_126個別包含的網路協定位址與實體位址的配對資料記錄於儲存媒體118中,以建立路由裝置110的初步網路位址解析資訊。
如前所述,攻擊者、入侵者或惡意程式很容易假造網路位址解析封包來攻擊路由裝置所儲存的網路位址解析資訊。習知的路由裝置由於難以判定網路位址解析封包的真偽,所以不能有效地抵擋ARP攻擊。
為了提升路由裝置110對ARP攻擊的防禦能力,在路由裝置 110的初步網路位址解析資訊建立之後,控制電路112的處理器210會進行步驟330,監視區域網路120內的個別網路協定位址存取其他網段(例如網際網路)的情況。
每當處理器210發現區域網路120內之一網路協定位址存取其他網段(例如與其他網段130成功建立網路連線)時,便會進行步驟340,將該網路協定位址的相關連線記錄儲存於儲存媒體118中,以作為判斷後續收到之網路位址解析封包有效性的依據。
例如,第4圖所繪示的連線記錄表400是儲存於儲存媒體118中之相關連線記錄之一實施例。在本實施例中,處理器210會將在步驟310中所收到的網路協定位址與實體位址的配對資料(例如IP_124與MAC_124的配對),分別記錄在連線記錄表400的欄410與欄420中。如第4圖所示,連線記錄表400每一列所儲存的資料為特定網路協定位址的相關連線記錄。舉例而言,列402是用來儲存網路協定位址IP_122(正常情況下應該是終端裝置122的網路協定位址)與其他網段間的相關連線記錄,而列404是用來儲存網路協定位址IP_124(正常情況下應該是終端裝置124的網路協定位址)與其他網段間的相關連線記錄。
對連線記錄表400的每一列而言,欄430係用來記錄特定網路協定位址存取其他網段(如果有的話)時,所使用之網路介面114上的實體通訊埠號碼。欄440係用來該特定網路協定位址存取其他網段(如果有的話)的時間點。欄450係用來記 錄該特定網路協定位址與其他網段(但並不限定要同一網段)建立連線(Session/Socket)的次數,例如與其他網段130成功建立網路連線的累計次數。
實作上,處理器210在判斷特定網路協定位址存取其他網段130的時間點時,可以有多種選擇,以下將以第5圖及第6圖為例來進一步說明。
第5圖是特定網路協定位址以TCP傳輸方式存取其他網段130的示意圖500。如第5圖所示,當特定網路協定位址要以TCP傳輸方式存取其他網段130中的某一目的裝置時,會先透過三方交握(Three-Way Handshaking)程序與該目的裝置建立連線(Session),接著才會進入資料傳輸階段。在一實施例中,處理器210會記錄接收到特定網路協定位址於三方交握程序中所發出之連線確認封包的時間點510,並以之作為特定網路協定位址存取其他網段130的時間點。
在另一實施例中,處理器210會記錄該特定網路協定位址與該目的裝置於資料傳輸階段中進行第N次資料傳輸的時間點(例如接收到特定網路協定位址所發出之第N個資料封包的時間點520,或是接收到該目的裝置所發出之第N個資料確認封包的時間點530),並以之作為特定網路協定位址存取其他網段130的時間點,其中N的數值可依設計的需要而調整。除此之外,處理器210也可改用該特定網路協定位址與該目的裝置確認結束資料傳輸的時間點,來作為特定網路協定位址存取其他網段130的時間點。
第6圖是特定網路協定位址以UDP傳輸方式存取其他網段130的示意圖600。由於UDP傳輸方式不是一種連線導向的傳輸機制,故特定網路協定位址要與其他網段130中的某一目的裝置建立連線(Socket)時,並不會先進行三方交握的程序,且資料的接收端收到資料封包後也不會回覆確認訊息。在此情況下,處理器210可記錄在特定網路協定位址發出資料封包後,第一次收到該目的裝置回傳之相對應資料封包的時間點610,並以之作為特定網路協定位址存取其他網段130的時間點。實作上,處理器210可於該目的裝置發出之資料封包中的來源埠(Source Port)與目的埠(Destination Port)的內容與特定網路協定位址發出的資料封包相同時,將該目的裝置發出的資料封包判斷成是與特定網路協定位址發出的資料封包相對應。
在其他實施例中,處理器210亦可用收到該特定網路協定位址所發出之第M個資料封包的時間點620,或是收到該目的裝置所發出之第P個相對應資料封包的時間點630,來作為特定網路協定位址存取其他網段130的時間點。
每次處理器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,代表他們的網路位址解析資訊,是經由路由裝置110所收到的網路位址解析封包所獲得,不是網路管理者親自設定的。
實作上,處理器210可持續性地進行步驟330與步驟340的流程,以更新連線記錄表400的內容。
另一方面,路由裝置110在後續運作的過程中,可能會收到其他的網路位址解析封包,但所包含之特定網路協定位址的網路位址解析資訊與儲存媒體118中之記錄不同的情況(步驟350)。例如,假設路由裝置110在步驟350中收到網路位址解析封包ARP_N,其傳送端網路協定位址為IP_124,而傳送端實體位址為MAC_N,亦即,網路位址解析封包ARP_N所包含的網路協定位址IP_124的網路位址解析資訊(IP_124與MAC_N的配對)與路由裝置110所記錄之IP_124與MAC_124的配對不同。遇到這種情況,處理器210會進行步驟360。
發明人發現在許多網路環境中的大多數使用者都有一種共通 的網路使用行為態樣,那就是會因為工作、學習、娛樂、從事社交活動或單純打發時間等各種原因,而頻繁地連線到網際網路或其他網段進行網頁或資料存取動作的傾向。因此,在步驟360中,處理器210會分析連線記錄表400中所儲存之網路協定位址IP_124的相關連線記錄是否符合與正常使用者的網路使用行為態樣相對應的預定條件。
在一實施例中,與正常使用者的網路使用行為態樣相對應的條件,是網路協定位址IP_124與其他網段130(例如網際網路)的連線頻率會達到一預定頻率,例如10分鐘1次、1個小時3次、或是3個小時2次之類的。預定頻率的高低亦可由網路管理者依據實際的網路應用環境來加以調整。因此,處理器210在步驟360中會分析網路協定位址IP_124與其他網段130(例如網際網路)的連線頻率是否達到該預定頻率。實作上,處理器210可於步驟340中為連線記錄表400增加一個記錄連線頻率計算結果的欄位,並於步驟360中直接判斷該連線頻率欄位的值是否達到或大於該預定頻率值。若是,處理器210會判定網路協定位址IP_124的使用者的網路使用行為態樣符合正常使用者的行為態樣,因此,會將所包含之網路位址解析資訊與儲存媒體118中之記錄不一致的網路位址解析封包ARP_N判斷成無效封包。
或者,處理器210亦可將接收到網路位址解析封包ARP_N當時的系統時間,減去連線記錄表400中對應於網路協定位址IP_124的欄440所記錄的存取時間點Tb,以求得收到網路位 址解析封包ARP_N的時間,離網路協定位址IP_124前一次存取其他網段130的時間點Tb有多久。計算所得的時間長度,其倒數便可以看成一種連線頻率的表達方式。例如,假設計算的結果是10分鐘,表示收到網路位址解析封包ARP_N的時間,距離網路協定位址IP_124上次存取其他網段的時間點Tb已經有10分鐘,處理器210也可以將其解讀成是網路協定位址IP_124最近的連線頻率是10分鐘1次。因此,處理器210亦可於步驟360中依據對應於網路協定位址IP_124的欄440所記錄的存取時間點Tb,判斷收到網路位址解析封包ARP_N的時間,離網路協定位址IP_124先前存取其他網段的時間是否小於一預定時間長度。若是,則代表網路協定位址IP_124的使用者的網路使用行為態樣符合正常使用者的行為態樣,因此,則處理器210會將網路位址解析封包ARP_N判斷成無效封包。
另外,在某些網路環境中,終端裝置與路由裝置110間的連接是透過固定的網路線來實現的,且個別終端裝置與路由裝置110之網路介面114上的實體通訊埠的連接關係是固定不變的。在此情況下,與正常使用者的網路使用行為態樣相對應的條件,是網路協定位址IP_124先前與其他網段建立連線、傳輸資料時使用的實體通訊埠,會與路由裝置110收到網路協定位址IP_124所發出之正常網路位址解析封包的實體通訊埠相同。因此,處理器210可於步驟360中判斷收到網路位址解析封包ARP_N的通訊埠,是否與網路協定位址IP_124先前 存取其他網段時使用的實體通訊埠Port_2相同。若不相同,則代表網路位址解析封包ARP_N可能是偽造的網路位址解析封包,因此,處理器210會將網路位址解析封包ARP_N判斷成無效封包。
在另一實施例中,與正常使用者的網路使用行為態樣相對應的條件,是網路協定位址IP_124與其他網段130(例如網際網路)建立連線次數會達一預定次數,例如5次、10次等。預定次數的多寡可由網路管理者依據實際的網路應用環境來加以調整。因此,處理器210於步驟360中會判斷對應於網路協定位址IP_124的欄450所記錄的建立連線次數Count_124是否達該預定次數。若Count_124的值未達該預定次數,則代表網路協定位址IP_124的使用者的網路使用行為態樣不符合正常使用者的行為態樣,故處理器210會將網路位址解析封包ARP_N判斷成無效封包。
另外,在網路管理者親自為路由裝置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判斷成無效封包。
實作上,亦可將處理器210設計成於步驟360進行以上所述的兩項或兩項以上的分析比對,以提升對網路位址解析封包有效性判斷的準確度。
前述實施例中的連線記錄表400,係用來儲存路由裝置110所知悉之每一網路協定位址與其他網段間的相關連線記錄,與路由裝置110運作所需的網路位址解析資訊(例如ARP表)功能並不相同,因此兩者可以分別記錄於儲存媒體118的不同區段中。實作上,處理器210可依據連線記錄表400的內容來產生路由裝置110運作所需的ARP表。
若處理器210於步驟360的分析結果是將所收到的網路位址解析封包判斷成無效封包,則處理器210不會更新儲存媒體118中所記錄之網路位址解析資訊(步驟370)。在一實施例中,處理器210此時還會進行步驟380,主動發出警示訊息通知網路管理者區域網路120內可能有ARP攻擊發生,讓網路管理者能儘早採取因應措施,以避免危害擴大。
反之,若處理器210於步驟360的分析結果是將所收到的網路位址解析封包判斷成有效封包,則會進行步驟390,依據所收到的網路位址解析封包更新儲存媒體118中所記錄之網路位址解析資訊,並一併更新連線記錄表400中的欄410與欄420的內容。
請參考第7圖,其所繪示為本發明路由裝置110之網路位址解析資訊管理方法的另一實施例流程圖700。流程圖700中的步驟310~340與前述流程圖300中的步驟310~340相同,故在此不再贅述。
在步驟710中,控制電路112的處理器210會分析連線記錄表400中所儲存之各網路協定位址的相關連線記錄是否符合與正常使用者的網路使用行為態樣相對應的預定條件。步驟710的內容與前述的步驟360很類似,但差異點在於兩者執行的時間點有所不同。在前述的流程圖300中,處理器210是於接收到之網路位址解析封包所包含的網路位址解析資訊與路由裝置110中的既有記錄不一致時,才進行步驟360。但在流程圖700中,處理器210則是會週期性地進行步驟710,而不論當時是否有收到任何網路位址解析封包。如前所述,處理器210可持續性地進行步驟330與340,以更新連線記錄表400的內容,所以本實施例中的處理器210會定期對連線記錄表400中的每一筆資料進行分析和檢視,以判斷各網路協定位址的相關連線記錄是否符合與正常使用者的網路使用行為態樣相對應的預定條件。
若處理器210於步驟710的分析中發現,某一特定網路協定位址的相關連線記錄符合與正常使用者的網路使用行為態樣相對應的預定條件,則處理器210會進行步驟720。
在步驟720中,處理器210會將儲存媒體118中所記錄之該特定網路協定位址的網路位址解析資訊設成不可改變(unchangeable)以避免受到ARP攻擊的破壞。例如,在某些作業系統中,處理器210可將該特定網路協定位址的網路位址解析資訊的類型設成靜態(Static),以使得該筆網路位址解析資訊不會被路由裝置110的其它程式修改。換言之,在特定網路協定位址的相關連線記錄能通過步驟710之有效性檢驗的期間內,任何ARP攻擊都無法破壞路由裝置110中關於該特定網路協定位址的網路位址解析資訊的既有記錄。
在一實施例中,若處理器210於步驟710的分析中發現某一特定網路協定位址的相關連線記錄,不符合與正常使用者的網路使用行為態樣相對應的預定條件,且該特定網路協定位址的網路位址解析資訊是設成不可改變的狀況,則處理器210會進行步驟730,將路由裝置110中關於該特定網路協定位址的網路位址解析資訊設成可改變。例如,在某些作業系統中,處理器210可將該特定網路協定位址的網路位址解析資訊的類型設成動態(Dynamic),以使得處理器210可依據後續收到的相關網路位址解析封包,來更新儲存媒體118中關於該特定網路協定位址的網路位址解析資訊的既有記錄。
實作上,流程圖300與流程圖700所揭示的兩種網路位址解析 資訊管理方法可以併行運用。例如,處理器210可以於接收到網路位址解析封包時進行步驟360,以判斷所收到之網路位址解析封包的有效性,另一方面又週期性地進行步驟710,以不斷更新儲存媒體118中的ARP表的設定。
由上述說明可知,本發明的優點之一,在於可有效改善路由裝置110對於偽造的網路位址解析封包的辨識能力,進而提升對於ARP攻擊的防禦力及警示能力。
本發明的另一優點,在於路由裝置可依據每一網路協定位址存取其他網段的情況,動態地決定是否允許變更個別網路協定位址的網路位址解析資訊,無需網路管理者的介入操作,故可適用於各種網路環境中。
請參考第8圖,其所繪示為本發明之網路封包處理方法的一實施例流程圖800。
當路由裝置110的網路介面114收到一網路封包(步驟810),控制電路112的處理器210會進行步驟820。
步驟820的內容與前述的步驟360很類似,但差異點在於兩者執行的時間點有所不同。在前述的流程圖300中,處理器210是於接收到之網路位址解析封包所包含的網路位址解析資訊與路由裝置110中的既有記錄不一致時,才進行步驟360。但在流程圖800中,處理器210則是於接收到一網路封包時進行步驟820。
假設路由裝置110於步驟810中收到的網路封包,是來源網路 協定位址為IP_126之網路封包A,則處理器210在步驟820中會分析連線記錄表400中所儲存之網路協定位址IP_126的相關連線記錄是否符合與正常使用者的網路使用行為態樣相對應的預定條件,以作為判斷網路封包A是否為有效網路封包的依據。
若處理器210於步驟820的分析中發現,網路封包A的來源網路協定位址IP_126的相關連線記錄不符合與正常使用者的網路使用行為態樣相對應的預定條件,則處理器210會進行步驟830,將網路封包A判斷成無效網路封包,並加以丟棄。
若網路封包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的目的實體位址欄位的值,是否為路由裝置110的實體位址MAC_110,處理器210都會進行步驟860。若處理器210發現網路封包A的目的實體位址欄位的值不是指向路由裝置110的實體位址MAC_110,則處理器210會推斷網路封包A的來源裝置(正常情況下應該是終端裝置126)受到了ARP攻擊,並可依控制電路112的預設規則決定是否要發出警訊通知網路管理者。
在步驟860中,處理器會將該網路封包A的目的實體位址欄位所填的位址更改成路由裝置110的實體位址MAC_110,以產生一中間網路封包A’。
在步驟870中,處理器210會在儲存媒體118所記錄的路由資訊中查找出與網路協定位址IP_WAN相對應的路由規則,以及該路由規則所對應的次傳送點(next hop)。
在步驟880中,處理器210會依據中間網路封包A’產生一待傳送網路封包B。實作上,處理器210可直接以中間網路封包A’的承載資料(在本實施例中係與網路封包A的承載資料相 同)作為待傳送網路封包B的承載資料,亦可對中間網路封包A’中的承載資料進行預定的處理,例如掃毒、攔截惡意程式、封包過濾、或其他應用層的處理等等,並以處理後得到的資料做為網路封包B的承載資料。此外,處理器210還會將網路封包B的目的網路協定位址設成與中間網路封包A’之目的網路協定位址IP_WAN(亦即網路封包A的目的網路協定位址)相同,並在網路封包B的來源實體位址欄位填入路由裝置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的另一項優點在於,其僅需分析一網路封包之來源網路協定位址存取其他網段的相關連線記錄,而無需耗費額外運算能力去讀取該網路封包的承載資料內容,便能快速地自動判斷該網路封包是否有效,並決定後續的處理動作,可有效提升網路的資訊安全。
路由裝置110的又一優點是,即便區域網路內的終端裝置中的網路位址解析資訊受到ARP攻擊的破壞,路由裝置110仍可維持該終端裝置與網際網路或其他網段的通訊,大幅降低了ARP攻擊對於網路通訊的威脅。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
第3圖為流程圖

Claims (8)

  1. 一種用於一路由裝置之控制電路,其包含有:一輸出及輸入介面;以及一處理器,耦接於該輸出及輸入介面,當該處理器接收到一網路位址解析封包,且該網路位址解析封包所包含之一第一網段之一網路協定位址的網路位址解析資訊與該路由裝置中之記錄不同時,若該網路協定位址曾至少一次存取其他網段,且符合一預定條件,則該處理器不會更新該網路協定位址之網路位址解析資訊;其中該預定條件係選自於由下列情況所組成之一群組:(a)離該網路協定位址先前存取其他網段的時間,小於一預定時間長度;(b)該網路協定位址存取其他網段的頻率達到一預定頻率;及(c)該網路協定位址先前存取其他網段時使用的實體通訊埠,與收到該網路位址解析封包的實體通訊埠相同。
  2. 如申請專利範圍第1項所述之控制電路,其中若該網路協定位址符合該預定條件,則該處理器還會發出一通知訊息,以指示有網路位址解析攻擊的情況發生。
  3. 如申請專利範圍第1項所述之控制電路,其中該其他網段係指網際網路。
  4. 如申請專利範圍第1項所述之控制電路,其中當該網路協定 位址符合該預定條件時,該處理器會將該網路協定位址的網路位址解析資訊設成不可改變。
  5. 一種用於路由裝置之控制電路,其包含有:一輸出及輸入介面;以及一處理器,耦接於該輸出及輸入介面,當一第一網段之一網路協定位址曾多次存取其他網段,且符合一預定條件時,該處理器會將該網路協定位址的網路位址解析資訊設成不可改變(unchangeable);其中該預定條件係選自於由下列情況所組成之一群組:(a)離該網路協定位址先前存取其他網段時間,小於一預定時間長度;(b)該網路協定位址存取其他網段的頻率達到一預定頻率;(c)該來源網路協定位址存取其他網段的次數達一預定次數;及(d)該網路協定位址先前存取其他網段時使用的實體通訊埠,與收到該網路位址解析封包的實體通訊埠相同。
  6. 如申請專利範圍第5項所述之控制電路,其中若該網路協定位址不符合該預定條件,該處理器會將該網路協定位址的網路位址解析資訊設成可改變。
  7. 如申請專利範圍第5項所述之控制電路,其中當該處理器接收到一第一網路封包時,若該第一網路封包的來源網路協定位址為該網路協定位址、目的網路協定位址指向一第二網段、且該網路協定位址符合該預定條件,則該處理器會產生目的網路協定位址與該第一網路封包之目的網路協定位址相同 ,且來源實體位址與該路由裝置之實體位址相同之一第二網路封包。
  8. 一種路由裝置,其包含有:一控制電路,當接收到一第一網路封包時,若該第一網路封包的來源網路協定位址位於一第一網段、目的網路協定位址指向一第二網段、目的實體位址與該路由裝置之實體位址不同、且該來源網路協定位址符合一預定條件,則該控制電路會產生目的網路協定位址與該第一網路封包之目的網路協定位址相同,且來源實體位址與該路由裝置之實體位址相同之一第二網路封包;其中該預定條件係選自於由下列情況所組成之一群組:(a)離該來源網路協定位址先前存取其他網段的時間,小於一預定時間長度;(b)該來源網路協定位址存取其他網段的頻率達到一預定頻率;(c)該來源網路協定位址曾存取其他網段達一預定次數;及(d)該來源網路協定位址先前存取其他網段時使用的實體通訊埠,與收到該第一網路封包的實體通訊埠相同。
TW099106321A 2010-03-04 2010-03-04 路由裝置及相關的控制電路 TWI413375B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW099106321A TWI413375B (zh) 2010-03-04 2010-03-04 路由裝置及相關的控制電路
US12/774,946 US8483213B2 (en) 2010-03-04 2010-05-06 Routing device and related control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW099106321A TWI413375B (zh) 2010-03-04 2010-03-04 路由裝置及相關的控制電路

Publications (2)

Publication Number Publication Date
TW201132056A TW201132056A (en) 2011-09-16
TWI413375B true TWI413375B (zh) 2013-10-21

Family

ID=44531307

Family Applications (1)

Application Number Title Priority Date Filing Date
TW099106321A TWI413375B (zh) 2010-03-04 2010-03-04 路由裝置及相關的控制電路

Country Status (2)

Country Link
US (1) US8483213B2 (zh)
TW (1) TWI413375B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050125692A1 (en) * 2003-12-04 2005-06-09 Cox Brian F. 802.1X authentication technique for shared media
US20060209818A1 (en) * 2005-03-18 2006-09-21 Purser Jimmy R Methods and devices for preventing ARP cache poisoning
CN101110821A (zh) * 2007-09-06 2008-01-23 华为技术有限公司 防止arp地址欺骗攻击的方法及装置
US20090307773A1 (en) * 2003-05-21 2009-12-10 Foundry Networks, Inc. System and method for arp anti-spoofing security

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6249780B1 (en) * 1998-08-06 2001-06-19 Yamaha Hatsudoki Kabushiki Kaisha Control system for controlling object using pseudo-emotions and pseudo-personality generated in the object
US7016352B1 (en) * 2001-03-23 2006-03-21 Advanced Micro Devices, Inc. Address modification within a switching device in a packet-switched network
US7234163B1 (en) * 2002-09-16 2007-06-19 Cisco Technology, Inc. Method and apparatus for preventing spoofing of network addresses
US20070297349A1 (en) * 2003-11-28 2007-12-27 Ofir Arkin Method and System for Collecting Information Relating to a Communication Network
US7464183B1 (en) * 2003-12-11 2008-12-09 Nvidia Corporation Apparatus, system, and method to prevent address resolution cache spoofing
US7567573B2 (en) * 2004-09-07 2009-07-28 F5 Networks, Inc. Method for automatic traffic interception
US20070153738A1 (en) * 2005-12-29 2007-07-05 Barker Charles R Jr Method for switching the use of an access point (AP) within a wireless communications network
US7616635B2 (en) * 2006-09-29 2009-11-10 Intel Corporation Address mapping for data packet routing
US20080101381A1 (en) * 2006-10-25 2008-05-01 Mediatek Inc. Address resolution protocol (arp) cache management methods and devices
JP4680866B2 (ja) * 2006-10-31 2011-05-11 株式会社日立製作所 ゲートウェイ負荷分散機能を備えたパケット転送装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090307773A1 (en) * 2003-05-21 2009-12-10 Foundry Networks, Inc. System and method for arp anti-spoofing security
US20050125692A1 (en) * 2003-12-04 2005-06-09 Cox Brian F. 802.1X authentication technique for shared media
US20060209818A1 (en) * 2005-03-18 2006-09-21 Purser Jimmy R Methods and devices for preventing ARP cache poisoning
CN101110821A (zh) * 2007-09-06 2008-01-23 华为技术有限公司 防止arp地址欺骗攻击的方法及装置

Also Published As

Publication number Publication date
US8483213B2 (en) 2013-07-09
US20110216777A1 (en) 2011-09-08
TW201132056A (en) 2011-09-16

Similar Documents

Publication Publication Date Title
US11057404B2 (en) Method and apparatus for defending against DNS attack, and storage medium
US9369434B2 (en) Whitelist-based network switch
CN109889547B (zh) 一种异常网络设备的检测方法及装置
JP5624973B2 (ja) フィルタリング装置
JP5050781B2 (ja) マルウエア検出装置、監視装置、マルウエア検出プログラム、およびマルウエア検出方法
CN111133427B (zh) 生成和分析网络配置文件数据
CN110519265A (zh) 一种防御攻击的方法及装置
CN105490995A (zh) 一种在nvo3网络中nve转发报文的方法和设备
KR101200906B1 (ko) 네트워크 기반 고성능 유해사이트 차단 시스템 및 방법
Song et al. Novel duplicate address detection with hash function
WO2021135382A1 (zh) 一种网络安全防护方法及防护设备
WO2016008212A1 (zh) 一种终端及检测终端数据交互的安全性的方法、存储介质
KR101494329B1 (ko) 악성 프로세스 검출을 위한 시스템 및 방법
CN101895522A (zh) 主机标识标签获取方法及系统
US20110216770A1 (en) Method and apparatus for routing network packets and related packet processing circuit
TWI413375B (zh) 路由裝置及相關的控制電路
CN112839049B (zh) Web应用防火墙防护方法、装置、存储介质及电子设备
KR102582837B1 (ko) 파밍 dns 분석 방법 및 컴퓨팅 디바이스
CN111866005A (zh) 基于区块链的arp欺骗攻击防御方法、系统及装置
JP2014150504A (ja) ネットワーク監視装置、ネットワーク監視方法、および、コンピュータ・プログラム
CN102196054B (zh) 路由装置及相关的控制电路
US20230269236A1 (en) Automatic proxy system, automatic proxy method and non-transitory computer readable medium
US11044197B2 (en) System and method for protecting resources using network devices
KR102425707B1 (ko) 부정 검출 장치 및 부정 검출 방법
KR102640946B1 (ko) Arp 스푸핑 탐지 시스템 및 방법

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees