專利名稱:多級路由模式下計算機上網(wǎng)身份識別的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種網(wǎng)絡(luò)信息安全方法。具體地說,涉及一種多級路由模式 下計算機上網(wǎng)身份識別的方法。
背景技術(shù):
隨著互聯(lián)網(wǎng)的發(fā)展,人們在互聯(lián)網(wǎng)上從事的行為越來越多,其中一些人 使用互聯(lián)網(wǎng)進行犯罪活動,網(wǎng)絡(luò)監(jiān)管形勢嚴峻。而互聯(lián)網(wǎng)技術(shù)本身的一些特 點又使網(wǎng)絡(luò)監(jiān)管的難度加大。舉例來說,在局域網(wǎng)中,經(jīng)常存在多級路由(在
本申請文件中,兩級以上路由就凈皮稱為多級路由),而多級路由的NAT (網(wǎng) 絡(luò)地址轉(zhuǎn)換)功能可以對外隱藏內(nèi)部管理的IP地址。這樣一來,在對局域 網(wǎng)網(wǎng)絡(luò)安全審計過程中,審計數(shù)據(jù)包來源時,只能定位到數(shù)據(jù)包是由哪臺路 由器發(fā)送出來的,卻無法得知是多級路由下的具體哪一臺計算機發(fā)送出去 的。
現(xiàn)在判斷多臺計算機共享上網(wǎng)的方法有三種。第一種是4企查同一 IP地 址的數(shù)據(jù)包中是否有不同MAC地址(物理地址),如果有則判定為存在共享 上網(wǎng)。該方法存在的問題是,由于硬件路由器具有MT功能將轉(zhuǎn)換MAC地址, 導致無法進行判斷。第二種是通過SNMP (簡單網(wǎng)絡(luò)管理協(xié)議)功能來發(fā)現(xiàn), 通過向路由器發(fā)送相應(yīng)的命令請求,路由器會返回其下面的計算機的MAC地 址。該方法存在的問題是,絕大多數(shù)的低端路由器不支持S賜P協(xié)議,因此 對于低端路由器無法用此方法判斷。第三種是通過監(jiān)測并發(fā)的端口數(shù),如果 并發(fā)的端口數(shù)多于設(shè)定數(shù)就判定為共享。該方法存在的問題是,判斷方法不 是很準確,存在誤判的情形,例如連續(xù)按幾次計算機鍵盤上的F5刷新鍵就 會被認為是共享。本文中,IP是英文Internet Protocol的縮寫,意為國際互耳關(guān)網(wǎng)結(jié)^ 通訊協(xié)定。ID是英文IDentity的縮寫,意為身份標識號碼,在本申請 文件中為區(qū)分不同終端計算才幾的標識號碼。NDIS是英文Network Driver Interface Specif ication的縮寫,意為網(wǎng)紹 驅(qū)動4妄口頭見范。NDIS的主 要目的就是為網(wǎng)絡(luò)接口卡制定出標準的應(yīng)用程序編程接口 (API)。
發(fā)明內(nèi)容
為此,本發(fā)明要解決現(xiàn)有技術(shù)不能監(jiān)控多級路由器下的計算機上網(wǎng)行 為、不能識別多級路由器下的計算機上網(wǎng)身份的技術(shù)問題,提出一種多級路 由模式下計算機上網(wǎng)身份識別的方法。
為解決上述技術(shù)問題,本發(fā)明的一種多級路由模式下計算機上網(wǎng)身份識 別的方法,包括以下步驟
① 對多級路由模式下的計算機安裝監(jiān)測模塊,所述監(jiān)測模塊用于截獲所 在計算機向外發(fā)出的所有上行數(shù)據(jù)包,并對所述上行數(shù)據(jù)包的IP協(xié)議頭進行 修改,所述修改是將一個獨一無二的ID附加到IP協(xié)議頭的附加字段中,形 成附帶所述ID的上行數(shù)據(jù)包;
② 所述監(jiān)測模塊將所在計算機的MAC信息和所述ID發(fā)送給與一級路由器 相連的監(jiān)控主機;
③ 所述監(jiān)控主機以旁路監(jiān)聽或網(wǎng)關(guān)模式攔截所述一級路由器向外發(fā)送的 所有所述附帶所述ID的上行數(shù)據(jù)包,并對所述附帶所述ID的上行數(shù)據(jù)包進 行解析,獲得所述ID;
④ 所述監(jiān)控主機才艮據(jù)所述ID與所述計算^/L的MAC信息的對應(yīng)關(guān)系,記錄 所述附帶所述ID的上行數(shù)據(jù)包的來源。
所述ID由所述監(jiān)測模塊產(chǎn)生。
在步驟③中所述旁路監(jiān)聽是通過在所述一級路由器上做鏡像端口 ,所述鏡像端口用于復制所有的經(jīng)過所述一級路由器的數(shù)據(jù)包。
在步驟③中所述網(wǎng)關(guān)模式是通過所述監(jiān)控主機開啟網(wǎng)關(guān)功能替代所述一 級^^由器的網(wǎng)關(guān)功能。
所述監(jiān)測模塊中包含有NDIS驅(qū)動。
在步驟①之前還包括判斷計算機是否安裝有安裝監(jiān)測模塊,如果沒有安 裝則進行提示并阻斷該計算機的網(wǎng)絡(luò)連接。
本發(fā)明的上述技術(shù)方案相比現(xiàn)有技術(shù)具有以下優(yōu)點第一,本發(fā)明能夠 對存在多級路由的計算機網(wǎng)絡(luò)進行網(wǎng)絡(luò)安全審計,能夠精確定位數(shù)據(jù)包來源 于哪一臺計算機,從而實現(xiàn)審計結(jié)果與終端計算機關(guān)聯(lián)。第二,本發(fā)明的識 別精度高,不會存在誤判斷或者漏判斷。
為了使本發(fā)明的內(nèi)容更容易被清楚的理解,下面根據(jù)本發(fā)明的具體實施 例并結(jié)合附圖,對本發(fā)明作進一步詳細的說明,其中 圖l是本發(fā)明的網(wǎng)絡(luò)結(jié)構(gòu)示意圖; 圖2是本發(fā)明的流程圖。
圖中附圖標記表示為1-一級路由器,2-二級路由器,3-監(jiān)控主機,4-第一網(wǎng)絡(luò)交換機,5-終端計算機、6-第二網(wǎng)絡(luò)交換機。
具體實施例方式
如圖l所示,本發(fā)明應(yīng)用到具有二級路由的計算機網(wǎng)絡(luò)中,所述具有二 級路由的計算機網(wǎng)絡(luò)包括一級路由器1,分別與所述一級路由器1相連的監(jiān) 控主機3、 二級路由器2和網(wǎng)絡(luò)交換機4,所述二級路由器2還連接有終端 計算機5和第二網(wǎng)絡(luò)交換機6,所述第一網(wǎng)絡(luò)交換機1和所述第二網(wǎng)絡(luò)交換 機6分別連接有所述終端計算機5。所述具有二級路由的計算機網(wǎng)絡(luò)內(nèi)的所 有所述終端計算機5的所有數(shù)據(jù)包都要經(jīng)過所述一級路由器1,這樣所述終 端計算機5才能與Internet (因特網(wǎng))連接。如圖2所示,本發(fā)明的多級路由模式下計算機上網(wǎng)身份識別的方法具體 實現(xiàn)步驟如下所述監(jiān)控主機3判斷所述終端計算機5上是否安裝有監(jiān)測模 塊,方法是所述監(jiān)控主機3在所述一級路由器1處以旁路監(jiān)聽或者網(wǎng)關(guān)模式 攔截所有發(fā)送到Internet上的上行數(shù)據(jù)包,并對所述上行數(shù)據(jù)包進行解析, 獲得所述上行數(shù)據(jù)包的IP協(xié)議頭中的附加字段信息,如果所述附加字段不 包含內(nèi)容或者所含內(nèi)容不能為所述監(jiān)控主機3識別則認為所述終端計算機5 沒有安裝所述監(jiān)測模塊,所述監(jiān)控主機3會給該所述終端計算機5返回鏈接 提示用戶需要進行安裝監(jiān)測模塊,同時為了網(wǎng)絡(luò)安全審計的需要阻斷該所述 終端計算機5的網(wǎng)絡(luò)連接直到該所述終端計算機5安裝所述監(jiān)測模塊。所述 阻斷該所述終端計算機5的網(wǎng)絡(luò)連接是通過監(jiān)聽到的TCP連接信息組裝一個 偽造的帶有RST標志的TCP數(shù)據(jù)包并直接發(fā)送到鏈路層,該所述終端計算機 5收到所述偽造的帶有RST標志的TCP數(shù)據(jù)包后就會自動斷開TCP連接。如 果所述附加字段內(nèi)包含有內(nèi)容且能為所述監(jiān)控主機3識別則認為所述終端 計算機5安裝有所述監(jiān)測模塊。所述監(jiān)測模塊能夠產(chǎn)生一個能被所述監(jiān)控主 才幾3識別的獨一無二的ID,所述ID是GUID (全^t唯一標識符),是一個 32字節(jié)的字符串,例如"EF41A66B25E146B2964BE4F70534807F"。所述監(jiān) 測才莫塊生成所述ID的具體的方法是,所述監(jiān)測才莫塊調(diào)用windows的API函 數(shù)——"Create GUID"函數(shù)就會自動生成一個所述GUID。所述監(jiān)測沖莫塊內(nèi) 含有NDIS驅(qū)動,所有經(jīng)過所述終端計算機5上的本地網(wǎng)卡的數(shù)據(jù)包都會從 所述NDIS驅(qū)動流過,所述NDIS驅(qū)動的作用是截獲所在所述終端計算才幾5向 外發(fā)出的所有上行數(shù)據(jù)包,并對所述上行數(shù)據(jù)包的IP協(xié)議頭進行修改,所 述修改是將所述ID附加到所述IP協(xié)議頭的附加字段中,然后修改所述IP 協(xié)議頭的校驗碼,使被修改后的所述IP協(xié)議頭符合TCP/IP協(xié)議的規(guī)定,從 而形成附帶所述ID的上行數(shù)據(jù)包。所述監(jiān)測才莫塊調(diào)用windows提供的API 函數(shù)"SendARP"等,獲取所述終端計算機5的MAC地址信息,然后所述監(jiān) 測模塊立刻向所述監(jiān)控主機3報告所述終端計算機5的所述MAC地址信息和 所述ID的對應(yīng)情況,所述監(jiān)控主機3將該對應(yīng)情況與已有的記錄進行判斷, 看是否重復,不重復的情況下會記錄到所述監(jiān)控主機3的數(shù)據(jù)庫中便于查詢使用。所述附帶所述ID的上行數(shù)據(jù)包先后經(jīng)過所述二級路由器2和所述一 級; 各由器1,所述終端計算機5的IP地址信息和MAC信息,皮所述二級;洛由 器2的NAT功能給替換成所述二級路由器2的廣域網(wǎng)IP地址信息和MAC信 息。所述監(jiān)控主機3在所述一級路由器1處以旁路監(jiān)聽或者網(wǎng)關(guān)模式攔截所 有所述附帶所述ID的上行數(shù)據(jù)包并進行解析,所述監(jiān)控主機3根據(jù)提取的 所述ID以及所述MAC信息確定所述終端計算機5,并記錄下所述ID對應(yīng)的 所述終端計算才幾5的上網(wǎng)行為。
所述解析的過程是按照TCP/IP協(xié)議模型的規(guī)定,由以太網(wǎng)協(xié)議、IP協(xié) 議、TCP協(xié)議、HTTP協(xié)議由下到上, 一層一層的解析。具體過程為從捕獲 的數(shù)據(jù)包所在內(nèi)存地址截取14個字節(jié),這14個字節(jié)是以太網(wǎng)協(xié)議頭,其中 6個字節(jié)為發(fā)送方的MAC地址,6個字節(jié)為接收方的MAC地址,1個字節(jié)是 協(xié)議類型信息,根據(jù)所述協(xié)議類型信息判斷是否是IP協(xié)議,如果是IP協(xié)議 那么就繼續(xù)截取IP協(xié)議頭,然后獲取所述IP協(xié)議頭信息中的校驗碼,根據(jù) 所述校驗碼計算出附加段長度,如果計算結(jié)果為G就說明不存在所述附加 段,即數(shù)據(jù)包是一個無附加段信息的數(shù)據(jù)包,也就意味著所述終端計算機5 沒有安裝所述監(jiān)測模塊;如果計算結(jié)果不為G就說明存在有附加段,截取所 述附加段內(nèi)的32個字節(jié)即獲得所述ID。
所述旁路監(jiān)聽是指在所述一級路由器1上做一個鏡像端口 ,做所述鏡像 端口的目的是把所有流經(jīng)所述一級路由器1的上行數(shù)據(jù)包拷貝一份到所述 鏡像端口 ,所述監(jiān)控主機3連接到所述鏡像端口后就能收到處于所述一級路 由器1下的所有終端計算機5的數(shù)據(jù)包。所述網(wǎng)關(guān)模式是將所述一級路由器 l的網(wǎng)關(guān)功能關(guān)閉,將所述一級路由器l串聯(lián)到所述監(jiān)控主機3下面,所述 監(jiān)控主機3開啟網(wǎng)關(guān)功能,這樣所有所述終端計算機5的上行數(shù)據(jù)包必須流 經(jīng)所述監(jiān)控主機3才能發(fā)送到Internet上,這樣也能夠?qū)崿F(xiàn)對所述終端計 算機5的上行數(shù)據(jù)包的捕獲。
當然本發(fā)明的方法也可以應(yīng)用在具有三級路由的計算機網(wǎng)絡(luò)中,所述具 有三級路由的計算機網(wǎng)絡(luò)是指不僅包含有所述一級路由器1和所述二級路 由器2,而且與所述二級; 各由器2相連的還有三級if各由器,/人結(jié)構(gòu)層次上講所述三級3各由器位于所述二級路由器2的下面,所述二級路由器2位于所述
一級路由器1的下面。所述監(jiān)控主4幾3仍然是與所述一級i 各由器1相連,所 述監(jiān)測模塊仍然是安裝到各個所述終端計算機5。本發(fā)明的方法應(yīng)用在具有 三級路由的計算機網(wǎng)絡(luò)與應(yīng)用在具有二級路由的計算機網(wǎng)絡(luò)不同之處只是 在于網(wǎng)絡(luò)結(jié)構(gòu)不同,所述終端計算機5的上行數(shù)據(jù)包流經(jīng)的路由器的數(shù)量不 同,方法本身沒有變化,達到的效果是一樣,都能精確定位數(shù)據(jù)包來源于哪 一臺所述終端計算機5。同樣的道理,本發(fā)明的方法也可以應(yīng)用在具有四級 路由甚至更多路由的計算機網(wǎng)絡(luò)中實現(xiàn)計算機上網(wǎng)身份的識別。
本發(fā)明的方法可以用于大型網(wǎng)絡(luò)環(huán)境,如集團企業(yè)、大中型院校等。本 發(fā)明的多級路由模式下計算機上網(wǎng)身份識別的方法識別精度高,不會存在誤 判斷和漏判斷。
顯然,上述實施例僅僅是為清楚地說明所作的舉例,而并非對實施方式 的限定。對于所屬領(lǐng)域的普通技術(shù)人員來說,在上述說明的基礎(chǔ)上還可以做 出其它不同形式的變化或變動。這里無需也無法對所有的實施方式予以窮 舉。而由此所引伸出的顯而易見的變化或變動仍處于本發(fā)明創(chuàng)造的保護范圍 之中。
權(quán)利要求
1.一種多級路由模式下計算機上網(wǎng)身份識別的方法,其特征在于包括以下步驟①對多級路由模式下的計算機安裝監(jiān)測模塊,所述監(jiān)測模塊用于截獲所在計算機向外發(fā)出的所有上行數(shù)據(jù)包,并對所述上行數(shù)據(jù)包的IP協(xié)議頭進行修改,所述修改是將一個獨一無二的ID附加到IP協(xié)議頭的附加字段中,形成附帶所述ID的上行數(shù)據(jù)包;②所述監(jiān)測模塊將所在計算機的MAC信息和所述ID發(fā)送給與一級路由器相連的監(jiān)控主機;③所述監(jiān)控主機以旁路監(jiān)聽或網(wǎng)關(guān)模式攔截所述一級路由器向外發(fā)送的所有所述附帶所述ID的上行數(shù)據(jù)包,并對所述附帶所述ID的上行數(shù)據(jù)包進行解析,獲得所述ID;④所述監(jiān)控主機根據(jù)所述ID與所述計算機的MAC信息的對應(yīng)關(guān)系,記錄所述附帶所述ID的上行數(shù)據(jù)包的來源。
2. 根據(jù)權(quán)利要求1所述的多級路由模式下計算機上網(wǎng)身份識別的方法, 其特征在于所述ID由所述監(jiān)測模塊產(chǎn)生。
3. 根據(jù)權(quán)利要求1所述的多級路由模式下計算機上網(wǎng)身份識別的方法, 其特征在于在步驟③中所述旁路監(jiān)聽是通過在所述一級路由器上做鏡像端 口,所述鏡像端口用于復制所有的經(jīng)過所述一級路由器的數(shù)據(jù)包。
4. 根據(jù)權(quán)利要求1所述的多級路由模式下計算機上網(wǎng)身份識別的方法, 其特征在于在步驟③中所述網(wǎng)關(guān)模式是通過所述監(jiān)控主機開啟網(wǎng)關(guān)功能替 代所述一級路由器的網(wǎng)關(guān)功能。
5. 根據(jù)權(quán)利要求1至4任一所述的多級路由模式下計算機上網(wǎng)身份識 別的方法,其特征在于所述監(jiān)測模塊中包含有NDIS驅(qū)動。
6. 根據(jù)權(quán)利要求1至4任一所述的多級路由模式下計算機上網(wǎng)身份識 別的方法,其特征在于在步驟①之前還包括判斷計算機是否安裝有安裝監(jiān) 測模塊,如果沒有安裝則進行提示并阻斷該計算機的網(wǎng)絡(luò)連接。
全文摘要
一種多級路由模式下計算機上網(wǎng)身份識別的方法,解決了現(xiàn)有技術(shù)不能定位多級路由下計算機的數(shù)據(jù)包來源的問題。特別適用于具有多級路由的計算機網(wǎng)絡(luò)安全審計。本發(fā)明的方法識別精度高,不會存在誤判斷或者漏判斷。
文檔編號H04L9/36GK101582771SQ200910148738
公開日2009年11月18日 申請日期2009年7月2日 優(yōu)先權(quán)日2009年7月2日
發(fā)明者孫偉力, 師以賀, 李秀元 申請人:濟寧盛世光明軟件技術(shù)有限公司