介紹
白帽子是指個體發(fā)起的黑客攻擊,找到系統(tǒng)潛在的可能被惡意黑客利用的的漏洞或脆弱點(diǎn)。在目標(biāo)不知情或者沒得到授權(quán)的情況下發(fā)起黑客攻擊是非法的。所以通常是建立一個自己的實(shí)驗(yàn)室,練習(xí)黑客技術(shù)。
在這個實(shí)驗(yàn)室里,你能看到如何創(chuàng)建一個自己的黑客環(huán)境,練習(xí)各種各樣的黑客攻擊技術(shù)。我們將會探討不同類型的虛擬系統(tǒng),構(gòu)建一個虛擬網(wǎng)絡(luò),在虛擬環(huán)境中運(yùn)行試用版的操作系統(tǒng),搭建一個有漏洞的web應(yīng)用程序,安裝Kali LInux,執(zhí)行滲透測試。
所需條件:
VMware Workstation
Windows XP系統(tǒng)映像
Kali Linux虛擬映像
下面的步驟中會進(jìn)一步詳細(xì)介紹。
虛擬環(huán)境
當(dāng)我們談到道德黑客的時候,最好最安全的方法就是在虛擬環(huán)境下練習(xí)。可以使用虛擬機(jī)創(chuàng)建虛擬環(huán)境。虛擬機(jī)是運(yùn)行在物理機(jī)上的虛假機(jī)器。在虛擬世界中,物理機(jī)上運(yùn)行的真實(shí)的操作系統(tǒng)稱為“host”,虛擬機(jī)上運(yùn)行的操作系統(tǒng)稱為“guest”。如果guest被攻破,host仍然是安全的,所以說虛擬機(jī)是安全的。
常用的虛擬系統(tǒng)有VMware Workstation、VMware Workstation Player、Oracle VirtualBox等。在這個實(shí)驗(yàn)室中,我們將使用VMware workstations。VMware Workstation和VMware Workstation Player二者之間的不同之處是,Workstation可以創(chuàng)建和運(yùn)行虛擬機(jī),而Player只能用于運(yùn)行虛擬機(jī)。
其它的不同之處有:
快照:快照是虛擬機(jī)的硬盤文件在某個時間點(diǎn)上的拷貝。它保留了虛擬機(jī)的狀態(tài),因此我們可以返回或者恢復(fù)到之前的狀態(tài)。如果VM發(fā)生了某些錯誤,我們就可以恢復(fù)到任意時刻的快照。快照保存的狀態(tài)包括:
虛擬機(jī)內(nèi)存的內(nèi)容
虛擬機(jī)的設(shè)置
虛擬機(jī)硬盤的狀態(tài)
在VM Workstation中有這些功能。
克隆:克隆是對當(dāng)前虛擬機(jī)的拷貝。當(dāng)前已存在的虛擬機(jī)被稱為父虛擬機(jī),當(dāng)克隆操作完成后,克隆機(jī)是一個獨(dú)立的虛擬機(jī),當(dāng)然它與父虛擬機(jī)會共享虛擬硬盤。
在VM Workstation中有這些功能。
不要把克隆和快照混淆了。快照保存了虛擬機(jī)當(dāng)前的狀態(tài),當(dāng)你遇到一些錯誤的時候可以恢復(fù)到那個狀態(tài)。然而,克隆是虛擬機(jī)的一個拷貝,可以單獨(dú)使用。
免費(fèi)版VS商業(yè)版:VMware Workstation Player可以免費(fèi)供于個人使用,VMware Workstation Pro是一個收費(fèi)的供商業(yè)使用的軟件。
可以在這里下載到這兩個產(chǎn)品。

步驟1:在VMware Workstation上運(yùn)行Windows試用版操作系統(tǒng)
一旦我們下載并安裝了VMware Workstation,下一步就是下載并安裝Windows XP, Vista, Server 2003,因?yàn)檫@些系統(tǒng)有許多著名的安全問題??梢栽?a target="_blank" rel="nofollow">這里或這里下載到映像。

在下載了“.iso”文件后,打開VMware Workstation,選擇“File”,單擊“New virtual machine”,選擇下載好的“.iso”文件。

按照屏幕上的指令在workstation上安裝windwos XP。

