- 矛與盾:黑客攻防與腳本編程
- 武新華 陳艷艷 王英英等編著
- 1538字
- 2018-12-31 21:34:49
第1章 黑客攻防知識
重點提示
♂ 黑客基礎知識
♂ 常見的網絡協議
♂ 創建安全測試環境
隨著互聯網對人們日常生活影響的深入,網絡的安全問題也引起了人們高度關注。而黑客則是網絡世界中很神秘的一類人,他們有時會義務去維護網絡的安全,有時卻又以網絡破壞者的形象出現。
1.1 黑客基礎知識
要成為一名合格的黑客,就必須對操作系統相關的知識有充分地了解,包括進程、端口、服務、文件、文件系統、常用的DOS命令和注冊表等。只有充分了解了這些知識,才可以提高攻擊的成功幾率。
1.1.1 進程、端口和服務
一般情況下,計算機中的進程、端口和服務都會給黑客可趁之機,所以在深入了解黑客常用的攻擊手段之前,有必要對他們使用的相關基礎知識有初步的了解。
1.進程
進程是一個正在執行的程序。運行一個程序,就啟動了一個進程。程序是靜態的,進程是動態的。進程可以分為系統進程和用戶進程兩種。凡是用于完成操作系統的各種功能的進程就是系統進程,它們就是處于運行狀態下的操作系統本身;用戶進程就是所有由用戶啟動的進程。進程是操作系統進行資源分配的單位。
在Windows系統中按“Ctrl+Alt+Delete”組合鍵,即可打開【任務管理器】窗口。切換到“進程”選項卡,即可看到本機中開啟的進程,如圖1-1所示。如果想設置進程顯示的內容,則選擇【查看】→【選擇列】菜單項,在【選擇列】對話框中勾選相應的復選框,如圖1-2所示。

圖1-1 查看本機中開啟的進程

圖1-2 【選擇列】對話框
2.端口
計算機“端口”是計算機與外界通信的出入口。其中硬件領域的端口又稱接口,如USB端口、串行端口等;而軟件領域的端口一般指網絡中面向連接服務和無連接服務的通信協議端口,包括一些數據結構和I/O(基本輸入/輸出)緩沖區。
在網絡技術中,端口有兩種含義:一是物理意義上的端口,如集線器、交換機、路由器等用于連接其他網絡設備的接口;二是邏輯意義上的端口,一般指TCP/IP協議中的端口,范圍為0~65535,如瀏覽網頁服務的80端口,用于FTP服務的21端口等。
對于使用Windows 2000以上版本的用戶,不需要安裝任何其他軟件,利用“TCP/IP篩選”功能就可以實現服務器端口的限制。具體設置的操作步驟如下:
步驟1 右擊“網上鄰居”圖標,在彈出的快捷菜單中選擇“屬性”選項,即可打開【網絡狀態】窗口。雙擊“本地連接”圖標,即可打開【本地連接 狀態】對話框,如圖1-3所示。

圖1-3 【本地連接 狀態】對話框
步驟2 單擊【屬性】按鈕,即可打開【本地連接 屬性】對話框,在“此連接使用下列項目”列表中選擇“Internet協議(TCP/IP)”選項,如圖1-4所示。

圖1-4 【本地連接 屬性】對話框
步驟3 單擊【屬性】按鈕,即可打開【Internet協議(TCP/IP)屬性】對話框,如圖1-5所示。單擊【高級】按鈕,即可打開【高級TCP/IP設置】對話框,如圖1-6所示。

圖1-5 【Internet協議(TCP/IP)屬性】對話框

圖1-6 【高級TCP/IP設置】對話框
步驟4 切換到“選項”選項卡,在“IP地址”列表中選擇“TCP/IP篩選”選項之后,單擊【屬性】按鈕,即可打開【TCP/IP篩選】對話框,如圖1-7所示。

圖1-7 【TCP/IP篩選】對話框
步驟5 勾選“啟用TCP/IP篩選(所有適配器)”復選框,并選擇左邊的“只允許”單選按鈕后,單擊【添加】按鈕,即可打開【添加篩選器】對話框,如圖1-8所示。

圖1-8 【添加篩選器】對話框
步驟6 在“TCP端口”文本框中輸入允許開啟的端口后,單擊【確定】按鈕,即可將只允許添加的端口開啟。如果發現某個常用的網絡工具不能起作用,只要知道它在主機中所需要調用的端口,再在“TCP /IP”中把此端口開啟。
3.服務
實際上,每項服務都有一個具體的文件名,服務對應的文件一般存儲在“C:\Windows\system32”中,其擴展名一般是.exe、.dll、.sys等。
在Windows XP系統中開啟相應服務的操作步驟如下:
步驟1 依次選擇【開始】→【設置】→【控制面板】菜單項,即可打開【控制面板】窗口。雙擊【管理工具】圖標,即可打開【管理工具】窗口,如圖1-9所示。

圖1-9 【管理工具】窗口
步驟2 單擊【服務】圖標,即可打開【服務】窗口,如圖1-10所示。在【運行】窗口中輸入“services.msc”命令,也可以打開【服務】窗口。

圖1-10 【服務】窗口
步驟3 在“服務”列表中可看到本機中所有的服務,右擊要開啟的“服務”,在彈出的快捷菜單中選擇“屬性”選項,即可打開該服務的【屬性】對話框,如圖1-11所示。

圖1-11 選中服務的【屬性】對話框
步驟4 在“啟動類型”下拉列表中選擇“自動”選項之后,單擊【應用】按鈕,即可激活【啟動】按鈕。單擊【啟動】按鈕后再單擊【確定】按鈕,即可啟用該服務對應的端口,如圖1-12所示。

圖1-12 啟動選中的服務
1.1.2 文件和文件系統概述
文件是存儲于外存儲器中具有名字的一組相關信息集合,在Windows系統中所有的程序和數據均以文件形式存入磁盤。文件是由文件名和圖標組成的,一種類型的文件具有相同的圖標,文件名不能超過255個字符(包括空格)。
文件名由四個部分組成:[<盤符>][<路徑>]<文件名>[<.擴展名>],其作用是惟一標識一個文件。文件名由1~8個字符組成,構成文件名的字符分為如下三類:
? 26個英文字母:a~z或A~Z。
? 10個阿拉伯數字:0~9。
? 一些專用字符:$、#、&、@、!、%、()、{}、-、-。
注意
文件名中不能使用“<”、“>”、“\”、“//”、“[“、”]”、“:”、“!”、“+”、“=”,以及小于20H的ASCII字符。另外,可根據需要自行命名文件,但不可與DOS命令文件同名。
操作系統中負責管理和存儲文件信息的軟件機構稱為文件管理系統,簡稱文件系統。文件系統由三部分組成:與文件管理有關的軟件、被管理的文件以及實施文件管理所需的數據結構。從系統角度來看,文件系統是對文件存儲器空間進行組織和分配,負責文件的存儲并對存入的文件進行保護和檢索的系統。
文件系統是操作系統用于明確磁盤或分區上的文件的方法和數據結構,即在磁盤上組織文件的方法。磁盤或分區和它所包括的文件系統的不同是很重要的。少數程序(包括最有理由的產生文件系統的程序)直接對磁盤或分區的原始扇區進行操作,這可能破壞一個存在的文件系統。一個分區或磁盤能作為文件系統使用前,需要初始化,并將記錄數據結構寫到磁盤上。這個過程就是建立文件系統。
1.1.3 DOS系統常用的命令
熟練掌握各種網絡命令是黑客的基本功,下面介紹幾個Windows系統自帶的網絡命令。只有熟悉使用這些命令,才可以為日后維護網絡提供便利。
1.cd命令
在【命令提示符】窗口中提示符顯示的目錄就是當前的目錄,如提示符顯示的是“C:\”,則表示當前目錄是C盤,其中“\”(反斜杠)就表示根目錄。
可以使用“cd”命令來更改命令提示符所在的目錄,具體的操作步驟如下。
步驟1 如果要更改當前目錄,則可以用“cd”命令,如輸入“cd c:\”命令,即可將提示符的目錄設置為C:\,如圖1-13所示。輸入“cd Windows”命令,即可將提示符所在目錄更改為C:\WINDOWS,如圖1-14所示。

