萬盛學電腦網

 萬盛學電腦網 >> 病毒防治 >> 簡單4招教你輕松追蹤到黑客老巢

簡單4招教你輕松追蹤到黑客老巢

  網絡安全是一個綜合的、復雜的工程,任何網絡安全措施都不能保證萬無一失。因此,對於一些重要的部門,一旦網絡遭到攻擊,如何追蹤網絡攻擊,追查到攻擊者並將其繩之以法,是十分必要的。

  追蹤網絡攻擊就是找到事件發生的源頭。它有兩個方面意義:一是指發現IP地址、Mac地址或是認證的主機名;二是指確定攻擊者的身份。網絡攻擊者在實施攻擊之時或之後,必然會留下一些蛛絲馬跡,如登錄的紀錄,文件權限的改變等虛擬證據,如何正確處理虛擬證據是追蹤網絡攻擊的最大挑戰。

  在追蹤網絡攻擊中另一需要考慮的問題是:IP地址是一個虛擬地址而不是一個物理地址,IP地址很容易被偽造,大部分網絡攻擊者采用IP地址欺騙技術。這樣追蹤到的攻擊源是不正確的。使得以IP地址為基礎去發現攻擊者變得更加困難。因此,必須采用一些方法,識破攻擊者的欺騙,找到攻擊源的真正IP地址。

  一、netstat命令——實時察看文擊者

  使用netstat命令可以獲得所有聯接被測主機的網絡用戶的IP地址。Windows系列、Unix系列、Linux等常用網絡操作系統都可以使用“netstat命令。

  使用“netstat命令的缺點是只能顯示當前的連接,如果使用“netstat命令時攻擊者沒有聯接,則無法發現攻擊者的蹤跡。為此,可以使用Scheduler建立一個日程安排,安排系統每隔一定的時間使用一次“netstat命令,並使用netstat〉〉textfile格式把每次檢查時得到的數據寫入一個文本文件中,以便需要追蹤網絡攻擊時使用。

  二、日志數據——最詳細的攻擊記錄

  系統的日志數據提供了詳細的用戶登錄信息。在追蹤網絡攻擊時,這些數據是最直接的、有效的證據。但是有些系統的日志數據不完善,網絡攻擊者也常會把自己的活動從系統日志中刪除。因此,需要采取補救措施,以保證日志數據的完整性。

  Unix和Linux的日志

  Unix和Linux的日志文件較詳細的記錄了用戶的各種活動,如登錄的ID的用戶名、用戶IP地址、端口號、登錄和退出時間、每個ID最近一次登錄時間、登錄的終端、執行的命令,用戶ID的賬號信息等。通過這些信息可以提供ttyname(終端號)和源地址,是追蹤網絡攻擊的最重要的數據。

  大部分網絡攻擊者會把自己的活動記錄從日記中刪去,而且UOP和基於X Windows的活動往往不被記錄,給追蹤者帶來困難。為了解決這個問題,可以在系統中運行wrapper工具,這個工具記錄用戶的服務請求和所有的活動,且不易被網絡攻擊者發覺,可以有效的防止網絡攻擊者消除其活動紀錄。

  Windows NT和Windows 2000的日志

  Windows NT和Windows 2000有系統日志、安全日志和應用程序日志等三個日志,而與安全相關的數據包含在安全日志中。安全日志記錄了登錄用戶的相關信息。安全日志中的數據是由配置所決定的。因此,應該根據安全需要合理進行配置,以便獲得保證系統安全所必需的數據。

  但是,Windows NT和Windows 2000的安全日志存在重大缺陷,它不記錄事件的源,不可能根據安全日志中的數據追蹤攻擊者的源地址。為了解決這個問題,可以安裝一個第三方的能夠完整記錄審計數據的工具。

  防火牆日志

  作為網絡系統中的“堡壘主機,防火牆被網絡攻擊者攻陷的可能性要小得多。因此,相對而言防火牆日志數據不太容易被修改,它的日志數據提供最理想的攻擊源的源地址信息。

  但是,防火牆也不是不可能被攻破的,它的日志也可能被刪除和修改。攻擊者也可向防火牆發動拒絕服務攻擊,使防火牆癱瘓或至少降低其速度使其難以對事件做出及時響應,從而破壞防火牆日志的完整性。因此,在使用防火牆日志之前,應該運行專用工具檢查防火牆日志的完整性,以防得到不完整的數據,贻誤追蹤時機。