點(diǎn)擊“Customize Hardware”按鈕,配置其它的設(shè)置選項(xiàng),比如內(nèi)存,USB設(shè)置等。RAM大小可以根據(jù)需要增加或減少。

如上圖所示,選擇“Power on this virtual machine after creation”選項(xiàng),單擊“Next”按鈕。



步驟2:尋找并配置有漏洞的web應(yīng)用程序
有很多有漏洞的應(yīng)用程序,我們可以用來以學(xué)習(xí)為目的練習(xí)滲透測試。下面是一些應(yīng)用程序:
Damn Vulnerable Web Applications (DVWA):基于PHP, Apache以及MySQL,需要安裝到本地。
OWASP WebGoat:?J2EE web 應(yīng)用程序,需要在本地運(yùn)行。
Hack This Site:在線學(xué)習(xí)滲透測試的網(wǎng)站。
Testfire:?在線學(xué)習(xí)滲透測試的網(wǎng)站。
下面,我們將學(xué)習(xí)如何在虛擬機(jī)中安裝有漏洞的運(yùn)行程序。因?yàn)槲覀円呀?jīng)有了一個正在運(yùn)行的Windwos XP虛擬機(jī)。我們將看到如何在該系統(tǒng)上運(yùn)行有漏洞的應(yīng)用程序。在這個練習(xí)中,我們將配置Damn Vulnerable Web Application (DVWA)。這個應(yīng)用程序有若干基于web的漏洞,比如跨站腳本?(XSS), SQL注入, CSRF,命令注入等。
下面的步驟會幫你安裝一個web服務(wù)器,并運(yùn)行應(yīng)用程序。
1、現(xiàn)在并安裝XAMPPhttps://www.apachefriends.org/download.html,對于Windows XP,可以在這里https://sourceforge.net/projects/xampp/files/XAMPP%20Windows/1.8.2/xampp-win32-1.8.2-6-VC9-installer.exe/download下載XAMPP。
2、一旦安裝了XAMPP,到控制面板點(diǎn)擊“Start”按鈕,開啟Apache和MySql服務(wù)。
3、在這里http://www.dvwa.co.uk/下載DVWA應(yīng)用程序,解壓文件到一個新的文件夾中,命名為“dvwa”。
4、打開“C:\xampp\htdocs”文件夾,把該文件夾里的內(nèi)容移動到另外一個地方。
5、把“dvwa”文件夾拷貝到“C:\xampp\htdocs”目錄。
6、在瀏覽器的地址欄中輸入下面的內(nèi)容并訪問:http://127.0.0.1/dvwa/login.php
會顯示一個數(shù)據(jù)庫設(shè)置頁面。

7、到“C:\xampp\htdocs\dvwa\config”文件夾下,用記事本打開“config.inc”文件。
8、移除“db_password”的值,如下圖所示.

9、回到瀏覽器,然后刷新頁面,會顯示一個登錄頁面。

10、輸入默認(rèn)的登錄憑證,比如“admin/password”,登錄應(yīng)用程序。

我們成功配置了一個web服務(wù)器并在其上安裝了一個應(yīng)用程序,現(xiàn)在我們通過Kali Linux或者BackTrack訪問應(yīng)用程序,訪問http://ip-address-of-windows-xp-machine/dvwa/login.php,就可以開始攻擊練習(xí)了。
當(dāng)你通過Kali Linux或者BackTrack訪問DVWA的時候,你可能會遇到“Access forbidden”錯誤,如下:

進(jìn)入“c:\xampp\htdocs\dvwa”文件夾,打開“HTACCESS File”,定位到“allow from”行,輸入Kali Linux的IP地址,如下圖所示:

再次訪問URL,你可以看到DVWA的登錄頁面了。

步驟3:下載和安裝Kali Linux
Kali Linux是一個基于Debian的功能強(qiáng)大的滲透測試平臺,全世界滲透測試專家都在使用。Kali包含很多與信息安全相關(guān)的工具??梢栽?a target="_blank" rel="nofollow">這里下載Kali Linux的虛擬映像。

下載之后,按照下面的步驟運(yùn)行Kali:
第一步:啟動VMware Workstation。
第二步:選擇“File”,單擊“Open”。

第三步:找到下載目錄,選擇“Kali_Linux-2016.1-vm-i686.vmx”文件,點(diǎn)擊“Open”按鈕。