圖1-13 將目錄更改到C盤中

圖1-14 將目錄更改到“C:\WINDOWS”文件
步驟2 在【命令提示符】窗口中可使用“cd..”命令來返回上一級目錄,此時輸入“cd..”命令,即可返回到C盤的根目錄中,如圖1-15所示。

圖1-15 返回到上一級目錄中
步驟3 如果要更換當前目錄到硬盤的其他分區,則可以直接輸入盤符。例如,要到D盤,就需要輸入“d:”命令,現在提示符就變成了D:\>,如圖1-16所示。

圖1-16 將目錄更改到D盤中
步驟4 如果想更換目錄到D盤的“Backup”文件夾中,則可以使用“cd backup”命令,如圖1-17所示。在【命令提示符】窗口中依次運行“cd..”命令和“c:”命令,即可返回到C盤根目錄中,如圖1-18所示。

圖1-17 將目錄更改到“D:\Backup”文件夾

圖1-18 返回到C盤根目錄中
2.dir命令
dir是一個用來查看磁盤中包含文件的命令,同時dir命令以寬格式按字母順序顯示每個目錄中匹配文件名的列表,而且每次滿屏時暫停。Dir命令的使用步驟如下:
步驟1 在【命令提示符】窗口中運行“dir c:\windows”命令,即可在【命令提示符】窗口中列出C:\windows下的所有目錄及文件,如圖1-19所示。但這種方法有明顯的缺點:當列表中的目錄及文件過多時就無法完全顯示,形如刷屏。

圖1-19 查看C:\windows下的所有目錄及文件
步驟2 為了完全顯示C:\windows下的所有目錄及文件,可以使用分頁文件的形式來實現。此時運行“dir c:\windows /p”命令,即可在列出一屏的目錄及文件后,提示“按任意鍵繼續...”,如圖1-20所示。按下任意鍵,即可查看下一屏文件,如圖1-21所示。

圖1-20 以分頁形式列出文件

圖1-21 按任意鍵查看下一屏文件
步驟3 在【命令提示符】窗口中輸入“dir c:\windows /a:h”命令,即可查看該文件夾中的隱藏文件,如圖1-22所示。參數“/a:文件屬性”,就能顯示出指定屬性的文件,其中隱藏文件的屬性為“h”,目錄為“d”,系統為“s”,只讀為“r”。

圖1-22 查看文件夾中的隱藏文件
步驟4 如果想按字母順序列出C:\windows下的所有目錄及文件,則可在【命令提示符】窗口中運行“dir c:\windows /o:n”命令,如圖1-23所示。其中“/o:排序方式”參數指定了dir命令顯示命令結果時的排序方式,排序方式設為“n”即代表按照文件名的字母順序排列。

圖1-23 按字母順序列出所有目錄及文件
步驟5 也可指定排序方式為按照文件擴展名的字母順序來找出特定擴展名文件。在【命令提示符】窗口中運行“dir c:\windows /o:e”命令,即可按照文件擴展名的字母順序來顯示其中包含的文件或文件夾,如圖1-24所示。

圖1-24 按照文件擴展名的字母順序列出
所有目錄及文件
3.ping命令
ping命令是Windows系統自帶的一個功能強大的網絡命令,用來檢查網絡是否通暢或者網絡連接速度。作為一個黑客來說,ping命令是第一個必須掌握的DOS命令。只有在安裝TCP/IP協議之后才能使用該命令。
可以使用ping命令來判斷計算機的操作系統類型,在【命令提示符】窗口中輸入“ping192.168.0.12”命令,其運行結果如圖1-25所示。由于不同的操作系統的主機設置的TTL值是不同的,所以可以根據其中TTL值來識別操作系統類型。在一般情況下,Windows XP\Windows 2003對應的TTL值是128;Linux對應的TTL值為64;UNIX對應的TTL值是255。

圖1-25 用ping命令判斷目標主機的操作系統類型
使用“ping 192.168.0.12 –t –l 128”命令,可以不斷向某臺主機發出大量的數據包,如圖1-26所示。當然只有一臺主機上運行該命令并不會產生嚴重后果,但是如果多臺計算機同時運行該命令,則會形成“洪水攻擊”。

圖1-26 使用ping命令向遠程主機發送數據
4.netstat命令
netstat是DOS命令,是一個監控TCP/IP網絡的非常有用的工具,它可以顯示路由表、實際的網絡連接以及每一個網絡接口設備的狀態信息。netstat用于顯示與IP、TCP、UDP和ICMP相關的統計數據,一般用于檢驗本機各端口的網絡連接情況。其使用步驟如下:
步驟1 在【命令提示符】窗口中輸入“netstat –n”或“netstat”命令,即可查看服務器活動的TCP/IP連接,如圖1-27所示。

圖1-27 查看服務器活動的TCP/IP連接
步驟2 在【命令提示符】窗口中輸入“netstat –r”命令,即可查看本機路由信息內容,如圖1-28所示。

圖1-28 查看本機路由信息
步驟3 在【命令提示符】窗口中輸入“netstat –a”命令,即可查看本機所有活動的TCP連接以及計算機偵聽的TCP和UDP端口,如圖1-29所示。

圖1-29 顯示本機所有活動的TCP連接
步驟4 一般用netstat -an命令來顯示本機所有連接的端口及其狀態,如圖1-30所示。

圖1-30 本機所有連接的端口以及其狀態
5.ipconfig命令
ipconfig命令是網絡管理員使用最頻繁的命令,通常使用它顯示計算機中網絡適配器的IP地址、子網掩碼及默認網關等信息。
如果想要查看計算機的IP地址信息,則在【命令提示符】窗口中運行“ipconfig”命令,如圖1-31所示。若想查看所有適配器的完整TCP/IP配置信息,則在【命令提示符】窗口中運行“ipconfig/all”命令,在其中可以看到包括所有適配器的IP地址、子網掩碼和默認網關,還包括主機的相關配置信息,如主機名、DNS服務器、結點類型、網絡適配器的物理地址等信息,如圖1-32所示。

圖1-31 查看本地連接信息

