對Sniffer、黑客以及網(wǎng)絡(luò)管理的闡述
文章主要描述的是Sniffer、黑客以及網(wǎng)絡(luò)管理,史蒂夫·利維在《黑客電腦史》中指出的“黑客道德準則”(theHackerEthic)其中主要包括:通往電腦的路不止一條;所有的信息都應(yīng)當(dāng)是免費的;打破電腦集權(quán);在電腦上創(chuàng)造藝術(shù)和美;計算機將使生活更美好。
緒論:關(guān)于黑客
史蒂夫·利維在其著名的《黑客電腦史》中指出的“黑客道德準則”(theHackerEthic)包括:通往電腦的路不止一條;所有的信息都應(yīng)當(dāng)是免費的;打破電腦集權(quán);在電腦上創(chuàng)造藝術(shù)和美;計算機將使生活更美好。
黑客文化包含了自由不羈的精神,也包含了反傳統(tǒng)、反權(quán)威、反集權(quán)的精神。
廣義的、公眾認為的“黑客”就是闖入計算機系統(tǒng)的人。這種觀念令有才能的、真正的“黑客”感到難過?!禡aximum Security》一書中對黑客和入侵者定義如下:
“黑客”指對于任何計算機操作系統(tǒng)的奧秘都有強烈興趣的人。“黑客”大都是程序員,他們具有操作系統(tǒng)和編程語言方面的高級知識,知道系統(tǒng)中的漏洞及其原因所在;他們不斷追求更深的知識,并公開他們的發(fā)現(xiàn),與其他人分享;并且從來沒有破壞數(shù)據(jù)的企圖。
“入侵者”是指懷著不良的企圖,闖入甚至破壞遠程機器系統(tǒng)完整性的人。“入侵者”利用獲得的非法訪問權(quán),破壞重要數(shù)據(jù),拒絕合法用戶服務(wù)請求,或為了自己的目的制造麻煩。“入侵者”很容易識別,因為他們的行為是惡意的。
這里黑客的概念源于50、60年代麻省理工學(xué)院的實驗室里的計算機迷們。他們精力充沛,熱衷于解決難題、獨立思考并且奉公守法。
技術(shù)本身是沒有錯的,錯誤產(chǎn)生于人。網(wǎng)絡(luò)安全性的分析可以被真正的黑客用于加強安全性、加強網(wǎng)絡(luò)管理的自由度,也可以被入侵者用于窺探他人隱私、任意篡改數(shù)據(jù)、進行網(wǎng)上詐騙活動。
這里,我們討論網(wǎng)絡(luò)嗅探器(sniffer)在廣義黑客領(lǐng)域的應(yīng)用和網(wǎng)絡(luò)管理中的應(yīng)用。
一. 嗅探器(Sniffer)攻擊原理
Sniffer既可以是硬件,也可以是軟件,它用來接收在網(wǎng)絡(luò)上傳輸?shù)男畔ⅰ>W(wǎng)絡(luò)可以是運行在各種協(xié)議之下的。包括Ethernet、TCP/IP、ZPX等等(也可以是其中幾種協(xié)議的聯(lián)合)。放置Sniffer的目的是使網(wǎng)絡(luò)接口(在這個例子中是以太網(wǎng)適配器)處于雜收模式(promiscuous mode),從而可從截獲網(wǎng)絡(luò)上的內(nèi)容。
嗅探器與一般的鍵盤捕獲程序(Key Capture)不同。鍵盤捕獲程序捕獲在終端上輸入的鍵值,而嗅探器則捕獲真實的網(wǎng)絡(luò)報文。嗅探器通過將其置身于網(wǎng)絡(luò)接口來達到這個目的——將以太網(wǎng)卡設(shè)置成雜收模式。
⒈關(guān)于以太網(wǎng)(Ethernet)
Ethernet是由Xerox的Palo Aito研究中心(有時也稱為PARC)發(fā)明的。下面簡介一下信息在網(wǎng)絡(luò)(這里為以太網(wǎng))上的傳輸形式。
數(shù)據(jù)在網(wǎng)絡(luò)上是以很小的稱為幀(Ftame)的單位傳輸?shù)膸珊脦撞糠纸M成,不同的部分執(zhí)行不同的功能。(例如,以太網(wǎng)的前12個字節(jié)存放的是源和目的的地址,這些位告訴網(wǎng)絡(luò):數(shù)據(jù)的來源和去處。以太網(wǎng)幀的其他部分存放實際的用戶數(shù)據(jù)、TCP/IP的報文頭或IPX報文頭等等)。
幀通過特定的稱為網(wǎng)絡(luò)驅(qū)動程序的軟件進行成型,然后通過網(wǎng)卡發(fā)送到網(wǎng)線上。通過網(wǎng)線到達它們的目的機器,在目的機器的一端執(zhí)行相反的過程。接收端機器的以太網(wǎng)卡捕獲到這些幀,并告訴操作系統(tǒng)幀的到達,然后對其進行存儲。就是在這個傳輸和接收的過程中,嗅探器會造成安全方面的問題。
每一個在LAN上的工作站都有其硬件地址。這些地址唯一地表示著網(wǎng)絡(luò)上的機器(這一點于Internet地址系統(tǒng)比較相似)。當(dāng)用戶發(fā)送一個報文時,這些報文就會發(fā)送到LAN上所有可用的機器。
在一般情況下,網(wǎng)絡(luò)上所有的機器都可以“聽”到通過的流量,但對不屬于自己的報文則不予響應(yīng)(換句話說,工作站A不會捕獲屬于工作站B的數(shù)據(jù),而是簡單的忽略這些數(shù)據(jù))。如果某在工作站的網(wǎng)絡(luò)接口處于雜收模式,那么它就可以捕獲網(wǎng)絡(luò)上所有的報文和幀。
Sniffer就是這樣的硬件或軟件,能夠“聽”到(而不是忽略)在網(wǎng)上傳輸?shù)乃械男畔?。在這種意義上,每一個機器,每一個路由器都是一個Sniffer(或者至少可以說它們可以成為一個Sniffer)。這些信息就被儲存在介質(zhì)上,以備日后檢查時用。
Sniffer可以是(而且通常是)軟件和硬件的聯(lián)合體,軟件可以是普通的網(wǎng)絡(luò)分析器帶有比較強的debug功能,或者就是一個真正的Sniffer。
Sniffer必須是位于準備進行Sniffer工作的網(wǎng)絡(luò)上的,它可以放在網(wǎng)絡(luò)管理段中的任何地方。
Sniffer成為一種很大的危險,因為:
它們可以捕獲口令;
它們可以截獲機密的或?qū)S械男畔?
它們可以被用來攻擊相鄰的網(wǎng)絡(luò)或者用來獲取更高級別的訪問權(quán)限。#p#
二. 用Sniffer獲取信息
下面是利用Windows平臺上的sniffer工具EtherPeek進行的信報監(jiān)聽結(jié)果。讓我們分析一下這些數(shù)據(jù)(為避免不必要的麻煩,其中數(shù)據(jù)經(jīng)修改完成)。
1. 匿名Ftp信報分析
Flags: 0x00
Status: 0x00
Packet Length:74
Timestamp: 19:11:21.743000 01/18/2000
Raw Packet Data(原始信報數(shù)據(jù))
.惈纇.RT*.洲..E. 00 90 ab c0 68 00 52 54 ab 15 d6 de 08 00 45 00 [0-15]
.8..@. .)R(1.. 00 38 10 09 40 00 20 06 29 52 a2 69 28 31 ca c8 [16-31]
*..*...f錨..*?P. 8c 02 04 b3 00 15 00 66 c3 aa 00 04 f0 3f 50 18 [32-47]
".+T..USER anony 22 0a 2b 54 00 00 55 53 45 52 20 61 6e 6f 6e 79 [48-63]
mous...... 6d 6f 75 73 0d 0a 00 00 00 00
也許這還不夠清清楚楚明明白白,下面是該程序作的解碼:
Flags: 0x00
Status: 0x00
Packet Length:74
Timestamp: 19:11:21.743000 01/18/2000
Ethernet Header
Destination: 00:90:ab:c0:68:00 [0-5]
Source: 52:54:ab:15:d6:de [6-11]
Protocol Type:08-00 IP [12-13]
IP Header - Internet Protocol Datagram
Version: 4 [14 Mask 0xf0]
Header Length: 5 [14 Mask 0xf]
Precedence: 0 [15 Mask 0xe0]
Type of Service: %000 [15 Mask 0x1c]
Unused: %00 [15 Mask 0x3]
Total Length: 56 [16-17]
Identifier: 4105 [18-19]
Fragmentation Flags: %010 Do Not Fragment [20 Mask 0xe0]
Fragment Offset: 0 [20-22 Mask 0x1fffff]
Time To Live: 32
IP Type: 0x06 TCP [23]
Header Checksum: 0x2952 [24-25]
Source IP Address: 162.105.40.49 [26-29]
Dest. IP Address: 202.200.140.2 [30-33]
No Internet Datagram Options
TCP - Transport Control Protocol
Source Port: 1203 [34-35]
Destination Port: 21 FTP Control - File Transfer Protocol [36-37]
Sequence Number: 6734762 [38-41]
Ack Number: 323647 [42-45]
Offset: 5 [46 Mask 0xf0]
Reserved: %000000 [46 Mask 0xfc0]
Code: %011000 [47 Mask 0x3f]
Ack is valid
Push Request
Window: 8714 [48-49]
Checksum: 0x2b54 [50-51]
Urgent Pointer: 0 [52-53]
No TCP Options
FTP Control - File Transfer Protocol
FTP Command: 0x55534552 (USER) User Name [54-57]
User Name:
20 [58]
Extra bytes (Padding):
anonymous.. 61 6e 6f 6e 79 6d 6f 75 73 0d 0a [59-69]
Frame Check Sequence: 0x00000000
哦,這是在傳輸用戶名。用戶名Name為anonymous。
下面還有源地址、目的地址相同的信報。
Flags: 0x00
Status: 0x00
Packet Length:71
Timestamp: 19:11:32.149000 01/18/2000
Raw Packet Data
.惈纇.RT*.洲..E. 00 90 ab c0 68 00 52 54 ab 15 d6 de 08 00 45 00 [0-15]
.5..@. .'U(1.. 00 35 12 09 40 00 20 06 27 55 a2 69 28 31 ca c8 [16-31]
*..*...f煤..*.P. 8c 02 04 b3 00 15 00 66 c3 ba 00 04 f0 87 50 18 [32-47]
!聕...pass guest 21 c2 7c 00 00 00 70 61 73 73 20 67 75 65 73 74 [48-63]
@...... 40 0d 0a 00 00 00 00
這是作什么呢?
Flags: 0x00
Status: 0x00
Packet Length:71
Timestamp: 19:11:32.149000 01/18/2000
Ethernet Header
Destination: 00:90:ab:c0:68:00 [0-5]
Source: 52:54:ab:15:d6:de [6-11]
Protocol Type:08-00 IP [12-13]
IP Header - Internet Protocol Datagram
Version: 4 [14 Mask 0xf0]
Header Length: 5 [14 Mask 0xf]
Precedence: 0 [15 Mask 0xe0]
Type of Service: %000 [15 Mask 0x1c]
Unused: %00 [15 Mask 0x3]
Total Length: 53 [16-17]
Identifier: 4617 [18-19]
Fragmentation Flags: %010 Do Not Fragment [20 Mask 0xe0]
Fragment Offset: 0 [20-22 Mask 0x1fffff]
Time To Live: 32
IP Type: 0x06 TCP [23]
Header Checksum: 0x2755 [24-25]
Source IP Address: 162.105.40.49 [26-29]
Dest. IP Address: 202.200.140.2 [30-33]
No Internet Datagram Options
TCP - Transport Control Protocol
Source Port: 1203 [34-35]
Destination Port: 21 FTP Control - File Transfer Protocol [36-37]
Sequence Number: 6734778 [38-41]
Ack Number: 323719 [42-45]
Offset: 5 [46 Mask 0xf0]
Reserved: %000000 [46 Mask 0xfc0]
Code: %011000 [47 Mask 0x3f]
Ack is valid
Push Request
Window: 8642 [48-49]
Checksum: 0x7c00 [50-51]
Urgent Pointer: 0 [52-53]
No TCP Options
FTP Control - File Transfer Protocol
FTP Command: 0x70617373 (pass) Password [54-57]
Password:
20 [58]
Extra bytes (Padding):
guest@.. 67 75 65 73 74 40 0d 0a [59-66]
Frame Check Sequence: 0x00000000
哦,這里傳輸?shù)木褪敲艽a啊!
試想,如果這里不是匿名登錄,而是telnet、rlogin或pop3等的用戶名與密碼,那么……
2. Http信報分析
下面是捕獲的一個HTTP信報。
Flags: 0x00
Status: 0x00
Packet Length:844
Timestamp: 19:28:09.400000 01/18/2000
Raw Packet Data
.惈纇.RT*.洲..E. 00 90 ab c0 68 00 52 54 ab 15 d6 de 08 00 45 00 [0-15]
.:..@. ._堍i(1.. 03 3a f1 0a 40 00 20 06 5f dc a2 69 28 31 a7 d8 [16-31]
.d.*.P.v?..].P. 94 64 04 df 00 50 00 76 80 5a 99 0c 5d 15 50 18 [32-47]
"87...POST /js/V 22 38 37 a7 00 00 50 4f 53 54 20 2f 6a 73 2f 56 [48-63]
erifyLogin HTTP/ 65 72 69 66 79 4c 6f 67 69 6e 20 48 54 54 50 2f [64-79]
1.1..Accept: ima 31 2e 31 0d 0a 41 63 63 65 70 74 3a 20 69 6d 61 [80-95]
ge/gif, image/x- 67 65 2f 67 69 66 2c 20 69 6d 61 67 65 2f 78 2d [96-111]
xbitmap, image/j 78 62 69 74 6d 61 70 2c 20 69 6d 61 67 65 2f 6a [112-127]
peg, image/pjpeg 70 65 67 2c 20 69 6d 61 67 65 2f 70 6a 70 65 67 [128-143]
, application/ms 2c 20 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6d 73 [144-159]
word, applicatio 77 6f 72 64 2c 20 61 70 70 6c 69 63 61 74 69 6f [160-175]
n/vnd.ms-powerpo 6e 2f 76 6e 64 2e 6d 73 2d 70 6f 77 65 72 70 6f [176-191]
int, application 69 6e 74 2c 20 61 70 70 6c 69 63 61 74 69 6f 6e [192-207]
/vnd.ms-excel, * 2f 76 6e 64 2e 6d 73 2d 65 78 63 65 6c 2c 20 2a [208-223]
/*..Referer: htt 2f 2a 0d 0a 52 65 66 65 72 65 72 3a 20 68 74 74 [224-239]
p://www.renren.c 70 3a 2f 2f 77 77 77 2e 72 65 6e 72 65 6e 2e 63 [240-255]
以上的相關(guān)內(nèi)容就是對Sniffer、黑客和網(wǎng)絡(luò)管理的介紹,望你能有所收獲。
【編輯推薦】