第四步:可以看到虛擬機(jī)的詳細(xì)配置。

第五步:單擊“Edit virtual machine settings”按鈕,配置其它信息。

1、內(nèi)存:你可以給虛擬機(jī)分配內(nèi)存。RAM大小可以根據(jù)需要增加或減少,Kali最合適的RAM是2GB。
2、處理器:你可以配置VM虛擬機(jī)的處理器的數(shù)量,每個處理器可以選擇CPU內(nèi)核的個數(shù)。
3、硬盤:你可以給虛擬機(jī)分配保存操作系統(tǒng)、程序和數(shù)據(jù)的硬盤的大小。
4、網(wǎng)絡(luò)適配器:我們可以給虛擬機(jī)增加虛擬以太網(wǎng)卡,改變當(dāng)前適配器的配置,下面是網(wǎng)絡(luò)適配器的可選配置:
橋接模式:在橋接網(wǎng)絡(luò)中,guest操作系統(tǒng)共享host操作系統(tǒng)的網(wǎng)絡(luò)適配器,連接到物理網(wǎng)絡(luò)中。這意味著虛擬機(jī)在網(wǎng)絡(luò)中將會是一個獨(dú)立的機(jī)器。虛擬機(jī)可以通過這個連接在網(wǎng)絡(luò)中共享資源。guest操作系統(tǒng)與host操作系統(tǒng)共享同一個DHCP服務(wù)器和DNS服務(wù)器。
NAT模式:NAT表示網(wǎng)絡(luò)地址轉(zhuǎn)換(Network Address Translator)。在這個網(wǎng)絡(luò)中,虛擬機(jī)位于host之后,通過一個與host的默認(rèn)連接訪問網(wǎng)絡(luò)。在這個網(wǎng)絡(luò)中,通信就好像是來源于host。這意味著虛擬機(jī)能夠訪問網(wǎng)絡(luò)或互聯(lián)網(wǎng),但是它不能在網(wǎng)絡(luò)中共享資源。連接到這個網(wǎng)絡(luò)的IP是由DHCP服務(wù)器分配的。
這是最常用的配置,也是新創(chuàng)建的虛擬機(jī)的默認(rèn)配置。
Host-only模式:Host-only虛擬網(wǎng)絡(luò)是最私密和最嚴(yán)格的網(wǎng)絡(luò)配置。它不是一個公共網(wǎng)絡(luò),不能訪問外部的網(wǎng)絡(luò)或互聯(lián)網(wǎng),沒有默認(rèn)的網(wǎng)關(guān),接入這個網(wǎng)絡(luò)的IP是由DHCP服務(wù)器分配的。
配置供個體使用的滲透測試實(shí)驗(yàn)環(huán)境,推薦使用“Host-only”模式作為網(wǎng)絡(luò)適配器的設(shè)置,我們可以通過它訪問VM網(wǎng)絡(luò)。
第六步:選擇“OK”按鈕,單擊“Play”按鈕,啟動VM。
第七步:現(xiàn)在,虛擬機(jī)啟動了,你可以看到啟動界面,如下圖所示。在虛擬機(jī)的任何位置單擊鼠標(biāo),按下回車鍵。

第八步:如果要求輸入登錄用戶名和口令,你可以使用“root”和“toor”分別作為用戶名和口令。