圖1-32 查看所有適配器的完整TCP/IP配置信息
6.tracert命令
該命令的作用是顯示數據包到達目標計算機所經過的路徑,并顯示到達每個結點的時間。該命令適用于大型網絡的測試。其命令格式:tracert [-d] [-h MaximumHops] [-j Hostlist] [-w Timeout] [TargetName],其中各個參數的含義如下:
? -d防止解析目標主機的名字,可以加速顯示tracert命令結果。
? -h MaximumHops指定搜索到目標地址的最大跳躍數,默認值為30個跳躍點。
? -j Hostlist按照主機列表中的地址釋放源路由。
? -w Timeout指定超時時間間隔,默認單位為毫秒。
? TargetName指定目標計算機。
如果想查看www.google.com的路由與局域網絡連接情況,則在【命令提示符】窗口中輸入“tracert www.google.com”命令,其顯示結果如圖1-33所示。

圖1-33 查看google的路由與局域網絡連接情況
7.nslookup命令
nslookup用于檢測網絡中DNS服務器是否能正確實現域名。一般情況下,只要用戶設置好域名服務器,就可以使用這個命令查看不同主機的IP地址對應的域名。但該命令只能在安裝TCP/IP的網絡環境中使用。其命令格式:nslookup [IP地址或域名]。
要查看www.sina.com的IP地址,則在【命令提示符】窗口中輸入“nslookup www.sina.com”命令,其顯示效果如圖1-34所示。

圖1-34 查看新浪對應的域名
8.at命令
at是Windows 2000/WindowsXP中增加的命令行“任務計劃管理器”,使用at命令可以使指定的命令或程序在指定的時間運行。使用at命令還可以管理遠程計算機中的計劃任務,在使用IPC入侵時,可以使用at命令來安排計劃任務,讓指定的程序在目標計算機中按指定的時間運行。
at命令的使用步驟如下:
步驟1 如果想在11:00運行程序“tm.exe”,則可在【命令提示符】窗口中運行“at 11:00 c:\tm.exe”命令,如圖1-35所示。

圖1-35 運行使“tm.exe”在11:00運行命令
步驟2 輸入“at”命令,即可查看剛添加的計劃任務的詳細信息,如圖1-36所示。

圖1-36 查看剛添加的計劃任務的詳細信息
步驟3 如果想在每月的10號和20號的11:00點運行程序“tm.exe”,則可在【命令提示符】窗口中運行“at 11:00 /every:10,20 c:\tm.exe”命令,如圖1-37所示。其中“/every”參數指定了每月的某個日志執行的命令,將date指定為星期的一天或多天(M、T、W、Th、F、S、Su),或月的一天或多天(使用1~31的數字)。

圖1-37 運行使程序“tm.exe”在多個時間內運行
步驟4 輸入“at”命令,即可查看該計劃任務的詳細信息,如圖1-38所示。

圖1-38 查看計劃任務詳細信息
的命令
步驟5 另外,使用at命令還可以實現定時關機的功能。在【命令提示符】窗口中運行“At 17:50 shutdown –s –T30”命令即可實現該功能,如圖1-39所示。這樣在17:50時就會彈出【系統關機】提示框,如圖1-40所示。

圖1-39 運行定時關機命令

圖1-40 【系統關機】提示框
1.1.4 Windows注冊表
通過注冊表,用戶可以添加、刪除、修改系統內的軟件配置信息或硬件驅動程序,這樣就大大方便了用戶對軟、硬件的工作狀態進行相應調整。對于功能如此強大的注冊表,黑客會經常通過注冊表來種植木馬、刪除系統文件以及改變硬件的工作狀態。
在【注冊表編輯器】窗口中可以對注冊表文件進行刪除、修改等操作。注冊表包含有HKEY_LOCAL_MACHINE、HKEY_CLASSES_ROOT、HKEY_CURRENT_USER、HKEY_USERS以及HKEY_CURRENT_CONFIG等5個注冊表根項,其名稱和作用如表1-1所示。
表1-1 注冊表根項名稱及其作用

雖然在注冊表中5 個根鍵看上去處于一種并列地位,彼此毫無關系。但事實上,HKEY_CLASSES_ROOT和HKEY_CURRENT_CONFIG中存放的信息,都是HKEY_LOCAL_MACHINE中存放的信息的一部分;而HKEY_CURRENT_USER中存放的信息,只是HKEY_USERS存放的信息的一部分。HKEY_LOCAL_MACHINE包括HKEY_CLASSES_ROOT和HKEY_CURRENT_USER中所有的信息。Windows當前定義和使用的數據類型如表1-2所示。
表1-2 當前定義和使用的數據類型

1.2 常見的網絡協議
在網絡中,計算機之間需要交換信息就必須使用相同的網絡協議。網絡協議就像人們說話使用的某種語言一樣,它是網絡上計算機之間的一種語言。
1.2.1 TCP/IP
TCP/IP(Transmission Control Protocol/Internet Protocol,傳輸控制協議/互聯網絡協議)是Internet最基本的協議,是由網絡層的IP協議和傳輸層的TCP協議組成的。主要用于規范網絡上所使用的通信設備,也是一個主機與另一個主機之間數據的傳送方式。在Internet中,TCP/IP是最基本的協議,是傳輸數據打包和尋址的標準方法。
TCP/IP允許獨立的網絡添加到Internet中或私有的內部網(Intranet)中。通過路由器(可以將一個網絡的數據包傳輸給另一個網絡的設備)或IP路由器等設備將獨立的網路連接在一起,就構成了內部網。在使用TCP/IP的內部網中,數據將被分成獨立的IP包或IP數據報數據單元進行傳輸。
TCP/IP通常被稱為TCP/IP協議族。在實際應用中,TCP/IP是一組協議的代名詞,它還包括許多別的協議,組成了TCP/IP協議族。其中比較重要的有SLIP、PPP、IP、ICMP、ARP、TCP、UDP、FTP、DNS、SMTP等。
1.2.2 IP
IP是為計算機網絡相互連接進行通信而設計的協議。在因特網中,可以使連接到網絡上的所有計算機實現相互通信,同時還規定了計算機在因特網上進行通信時應當遵守的規則。任何廠家生產的計算機系統,只有遵守IP才可以與因特網互連互通。
IP地址就是給每個連接在Internet上的主機分配的一個32bit地址。每臺連網計算機都依靠IP地址來標識自己。由于有這種惟一的地址,才保證了用戶在聯網的計算機上操作時,能夠高效而且方便地從千千萬萬臺計算機中選出自己所需的對象。
1.IP地址的基本格式
按照TCP/IP協議規定,IP地址用二進制來表示,每個IP地址長32bit,比特換算成字節,就是4個字節。例如,一個采用二進制形式的IP地址是“00001010000000000000000000000001”,這么長的地址,處理起來也太費勁了。為了方便使用,IP地址經常被寫成四個十進制的數,中間使用符號“.”分開不同的字節。于是,上面的IP地址可以表示為“10.0.0.1”,這顯然比1和0容易記得多。這種表示方法稱作“點分十進制表示法”。IP地址格式:網絡地址+主機地址或網絡地址+子網地址+主機地址。
2.IP地址分配
在互聯網中的每個接口有一個惟一的IP地址與其對應,該地址并不是采用平面形式的地址空間,而是具有一定的結構。一般情況下,IP地址可分為5大類,具體結構如圖1-41所示。