三、原始數據包——比較可靠的分析方法

  由於系統主機都有被攻陷的可能,因此利用系統日志獲取攻擊者的信息有時就不可靠了。所以,捕獲原始數據包並對其數據進行分析,是確定攻擊源的另一個重要的、比較可靠的方法。

  包頭數據分析

  表1是一個原始數據包的IP包頭數據。表中的第一行是最有用的數字。第一行的最後8位代表源地址。本例中的地址是0xd2、0×1d、0×84、0×96,對應的IP地址是210。45。132。150。通過分析原始數據包的包頭數據,可以獲得較為可靠的網絡攻擊者的IP地址,因為這些數據不會被刪除或修改。但是,這種方法也不是完美無缺的,如果攻擊者對其數據包進行加密,對收集到的數據包的分析就沒有什麼用處了。

  表1 一個IP包頭數據

  0×0000 45c0 c823 0000 d306 6002 2c06 d21d 8496

  0×0010 22ab b365 c234 0000 0000 4066 dd1d 8818

  0×0020 7034 ecf8 0000 5b88 7708 b901 4a88 de34

  0×0030 9812 a5c6 0011 8386 9618 0000 a123 6907

  0×0040 55c5 0023 3401 0000 5505 b1c5 0000 0000

  0×0050 0000 0000 0000 0000 0000

  捕獲數據包

  在一個交換網絡環境下捕獲數據包比較困難,這主要是因為集線器和交換機在數據交換中本質的不同。集線器采用的是廣播式傳輸,它不支持連接,而是把包發送到除源端口外的所有端口,與集線器相連的所有機器都可以捕獲到通過它的數據包。而交換機支持端到端的連接,當一個數據包到達時交換機為它建立一個暫時的連接,數據包通過這個連接傳到目的端口。所以,在交換環境下抓包不是一件容易的事。為了獲得交換環境下的數據包,可以用下面方法解決:

  1. 把交換機的一個“spanning port(生成端口)配置成象一個集線器一樣,通過這個端口的數據包不再與目的主機建立連接,而是廣播式地發送給與此端口相連的所有機器。設置一個包捕獲主機,便可以捕獲到通過“spaning port的數據包。但是,在同一時刻,交換機只能由一個端口被設置成“spanning port,因此,不能同時捕獲多台主機的數據包。

  2. 在交換機之間,或路由器和交換機之間安裝一個集線器。通過集線器的數據包便可以被捕獲主機捕獲。

  在用捕獲數據包獲取攻擊者的源地址的方法中,有兩個問題需要注意:一是保證包捕獲主機由足夠的存儲空間,因為如果在捕獲數據包時網絡吞吐量很大的話,硬盤很快會被填滿;二是在分析數據包時,可編制一段小程序自動分析,手工分析這麼多的數據是不可能的。

  四、 搜索引擎——也許會有外的驚喜

  利用搜索引擎獲得網絡攻擊者的源地址,從理論上講沒有什麼根據,但是它往往會收到意想不到的效果,給追蹤工作帶來意外驚喜。黑客們在Internet上往往有他們自己的虛擬社區,他們在那兒討論網絡攻擊技術方法,同時炫耀自己的戰果。因此,在那裡經常會暴露他們攻擊源的信息甚至他們的身份。

  利用搜索引擎追蹤網絡攻擊者的IP地址就是使用一些好的搜索引擎(如搜狐的搜索引擎)搜索網頁,搜索關鍵詞是攻擊主機所在域名、IP地址或主機名,看是否有貼子是關於對上述關鍵詞所代表的機器進行攻擊的。雖然網絡攻擊者一般在發貼子時會使用偽造的源地址,但也有很多人在這時比較麻痺而使用了真實的源地址。因此,往往可以用這種方法意外地發現網絡攻擊者的蹤跡。

  由於不能保證網絡中貼子源地址的真實性,所以,不加分析的使用可能會牽連到無辜的用戶。然而,當與其方法結合起來使用時,使用搜索引擎還是非常有用的。

三、原始數據包——比較可靠的分析方法

  由於系統主機都有被攻陷的可能,因此利用系統日志獲取攻擊者的信息有時就不可靠了。所以,捕獲原始數據包並對其數據進行分析,是確定攻擊源的另一個重要的、比較可靠的方法。

  包頭數據分析

  表1是一個原始數據包的IP包頭數據。表中的第一行是最有用的數字。第一行的最後8位代表源地址。本例中的地址是0xd2、0×1d、0×84、0×96,對應的IP地址是210。45。132。150。通過分析原始數據包的包頭數據,可以獲得較為可靠的網絡攻擊者的IP地址,因為這些數據不會被刪除或修改。但是,這種方法也不是完美無缺的,如果攻擊者對其數據包進行加密,對收集到的數據包的分析就沒有什麼用處了。

  表1 一個IP包頭數據

  0×0000 45c0 c823 0000 d306 6002 2c06 d21d 8496

  0×0010 22ab b365 c234 0000 0000 4066 dd1d 8818

  0×0020 7034 ecf8 0000 5b88 7708 b901 4a88 de34

  0×0030 9812 a5c6 0011 8386 9618 0000 a123 6907

  0×0040 55c5 0023 3401 0000 5505 b1c5 0000 0000

  0×0050 0000 0000 0000 0000 0000

  捕獲數據包

  在一個交換網絡環境下捕獲數據包比較困難,這主要是因為集線器和交換機在數據交換中本質的不同。集線器采用的是廣播式傳輸,它不支持連接,而是把包發送到除源端口外的所有端口,與集線器相連的所有機器都可以捕獲到通過它的數據包。而交換機支持端到端的連接,當一個數據包到達時交換機為它建立一個
copyright © 萬盛學電腦網 all rights reserved