現(xiàn)在,我們可以使用Kali Linux虛擬機(jī)了,它將用于黑客攻擊。我們可以打開瀏覽器,訪問在步驟二中創(chuàng)建的DVWA應(yīng)用程序。
Windows下的工具:
在滲透測試中,有一些常用且重要的基于Windows的工具:
1、Nmap-Nmap是一個免費(fèi)的網(wǎng)絡(luò)發(fā)現(xiàn)和安全審計(jì)工具。它能用于主機(jī)發(fā)現(xiàn),端口掃描、識別服務(wù),識別OS等。Nmap發(fā)送特制的數(shù)據(jù)包并且分析響應(yīng)結(jié)果。Nmap可以在這里下載到。
2、Wireshark-Wireshark是一個免費(fèi)開源的網(wǎng)絡(luò)協(xié)議和數(shù)據(jù)包解析器。它能把網(wǎng)絡(luò)接口設(shè)置為混雜模式,監(jiān)視整個網(wǎng)絡(luò)的流量??梢栽?a target="_blank" rel="nofollow">這里下載到Wireshark。
3、PuTTY-PuTTY是一個免費(fèi)且開源的SSH和telnet客戶端??梢杂糜谶h(yuǎn)程訪問其它的機(jī)器,可以在這里下載到PuTTY。
4、SQLmap-SQLmap是一個免費(fèi)且開源的工具,主要用來檢測和執(zhí)行應(yīng)用程序中的SQL注入。它也有攻擊數(shù)據(jù)庫的選項(xiàng),SQLmap可以在這里下載到。
5、Metasploit Framework-Metasploit是一個流行的黑客工具和滲透測試框架。它由Rapid7開發(fā),被每一個滲透測試者和道德黑客使用??梢杂糜卺槍τ新┒吹哪繕?biāo)機(jī)執(zhí)行漏洞利用代碼??梢栽?a target="_blank" rel="nofollow">這里下載到Metasploit。
6、Burp Suite-Burp Suite是一個集成的對web應(yīng)用程序執(zhí)行安全測試的平臺。它集成了多個工具。有兩個主要的免費(fèi)工具Spider和Intruder。Spider是用來抓取應(yīng)用程序的頁面的。Intruder是用來自動化對頁面攻擊的。Burp專業(yè)版有一個額外的工具叫做Burp Scanner,能夠掃描應(yīng)用程序的漏洞,Burp Suite可以在這里下載到。
7、OWASP Zed Attack Proxy-OWASP zap是OWASP工程的其中一部分。它是一個對web應(yīng)用程序進(jìn)行滲透測試的工具,具有與Burp Suite類似的功能,有一個自動掃描器,可以發(fā)現(xiàn)應(yīng)用程序的漏洞。其它附加的功能有,針對基于Ajax應(yīng)用程序的爬蟲器。OWASP zap也可以用作代理。可以在這里下載到OWASP zap。
8、Nessus-Nessus是一個漏洞、配置和規(guī)則審計(jì)工具。它有免費(fèi)和付費(fèi)版。免費(fèi)版供個人使用。它使用插件進(jìn)行掃描。簡單得給一個目標(biāo)機(jī)的IP地址,就可以開始掃描。也有一個下載詳細(xì)報(bào)告的選項(xiàng)。可以在這里下載到Nessus。
9、Nikto-Nikto是一個開源的Web服務(wù)器漏洞掃描器。它檢測未更新的軟件和配置,潛在的危險(xiǎn)文件和CGI等。他也有創(chuàng)建報(bào)告的功能。Nikto可以在這里下載到。
10、John the Ripper-它是一個密碼爆破工具,常被用來執(zhí)行基于字典的爆破攻擊。可以在這里下載到John the Ripper。
11、Hydra-另外一個與John the Ripper類似的密碼破解工具。Hydra是一個快速的網(wǎng)絡(luò)登錄破解器。它可以針對超過50個協(xié)議快速字典攻擊,包括telnet, ftp, http, https, smb,若干數(shù)據(jù)庫以及其它更多協(xié)議。可以在這里下載到Hydra。
12、Getif-Getif是一個免費(fèi)的基于Windows的圖形界面工具,用來收集SNMP設(shè)備的信息。Getif可以在這里下載到。
工具倉庫
在互聯(lián)網(wǎng)上有一個滲透測試工具倉庫,包含了滲透測試學(xué)習(xí)、exploit開發(fā)、社會工程學(xué)、滲透測試工具、掃描器、無線網(wǎng)絡(luò)工具、十六進(jìn)制編輯器、密碼破解器、逆向工程工具等其它與滲透測試相關(guān)的重要在線資源??梢栽?a target="_blank" rel="nofollow">這里訪問倉庫。
結(jié)論
這個實(shí)驗(yàn)室可以根據(jù)需要定制。我們可以在虛擬機(jī)上搭建其它類型的操作系統(tǒng),并嘗試攻擊,我們可以通過安裝和開啟防火墻或者入侵檢測系統(tǒng)增加攻擊的難度。
*?翻譯自:resources,轉(zhuǎn)載請注明來自FreeBuf黑客與極客(FreeBuf.COM)