圖1-41 IP地址分類
從中不難得出如下結論:
? 在A類中,第一個段為網絡位,后3段為主機位,其范圍為1~127,如127.255.255.255;
? 在B類中,前兩段是網絡位,后兩段為主機位,其范圍為128~191,如191.255.255.255;
? 在C類中,前三段為網絡位,后一段為主機位,其范圍為192~223,如223.255.255.255;
? D類地址用于多播,也叫組播地址,在互聯網上不能作為接點地址使用,其范圍為224~239,如239.255.255.255;
? E類地址用于科學研究,也不能在互聯網上使用,其范圍為240~254。
1.2.3 ARP
ARP(Address Resolution Protocol,地址解析協議)的主要作用是通過目標設備的IP地址,查詢目標設備的MAC地址,以保證通信的順利進行。ARP將局域網中的32位IP地址轉換為對應的48位物理地址,即網卡的MAC地址,如IP地址是192.168.0.10,而網卡MAC地址為00-1B-7C-17-B0-79,整個轉換過程是一臺主機先向目標主機發送包含有IP地址和MAC地址的數據包,再通過MAC地址兩個主機,就可以實現數據傳輸了。
1.ARP工作原理
計算機在相互通信時,實際上是互相解析對方的MAC地址。其具體的操作步驟如下:
步驟1 每臺主機都會在自己的ARP緩沖區中建立一個ARP列表,來表示IP地址和MAC地址的對應關系。
步驟2 當源主機需要將一個數據包發送到目的主機時,會檢查自己ARP列表中是否存在該IP地址對應的MAC地址。如果存在則將數據包發送到這個MAC地址;如果沒有就向本地網段發起一個ARP請求的廣播包,來查詢此目標主機對應的MAC地址。此ARP請求數據包里包括源主機的IP地址、硬件地址以及目的主機的IP地址。
步驟3 網絡中所有的主機收到這個ARP請求后,會檢查數據包中的目的IP是否和自己的IP地址相同。如果不相同就忽略此數據包;如果相同,該主機首先將發送端的MAC地址和IP地址添加到自己的ARP列表中。
步驟4 如果ARP表中已經存在該IP的信息,則將其覆蓋,然后給源主機發送一個ARP響應數據包,告訴對方自己是它需要查找的MAC地址。
步驟5 當源主機收到這個ARP響應數據包后,將得到的目的主機的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息開始數據的傳輸。
2.查看ARP緩存表
在每臺計算機中都保存著一個ARP緩存表,其中記錄了局域網中其他IP地址對應的MAC地址,以便訪問到正確的IP地址。ARP緩存表是可以查看的,也可以對其進行刪除。在【命令提示符】窗口中輸入“arp -a”命令可以查看ARP緩存表中的內容,如圖1-42所示;而用“arp-d”命令可以刪除ARP表中所有的內容,如圖1-43所示。

圖1-42 查看ARP緩存表中的內容

圖1-43 刪除緩存表中所有的內容
1.2.4 ICMP
ICMP(Internet Control Message Protocol,Internet控制消息協議)是TCP/IP協議族中的子協議,主要用于查詢報文和差錯報文。ICMP報文通常被IP層或更高層協議(TCP或UDP)使用;一些ICMP報文把差錯報文返回給用戶進程。通過IP包傳送的ICMP信息主要用于涉及網絡操作或錯誤操作的不可達信息。ICMP包發送是不可靠的,所以主機不能依靠接收ICMP包解決任何網絡問題。
ICMP主要功能如下:
? 發現網絡錯誤。可以發現某臺主機或整個網絡由于某些故障不可達。
? 通告網絡擁塞。當路由器緩存太多數據包,由于傳輸速度無法達到它們的接收速度,將會生成ICMP源結束信息。對于發送者,這些信息將會導致傳輸速度降低。當然,更多ICMP信息生成也將引起更多的網絡擁塞。
? 協助解決故障。ICMP支持echo功能,即在兩個主機間一個往返路徑上發送一個數據包。Ping是一種基于這種特性的通用網絡管理工具,它將傳輸一系列的包,測量平均往返次數并計算丟失百分比。
? 通告超時。如果一個IP包的TTL降低到零,路由器就會丟棄此包,這時會生成一個ICMP包通告這一事實。TraceRoute是一個工具,它通過發送小TTL值的包及監視ICMP超時通告可以顯示網絡路由。
其實,在網絡中經常會使用到ICMP,只不過大家覺察不到而已。如經常使用的用于檢查網絡通不通的ping命令,這個“ping”的過程實際上就是ICMP工作的過程。還有其他的網絡命令如跟蹤路由的tracert命令也是基于ICMP的。
ICMP對于網絡安全具有極其重要的意義。ICMP本身的特點決定了它非常容易被用于攻擊網絡上的路由器和主機。可以利用操作系統規定的ICMP數據包最大尺寸不超過64KB這一規定,向主機發起“Ping of Death”(死亡之Ping)攻擊。
1.3 創建安全測試環境
在黑客攻防技術中,每種技術都只能針對該種相應漏洞的主機才有效。在沒有通用的入侵與防范技術的情況下,每種入侵與防范技術的成功都需要一定的環境。
1.3.1 安全測試環境概述
安全測試環境千變萬化,如果不能了解平臺的特點,在安全實踐中就會寸步難行。因此,黑客測試平臺是整個安全工作中的重要組成部分。很多用戶都喜歡關注最新的安全漏洞信息和最新的安全文摘,但也會對一些公布的漏洞無計可施。不是因為其技術水平低,而是因為沒有精力同時兼顧多種計算機環境。
在Internet瀏覽器中打開綠盟科技平臺的主頁面(http://www.nsfocus.net/),就可以看到不同操作系統下的漏洞信息,如圖1-44所示。任意打開一個最新的漏洞描述頁面,就可以在“所有系統”下拉列表中看到各種平臺,如圖1-45所示。出現這種問題的根源在于:沒有一個完整的平臺來實現這些安全漏洞的編譯和測試。

圖1-44 綠盟科技首頁

圖1-45 不同操作系統的漏洞信息
面對種類繁多的測試平臺,如果僅限于當前的Windows系統是不行的,此時就需要通過虛擬機軟件來解決這些問題。虛擬機是一種可以在一臺計算機上模擬出很多臺計算機,每臺計算機都可以運行獨立的操作系統的軟件。它可以在計算機平臺和終端用戶之間建立一種環境,而終端用戶基于這個環境來進行各種操作。
1.3.2 虛擬機軟件概述
當安裝的虛擬系統崩潰后,可直接在本機中將其所在的文件刪除而不影響本機系統。同樣,本機系統崩潰后也不影響虛擬系統,可以下次重裝后再加入以前做的虛擬系統。同時,它也是惟一能在Windows和Linux主機平臺上運行的虛擬計算機軟件。虛擬機軟件不需要重開機,就能在同一臺電腦使用多個操作系統,不但方便,而且安全。常見的虛擬機分為VMware和Virtural PC兩種,其中使用VMware的人數比較多。
每個虛擬機由一組虛擬化設備構成,其中,每個虛擬機都有對應的虛擬硬件。下面簡單介紹VMware中的幾個最常見的虛擬硬件設備:
? 網卡——虛擬網卡用于HOST OS(主系統)和GUEST OS(子系統)之間的通信,它可以建立標準的TCP/IP或NETBEUI橋梁。在虛擬機中,網卡品牌很大眾化,Windows系統和Linux系統都能自動識別并驅動。
? 顯卡——VMware將顯卡模擬成了“VMware SVGA(FIFO)”,并自帶了這種顯卡的驅動程序,安裝之后可以增加虛擬系統的分辨率和顏色數。
? 驅動器——虛擬軟驅和光驅比較簡單,基本上就是和主系統共用,將光盤放進去就可以直接讀取。
? 硬盤——IDE(Integrated Drive Electronics,集成驅動器電子,通常IDE是指硬盤等設備的一種接口技術)有virtual disk和existing partition兩種方式。使用第一種方式時,在真正的硬盤上建立一個文件作為虛擬機的整個硬盤。其優點在于:在虛擬機中的任何操作都在該文件中進行,而不會影響到真正系統的數據;當采用第二種方式時就需要開放真正的分區給虛擬機使用。這樣,已有的系統可以直接運行,但是可能會影響硬盤上的有用數據。
? 聲卡——聲卡在虛擬機中被模擬為兼容性較好的一種型號,幾乎全部操作系統都能自行識別并驅動。
不難看出:虛擬機中的硬件和實際硬件并不完全一樣,虛擬機為了保證系統的兼容性和穩定性,將現有硬件都虛擬成為了標準、兼容性最好的硬件,所以最好不要按照實際硬件情況來配置系統,而且在虛擬機中也不能安裝任何驅動程序。
1.3.3 用VMware創建虛擬環境
VMware Workstation專業虛擬機軟件具有使用簡單、容易上手等優點,可以使用戶在一臺機器上同時運行一個或更多Windows、DOS、Linux系統。VMware是真正“同時”運行多個操作系統在主系統的平臺上,就像標準Windows應用程序之間那樣進行切換,而且每個操作系統都可以進行虛擬的分區、配置而不影響真實硬盤的數據。甚至可以通過網卡將幾臺虛擬機用網卡連接為一個局域網。
1.安裝虛擬機6.5.2
如果安裝環境符合VMware軟件的運行要求,在下載VMware軟件并獲得注冊碼后,就可以進行安裝了。安裝虛擬機6.5.2的具體操作步驟如下:
步驟1 雙擊安裝文件即可啟動自動安裝程序,同時可以看到彈出的【VMware產品安裝】提示框,如圖1-46所示。

圖1-46 【VMware產品安裝】提示框
步驟2 待初始化完畢后,即可看到【VMware安裝向導】對話框,如圖1-47所示。單擊【Next】按鈕,即可打開【Setup Type(安裝類型)】對話框,在其中選擇“Typical”單選項,如圖1-48所示。

圖1-47 【VMware安裝向導】對話框

圖1-48 【Setup Type(安裝類型)】對話框
步驟3 單擊【Next】按鈕即可打開【Destination Folder(目標文件夾)】對話框,如圖1-49所示。單擊【Change(更改)】按鈕,即可打開【Change Current Destination Folder(更改當前目標文件夾)】對話框,如圖1-50所示。

圖1-49 【目標文件夾】對話框

圖1-50 【更改當前目標文件夾】對話框
步驟4 在其中設置虛擬機安裝的目標文件夾后,單擊【OK】按鈕返回【Destination Folder(目標文件夾)】對話框,此時可以看到設置的目標文件夾,如圖1-51所示。

圖1-51 設置的目標文件夾
步驟5 單擊【Next】按鈕,即可打開【Configure Shortcuts(選擇快捷方式)】對話框,在其中根據實際需要選擇相應的復選框。這里勾選全部復選框,如圖1-52所示。

圖1-52 【Configure Shortcuts(選擇快捷
方式)】對話框
步驟6 單擊【Next】按鈕,即可打開【Ready to Install the Program(準備安裝程序)】對話框,如圖1-53所示。單擊【Install】按鈕,即可自動進行安裝,如圖1-54所示。

圖1-53 【準備安裝】對話框

圖1-54 【自動安裝】界面
步驟7 在安裝過程中,會彈出【Registration Information(注冊信息)】對話框,在其中根據提示輸入用戶名、公司名稱、安裝序列號等內容,如圖1-55所示。在輸入完畢之后,單擊【Enter】按鈕,即可看到【安裝完成】對話框,如圖1-56所示。

圖1-55 【注冊信息】對話框

圖1-56 【安裝完成】對話框
步驟8 單擊【Finish】按鈕,即可看到【重啟計算機】對話框,如圖1-57所示。單擊【Yes】按鈕,在計算機重新啟動系統之后,VMware虛擬機軟件就安裝成功了。

圖1-57 【重啟計算機】對話框
步驟9 右擊“網上鄰居”圖標,在彈出的快捷菜單中選擇“屬性”選項,即可打開【網絡連接】窗口,在其中可以看到VMware Workstation添加的兩個網絡連接,如圖1-58所示。

圖1-58 【網絡連接】窗口
步驟10 右擊“我的電腦”圖標,在彈出的快捷菜單中選擇“屬性”選項,即可打開【系統屬性】對話框,如圖1-59所示。切換到“硬件”選項卡,在“設備管理器”選項組中單擊【設備管理器】按鈕,即可打開【設備管理器】窗口,此時在“網卡”項目下就可以看到多出兩塊虛擬網卡,如圖1-60所示。這樣,就可以在VMware下使用虛擬網卡進行聯網設置和試驗了。

圖1-59 【系統屬性】對話框

圖1-60 【設備管理器】窗口
2.創建虛擬機
在虛擬軟件安裝完畢之后,就可以在安裝的虛擬機上新建虛擬操作系統了。具體的操作步驟如下:
步驟1 如果是第一次啟動VMware虛擬機軟件,雙擊桌面的VMware快捷圖標,即可打開【License Agreement(批準協議)】對話框,在其中選擇“Yes,I accept the terms in the license agreement(我接受批準協議中的條款)”單選按鈕,如圖1-61所示。

圖1-61 【批準協議】對話框
步驟2 在選擇完畢之后,單擊【確定】按鈕,即可進入【VMware】主窗口,如圖1-62所示。選擇【File(文件)】→【New(新建)】→【WMware(虛擬機)】菜單項,即可打開【New Virtual Machine Wizard(新建虛擬機向導)】對話框,如圖1-63所示。選擇“Typical(recommend)”單選按鈕,即使用典型模式創建一個虛擬機。

圖1-62 【VMware】主窗口

圖1-63 【新建虛擬機向導】對話框
步驟3 單擊【Next】按鈕,即可打開【Guest Operating System Installation(操作系統安裝方式)】對話框,如圖1-64所示。該版本虛擬機提供光驅安裝、系統ISO映像安裝和以后安裝等三種安裝方式。把系統光盤放在光驅中選擇“Installer disc(光驅安裝)”單選按鈕,即可自動探測出要安裝操作系統的版本信息。

圖1-64 【操作系統安裝方式】對話框
步驟4 單擊【Next】按鈕,即可打開【Easy Install Information(輸入Windows安裝信息)】對話框,如圖1-65所示。在其中輸入所安裝系統的安裝序列號、用戶名稱、登錄密碼等信息,以便在安裝系統時自動加載,從而實現安裝系統的無人值守功能。

圖1-65 【輸入Windows安裝信息】對話框
步驟5 單擊【Next】按鈕,即可看到【是否繼續】提示框,如圖1-66所示。該提示框的作用是提醒用戶,輸入的信息可能與虛擬機中的賬戶沖突,在以后安裝的過程中將要求用戶再輸入一個新的名稱。

圖1-66 【是否繼續】提示框
步驟6 單擊【Yes】按鈕,即可打開【Name the Virtual Machine(虛擬機名稱)】對話框。在其中的“Virtual machine name(虛擬機名稱)”文本框中輸入虛擬機的名稱,如圖1-67所示。

圖1-67 【虛擬機名稱】對話框
步驟7 單擊“Locatien(位置)”文本框后面的【Browse(瀏覽)】按鈕,即可打開【瀏覽文件夾】對話框,在其中選擇該虛擬機文件的存放位置,如圖1-68所示。單擊【確定】按鈕返回到【虛擬機名稱】對話框中,即可看到相應的設置,如圖1-69所示。

圖1-68 【瀏覽文件夾】對話框

圖1-69 【虛擬機名稱】對話框
步驟8 單擊【Next】按鈕,即可打開【Specify Disk Capacity(指定磁盤容量)】對話框,在其中根據實際情況設置磁盤大小和相應選項,如圖1-70所示。

圖1-70 【指定磁盤容量】對話框
步驟9 單擊【Next】按鈕,即可打開【Ready to Create Virtual Machine(虛擬機已被正確創建)】對話框,在其中可以看到要創建虛擬的信息,如圖1-71所示。

圖1-71 【虛擬機已被正確創建】對話框
步驟10 如果確定信息無誤,單擊【Finish(完成)】按鈕,即可在【VMware Workstation】窗口中看到新創建的虛擬機,如圖1-72所示。此時在【VMware Workstation】窗口左側單擊剛創建的虛擬機,即可在右窗格中看到建立的主機的軟件和硬件信息。

圖1-72 剛創建的虛擬機
步驟11 如果想對剛創建的虛擬機進行設置,則可在【VMware】主窗口中單擊“Edit virtual machine settings(編輯虛擬機設置)”超鏈接按鈕,即可打開【virtual machine settings(虛擬機設置)】對話框,在其中對內存、硬件、USB接口、聲音等屬性進行設置,如圖1-73所示。

圖1-73 【虛擬機設置】對話框
步驟12 在本地計算機中打開剛創建虛擬機所在的文件夾,在其中可以創建的系統文件如圖1-74所示。如果創建的虛擬機感染了病毒,將該文件夾直接刪除,再重新創建一個虛擬機就可以實現保護計算機的目的。

圖1-74 查看創建的虛擬機文件
3.在虛擬機中安裝操作系統
在新建虛擬機之后,還需要在新建的虛擬機中安裝操作系統,才可使新建的虛擬機運行起來。下面以Windows XP操作系統的安裝為例,講述一下利用系統光盤在新建虛擬機中安裝操作系統的具體操作。
具體的操作步驟如下:
步驟1 在虛擬機中啟動計算機并按“Del”鍵進入BIOS設置界面,將第一啟動設置為“DVD-ROM”,將Windows XP系統安裝光盤放在光驅中,單擊【VMware Workstation】窗口中的啟動 按鈕,即可看到【Windows XP Professional】提示框,如圖1-75所示。

圖1-75 【Windows XP Professional】提示框
步驟2 單擊【OK】按鈕,即可啟動安裝Windows XP SP3操作系統指導界面,如圖1-76所示。按照實際安裝操作系統的方法進行安裝,安裝完畢的操作系統窗口如圖1-77所示。

圖1-76 安裝Windows XP SP3操作系統界面

圖1-77 安裝的虛擬操作系統
步驟3 在虛擬機操作系統中通過“cmd”命令打開【命令提示符】窗口,在其中輸入“ipconfig”命令,即可查看到安裝虛擬系統的IP地址,如圖1-78所示。在本地計算機中可以訪問虛擬機的IP地址,在虛擬機中也可以訪問本地計算機,即虛擬機系統作為一個獨立的網絡結點了。

圖1-78 獲得虛擬機的IP地址等信息
1.3.4 安裝虛擬工具
虛擬機工具(VMware Tools)的作用是鼠標從虛擬機移到本機計算機上不用按“Ctrl+Alt”組合鍵,還可以將真機的文件直接復制到虛擬機上。安裝虛擬工具具體的操作步驟如下:
步驟1 在【VMware Workstation】窗口中,選擇【VMware】→【Install VMware Tools】菜單項,即可啟動虛擬工具安裝程序,如圖1-79所示。

圖1-79 啟動虛擬工具安裝程序
步驟2 在虛擬工具安裝程序初始化完畢之后,即可打開【VMware Tools安裝向導】對話框,如圖1-80所示。

圖1-80 【VMware Tools安裝向導】對話框
步驟3 單擊【下一步】按鈕,即可進入【安裝類型】對話框,在其中根據實際情況選擇相應的安裝類型,如圖1-81所示。

圖1-81 【安裝類型】對話框
步驟4 單擊【下一步】按鈕,即可進入【已準備好安裝程序】對話框,如圖1-82所示。單擊【安裝】按鈕,即可自動進行安裝。

圖1-82 【已準備好安裝程序】對話框
步驟5 在安裝完畢之后,即可彈出【安裝向導完成】對話框,如圖1-83所示。

圖1-83 【安裝向導完成】對話框
步驟6 單擊【完成】按鈕,即可看到【是否重新啟動計算機】提示框,如圖1-84所示。

圖1-84 【是否重新啟動計算機】提示框
步驟7 單擊【確定】按鈕,即可自動啟動。虛擬系統重新啟動之后,如果可以任意移動鼠標,則說明虛擬工具已經成功安裝了。
1.3.5 在虛擬機上假設IIS服務器
IIS(Internet Information Server,互聯網信息服務)作為一種Web(網頁)服務組件,其中包括Web服務器、FTP服務器、NNTP服務器和SMTP服務器,分別用于網頁瀏覽、文件傳輸、新聞服務和郵件發送等方面,使得在網絡(包括互聯網和局域網)上發布信息成了一件很容易的事。
1.在虛擬機中安裝IIS服務器
在虛擬機中的操作系統中也可以安裝IIS服務器,這里以在VMware中建立的Windows XP操作系統為例,介紹IIS服務器安裝和配置過程。具體的操作步驟如下:
步驟1 在Windows XP系統的【控制面板】窗口中,雙擊“添加/刪除程序”選項,即可打開【添加或刪除程序】窗口,如圖1-85所示。

圖1-85 【添加或刪除程序】窗口
步驟2 單擊【添加/刪除Windows組件】按鈕,即可打開【Windows組件向導】對話框,在其中勾選“Internet信息服務(IIS)”復選框以設置IIS信息,如圖1-86所示。

圖1-86 【Windows組件向導】對話框
步驟3 單擊【詳細信息】按鈕,即可彈出【Internet信息服務(IIS)】對話框,在其中取消默認的“SMTP Service”服務和“FTP”服務,如圖1-87所示。

圖1-87 【Internet信息服務(IIS)】對話框
步驟4 在設置完畢之后,單擊【確定】按鈕,即可返回到【Windows組件向導】對話框中。此時在光驅中插入Windows系統安裝光盤,單擊【下一步】按鈕,即可開始IIS服務器的安裝,其安裝進度如圖1-88所示。

圖1-88 【Windows組件向導正在配置組件】對話框
步驟5 在IIS服務器安裝完成之后,將會在【Windows組件向導】對話框中出現相應的提示信息,如圖1-89所示。

圖1-89 【Windows組件向導】對話框
2.在虛擬機中配置IIS服務器
在IIS服務器附加完畢之后,往往還需要進行配置IIS服務器的操作。為了方便用戶,在此介紹在虛擬機中的Windows XP操作系統下配置IIS服務器的方法。具體的操作步驟如下:
步驟1 在Windows系統的【控制面板】窗口中雙擊【管理工具】圖標,即可打開【管理工具】窗口,如圖1-90所示。

圖1-90 【管理工具】窗口
步驟2 雙擊【Internet信息服務】圖標,即可打開【Internet信息服務】窗口,單擊“本地計算機”前的“+”號,和其下屬結點“網站”前的“+”號,如圖1-91所示。

圖1-91 【Internet信息服務】窗口
步驟3 在“默認網站”結點上右擊,在彈出的快捷菜單中選擇【屬性】選項,即可打開【默認網站屬性】對話框,如圖1-92所示。在【網站】選項卡中,選擇“IP地址”下拉列表框中本機的IP地址(如機器的IP地址為192.168.0.20)之后,單擊【確定】按鈕,即可完成對網站IP地址的設置。

圖1-92 【默認網站屬性】對話框
步驟4 在IE瀏覽器地址欄中輸入本機的IP地址,即可打開默認網頁,但有時會出現【連接到192.168.0.20】對話框,如圖1-93所示。

圖1-93 【連接到192.168.0.20】對話框
步驟5 出現這種情況的原因在于設置權限的不正確。在【默認網站 屬性】對話框中切換到“目錄安全性”選項卡下,單擊其中的【編輯】按鈕,即可打開【身份驗證方法】對話框,如圖1-94所示。在其中勾選“匿名訪問”復選框和“允許IIS控制密碼”復選框后,單擊【確定】按鈕,即可設置正確的權限。

圖1-94 【身份驗證方法】對話框
1.3.6 在虛擬機中安裝網站
在設置好IIS服務器并安裝了動態域名解析客戶端后,就可以安裝網站了。要安裝的網站可以是自己編輯網站程序,也可以是從網上下載完整的源程序。常見安裝網站的方法有解壓安裝和程序安裝兩種。
1.解壓安裝法
解壓安裝法是目前安裝網站最簡單的方法,很多論壇網站都是用這種方法安裝的。在網上下載網站源程序并將壓縮包解壓之后,就可以進行安裝網站的操作了。
在虛擬機中安裝網站的具體操作步驟如下:
步驟1 在【Internet信息服務】窗口中右擊“默認網站”圖標,在彈出的快捷菜單中選擇“屬性”選項,即可打開【默認網站 屬性】對話框,切換到“主目錄”選項卡,在“本地路徑”文本框中輸入下載網站源文件所在的位置,如圖1-95所示。

圖1-95 “主目錄”選項卡
步驟2 切換到“文檔”選項卡,在“默認文檔”欄中可以看到各種默認的文檔,如圖1-96所示。

圖1-96 “文檔”選項卡
步驟3 勾選“啟用默認文檔”復選框后單擊【添加】按鈕,即可打開【添加默認文檔】對話框,在“默認文檔名”文本框中輸入新添加的文檔名index.asp,如圖1-97所示。

圖1-97 【添加默認文檔】對話框
步驟4 單擊【確定】按鈕,即可關閉【添加默認文檔】對話框,此時在“默認文檔”列表中可看到新添加的index.asp,如圖1-98所示。

圖1-98 添加的默認文檔
步驟5 在【Internet信息服務】窗口中將安裝后默認存在的幾個虛擬目錄(“IISHelp”和“Printers”)刪除,在本地計算機的瀏覽器地址中輸入虛擬機IP地址,即可打開剛安裝的網站。
2.程序安裝法
使用程序安裝法安裝網站與安裝普通軟件的基本操作過程是一樣的,都是先從網上下載安裝程序,再進行安裝。這里以安裝動網論壇為例,具體的操作步驟如下:
步驟1 下載并解壓動網論壇程序,在【Internet信息服務】窗口中把虛擬目錄設置為動網論壇所在的文件夾,運行安裝程序dvbbs.exe,即可打開【動網先鋒軟件(Aspsky.Net)安裝】對話框,如圖1-99所示。

圖1-99 【動網先鋒軟件(Aspsky.Net)安裝】對話框
步驟2 在選擇安裝目標文件夾之后,單擊【安裝】按鈕,即可完成對動網論壇的安裝,待安裝完畢后,打開安裝好的網站文件夾,如圖1-100所示。

圖1-100 安裝完畢后的動網論壇文件
1.4 必要的黑客攻防知識
事物的作用都是一分為二的,如現在網絡流行的掃描軟件,在管理員手中可用來檢測系統漏洞,防范于未然;而對于“黑客”來講,它是用來尋找攻擊入口,為入侵工作做準備的必備工具。
1.4.1 常見的黑客攻擊流程
黑客入侵主要是為了成為目標主機的主人,能夠獲得一臺網絡主機的超級用戶權限,才達到了入侵的目的。比如說修改服務配置、安裝木馬程序、執行任意程序等。雖說現在網絡安全日新月異,舊的安全漏洞被補上,新的漏洞也會隨之出現。網絡攻擊正是利用這些安全漏洞和缺陷對系統和資源進行攻擊的。下面介紹黑客攻擊的基本流程:
(1)隱藏自己的行蹤。黑客入侵就是要神不知鬼不覺地侵入到目標主機,因此,在入侵之前要對自己做個偽裝,不能讓被攻擊者輕易發現。在進行網絡攻擊之前,先將自己真實的IP地址隱藏,一般攻擊者都是利用他人電腦來隱藏自己真實的IP,也有一些高手會通過800電話的無人轉接服務連接ISP,再套用他人的賬號進行偽裝。
(2)查詢分析目標主機。攻擊要有目標,在Internet中IP地址就能夠真正標識一個主機,而域名是為了更好地對IP地址進行記憶管理的另一種表示方式,這樣利用域名和IP地址就能夠確定目標主機了。確定了目標主機之后,就可以對其操作系統類型及所提供的服務等信息,做一個全方位的分析了解。
一般攻擊只用一些掃描器工具,了解目標主機所使用的操作系統類型及其版本、系統開放了哪些用戶、Web等服務器程序版本信息等,為入侵做好充分準備。
(3)獲取權限用戶進行入侵。獲得目標主機權限用戶是入侵的最基本手段,攻擊者要先設法盜取目標主機的賬戶文件進行破解,來得到權限用戶的賬號和密碼,再尋找合適時機以此身份登錄主機。一般攻擊者都是通過一些黑惡攻擊或系統漏洞登錄目標主機的。
(4)留下后門和清除記錄。在獲取權限用戶之后,就可以順利登錄目標主機系統,從而獲得控制權。留下后門和清除記錄可以方便攻擊者以后不被察覺地再次入侵該目標主機。
其實所謂后門只是一些木馬程序或預先編譯好的遠程操縱程序,將這些程序修改時間和權限傳輸到目標主機隱秘的地方藏起來就可以了。一般攻擊者喜歡使用rep傳輸文件,以免被被攻擊者發現。攻擊者還要使用清除日志、刪除復制的文件等方法清除自己的記錄,隱藏好自己的蹤跡。
(5)竊取網絡資源。成功入侵了目標主機,該主機的所有資料都將呈現在自己面前,此時即可下載有用資料(如一些重要的賬號密碼),甚至可使該主機及其所在的網絡癱瘓。
1.4.2 常用的網絡防御技術
在浩瀚的網絡世界里,當用黑客技術攻擊別人時,說不定自己也正在被某個黑客當作攻擊目標。只有將黑客有可能攻擊的弱點保護起來,才有可能保證自己“大本營”的安全。
下面針對黑客常用攻擊手段介紹幾種常用的防范方法。
1.協議欺騙攻擊的防范措施
黑客攻擊手段中有一種是利用協議欺騙來竊取報文的,要防止源IP地址欺騙的攻擊方式,可采用如下幾種方法:
? 加密法。對發送到網絡之前的數據包進行加密,在加密過程中要求適當改變網絡配置,但應能夠保證發送數據的完整性、真實性和保密性。
? 過濾法。配置路由器使其拒絕網絡外部與本網段內具有相同IP地址的連接請求。而且當數據包的IP地址不在本網段內,路由器就不會將本網段主機的數據包發送出去。但路由器過濾也只是對來自于內部網絡的外來數據包起到作用,對于網絡內存在的外部可信任主機就沒有辦法過濾了。
2.拒絕服務攻擊的防范措施
在拒絕服務攻擊中,SYN Flood攻擊是典型的攻擊方式,為了防止拒絕服務攻擊,可以采取如下防御措施:
? 在路由器上配置和調整限制SYN半開數據包的數量和個數。
? 防止SYN數據段攻擊,可對系統設置相應的內核參數,對超時的SYN請求連接數據包使系統強制復位,縮短超時常數和加長等候隊列,使得系統能夠及時處理無效的SYN請求數據包。
? 在路由器的前端做必要的TCP攔截,只有經過完成三次握手過程的數據包才能通過該網段,有效保護本網段的服務器不被其攻擊。
? 管制可能產生無限序列的服務來防止信息淹沒攻擊。
其實最好的方法就是找出正在進行攻擊的機器和攻擊者,但這卻不是那么容易。因為對方一旦停止了攻擊行為,就很難再發現其蹤跡了。唯一可行的方法就是在其進行攻擊時,采用回溯法根據路由器的信息和攻擊數據包特征來查找攻擊源頭。
3.網絡嗅探的防范措施
對于使用網絡嗅探的方法檢測自己系統的攻擊者,可以采用如下措施進行防范:
? 網絡分段。一組共享底層和線路機器(如交換機、動態集線器和網橋等設備)可以組成一個網絡段。在一個網絡段中可以對數據流進行限制,從而達到防止嗅探工具的目的。
? 加密。可以對數據流中的部分數據信息進行加密,也可以對應用層加密,不過應用層的加密將使大部分網絡和操作系統相關的信息失去保護。因此,需要根據信息的安全級別及網絡安全程序選擇使用何種加密方式。
? 一次性密碼技術。這里所使用的密碼將不會在網絡中傳輸,而是直接在傳輸兩端進行字符串的匹配,因此,客戶端可利用從服務器上得到的Challenge和自身密碼,計算出一個字符串并將其返回給服務器,服務器利用比較算法對其進行匹配,如果匹配將允許建立連接,所有Challenge和字符串都只能使用一次。
? 禁止雜錯結點。防止IBM兼容機進行嗅探可以安裝不支持雜錯的網卡。
4.緩沖區溢出攻擊的防范措施
緩沖區溢出是屬于系統攻擊的手段,主要是通過向程序的緩沖區寫入冗長的內容達到緩沖區溢出限制,從而破環程序的堆棧,使程序轉而執行其他指令,而達到攻擊的目的。
對緩沖區溢出攻擊的防御可以采用如下幾點:
? 程序指針檢查。在使用指針被引用之前先檢測該程序指針是否被發生了改變。只要系統事先檢測到指針的改變,此指針將不會被使用。
? 堆棧保護。這是提供程序指針完成性檢測的一種編譯器技術,在程序指針堆棧中函數返回的地址后面追加一些特殊的字節,在函數返回時先檢測這些附加的字節是否被改動,因此,這種攻擊很容易在函數返回前被檢測到。但如果攻擊者預見到這些附加字節,并能在溢出過程中制造出,攻擊者就可以跳過堆棧的保護測試了。
? 數組邊界檢查。通過檢測數組的操作是否在正確范圍內進行,來檢測是否被緩沖區溢出攻擊。目前主要使用的集中檢查方法有:Compaq編譯器檢查、Jones&Kelly C數組邊界檢查、Purify存儲器存取檢查等。
1.5 專家點撥
點撥1:在安裝虛擬工具時找不到安裝文件,出現這種問題的原因是什么?
解答:出現這種問題的原因是在虛擬機中用的是ISO文件安裝的操作系統,但是加載安裝文件后沒有重啟系統。在重新啟動系統之后,就可以自動找到VMware Tools的安裝文件了。
點撥2:在VMware中創建一個虛擬機后,啟動該虛擬機時會報物理內存不足,為什么?解答:在一般情況下,如果主機操作系統是Windows XP且虛擬機也是Windows XP,則物理內存最好不低于512MB,而給虛擬機分配的內存最少要有128MB,才可能保證虛擬機正常運行。
點撥3:如何提高VMware的性能?
解答:要提高VMware虛擬機的性能,需要采取如下幾種措施。
? 升級計算機的配置:因為CPU的速度越快,內存越大,VMware的性能就越好。
? 安裝虛擬工具:VMware Tools有助于提高鼠標性能和虛擬機的可用性。
? 選擇正確的系統。在新建虛機時從下拉菜單里選擇操作系統的類型,如果所選類型與實際安裝不一致會給性能帶來不良影響。
? 盡量使用全屏模式。全屏模式直接操作顯卡,比窗口模式有更好的性能。
1.6 總結與經驗積累
很多人由于對電腦安全防御和黑客入侵原理缺乏必要的了解,常常被黑客攻擊了還都蒙在鼓里,所以本章介紹了進程、端口、服務、文件、文件系統、DOS系統的常用命令、常見的網絡協議以及創建安全測試環境等內容。
本章著重介紹了如何用VMware創建虛擬環境、安裝虛擬工具以及在虛擬機中安裝IIS服務器和網站等內容。希望通過對本章的學習,讀者可以對黑客入門知識有個大概了解。