OpenVAS(開放式漏洞評估系統)是一個客戶端/服務器架構,它常用來評估目標主機上的漏洞。OpenVAS是Nessus項目的一個分支,它提供的產品是完全地免費。OpenVAS默認安裝在標准的Kali Linux上,本節將介紹配置及啟動OpenVAS。
一、配置OpenVAS
OpenVAS默認在Kali Linux中已經安裝。如果要使用該工具,還需要進行一些配置。配置OpenVAS具體操作步驟如下所示。
(1)在終端窗口中切換到OpenVAS目錄,為OpenVAS程序創建SSL證書。執行命令如下所示:
root@kali:~# cd /usr/share/openvas/
root@kali:/usr/share/openvas# openvas-mkcert
執行以上命令后,將輸出如下所示的信息:
以上提示的信息,可以配置也可以不配置。如果不想配置的話,直接按下Enter鍵接收默認值即可。以上信息設置完后,將顯示以下信息:
輸出的信息顯示了創建的OpenVAS證書及位置。此時按下Enter鍵,退出程序。
(2)使用OpenVAS NVT Feed同步OpenVAS NVT數據庫,並且更新最新的漏洞檢查。執行命令如下所示:
輸出的信息顯示了同步OpenVAS NVT數據庫的信息,並也更新了所有的漏洞信息。
(3)創建客戶端證書庫。執行命令如下所示:
root@kali:/usr/share/openvas# openvas-mkcert-client -n om -i Generating RSA private key, 1024 bit long modulus ………………………………++++++ ……++++++ e is 65537 (0x10001) You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [DE]:State or Province Name (full name) [Some-State]:Locality Name (eg, city) []:Organization Name (eg, company) [Internet Widgits Pty Ltd]:Organizational Unit Name (eg, section) []:Common Name (eg, your name or your server's hostname) []:Email Address []:Using configuration from /tmp/openvas-mkcert-client.16792/stdC.cnf Check that the request matches the signature Signature ok The Subject's Distinguished Name is as follows countryName :PRINTABLE:'DE' localityName :PRINTABLE:'Berlin' commonName :PRINTABLE:'om' Certificate is to be certified until Apr 25 06:55:05 2015 GMT (365 days) Write out database with 1 new entries Data Base Updated User om added to OpenVAS.
以上輸出的信息顯示了生成客戶端證書的詳細過程,並添加了om用戶。
(4)重建數據庫。執行命令如下所示:
root@kali:/usr/share/openvas# openvasmd –rebuild
執行以上命令后,沒有任何輸出信息。
(5)啟動OpenVAS掃描,並加載所有插件。執行命令如下所示:
從輸出的信息中可以看到所有插件已加載。由於加載的插件比較多,所以執行該命令的時間會長一點。
(6)重建並創建數據庫的備份。執行命令如下所示:
root@kali:/usr/share/openvas# openvasmd --rebuild
root@kali:/usr/share/openvas# openvasmd –backup
執行以上命令后,沒有任何信息輸出。
(7)創建一個管理OpenVAS的用戶。執行命令如下所示:
root@kali:/usr/share/openvas# openvasad -c 'add_user' -n openvasadmin -r Admin Enter password: ad main:MESSAGE:2732:2014-04-25 15h25.35 CST: No rules file provided, the new user will have no restrictions. ad main:MESSAGE:2732:2014-04-25 15h25.35 CST: User openvasadmin has been successfully created.
從輸出的信息中可以看到用戶openvasadmin被成功創建。
(8)創建一個普通用戶。執行命令如下所示:
從輸出的信息中看到用戶被添加。
(9)為OpenVAS配置端口。執行命令如下所示:
root@kali:/usr/share/openvas# openvasmd -p 9390 -a 127.0.0.1 root@kali:/usr/share/openvas# openvasad -a 127.0.0.1 -p 9393 root@kali:/usr/share/openvas# gsad --http-only --listen=127.0.0.1 -p 9392
執行以上命令后,OpenVAS的端口號就被設置為9392。
注意:9392是推薦的一個Web瀏覽器端口。用戶也可以選擇其他端口號。
(10)在瀏覽器中輸入http://127.0.0.1:9392/,打開OpenVAS登錄界面,如圖5.28所示。
圖5.28 OpenVAS登錄界面
(11)在該界面輸入創建的用戶名和密碼,然后單擊Login按鈕,將顯示如圖5.29所示的界面。
圖5.29 OpenVAS初始界面
關於啟動OpenVAS介紹一些附加信息。每次運行OpenVAS時,都必須要做以下工作:
- 同步NVT Feed(當新的漏洞被發現時,該記錄將改變);
- 啟動OpenVAS掃描器;
- 重建數據庫;
- 備份數據庫;
- 配置端口。
為了節約時間,下面將介紹編寫一個簡單的Bash腳本,方便用戶啟動OpenVAS。保存腳本文件名為OpenVAS.sh,並放該文件在/root文件夾中。腳本文件內容如下所示:
#!/bin/bash openvas-nvt-sync openvassd openvasmd --rebuild openvasmd --backup openvasmd -p 9390 -a 127.0.0.1 openvasad -a 127.0.0.1 -p 9393 gsad --http-only --listen=127.0.0.1 -p 9392
編寫好該腳本時,以后運行OpenVAS就不用執行多條命令了,只需要執行一下OpenVAS.sh腳本就可以了。
在Kali中,OpenVAS也提供了圖形界面。啟動OpenVAS圖形界面的方法如下:
在Kali桌面上依次選擇“應用程 序”|Kali Linux|“漏洞分析”|OpenVAS| openvas-gsd命令,將顯示如圖5.30所示的界面。
圖5.30 OpenVAS圖形登錄界面
在該界面輸入服務器的地址127.0.0.1、用戶名和登錄密碼。然后單擊Log in按鈕即可登錄到OpenVAS服務器。
二、創建Scan Config和掃描任務
通過以上步驟OpenVAS就配置好了,現在使用瀏覽器的方式登錄服務器。在該服務器中新建Scan Config、創建掃描目標及新建掃描任務才可以進行各種漏洞掃描。設置好這些信息用戶就可以進行各種漏洞掃描了,如本地漏洞掃描、網絡漏洞掃描和指定操作系統漏洞掃描等。進行這些漏洞掃描之前,都必須要創建Scan Config和掃描任務等。這里將分別介紹這些配置,方便后面的使用。
1. 新建Scan Config
新建Scan Config的具體操作步驟如下所示。
(1)在服務器的菜單欄中依次選擇Configuration|Scan Configs命令,如圖5.31所示。單擊Scan Configs命令后,將顯示如圖5.32所示的界面。
圖5.31 Scan Configs
圖5.32 Scan Configs界面
(2)從該界面可以看到默認總共有5個Scan Config。在該界面單擊(New Scan Config)圖標,將顯示如圖5.33所示的界面。
圖5.33 New Scan Config
(3)在該界面設置掃描的名稱,這里設置為Local Vulnerabilities。對於Base選擇Empty,static and fast復選框,該選項允許用戶從零開始並創建自己的配置。然后單擊Create Scan Config按鈕,將會看到新建的配置,如圖5.34所示。
圖5.34 新建的Local Vulnerabilities
(4)從該界面可以看到新建的Local Vulnerabilities,要編輯該配置可以單擊(Edit Scan Config)圖標。
創建好Scan Config后需選擇掃描的內容。此時單擊圖標選擇掃描的內容,如圖5.35所示。
圖5.35 選擇掃描內容
(5)從該界面的Family欄看到有很多的可掃描信息,此時將Select all NVT's欄中的復選框勾選上即可,設置完后,單擊Save Config按鈕。圖5.35是經過修改后的一個圖,該界面顯示的內容較多,由於篇幅的原因,這里只截取了一部分。
2. 新建目標
在服務器的菜單欄中依次選擇Configuration|Targets命令,將顯示如圖5.36所示的 界面。
圖5.36 Targets界面
在該界面單擊(New Target)圖標,將顯示如圖5.37所示的界面。
在該界面輸入Target名稱及掃描的主機。然后單擊Create Target按鈕,將顯示如圖5.38所示的界面。
從該界面可以看到新建的Local Vulnerabilities目標。
3. 新建任務
在OpenVAS的菜單欄中依次選擇Scan Management|New Task命令,將顯示如圖5.39所示的界面。
圖5.39 新建任務
在該界面設置任務名稱、Scan Config和Scan Targets,然后單擊Create Task按鈕,將顯示如圖5.40所示的界面。
在該界面單擊(Start)圖標,將開始漏洞掃描。當啟動該掃描任務后,按鈕將變為
(Pause),單擊該按鈕可以暫停掃描,也可以單擊
(Stop)停止掃描。
三、掃描本地漏洞
OpenVAS允許用戶大范圍掃描漏洞,並且將限制在用戶的評估列表中。目標主機的漏洞指定是從評估中獲得的信息。本小節將介紹使用OpenVAS來掃描用戶指定本地目標系統上的漏洞。掃描本地漏洞的具體操作步驟如下所示。
(1)新建名為Local Vulnerabilities的Scan Config。
(2)添加掃描的類型,所需掃描類型如表5-4所示。
表5-4 掃描的類型
(3)創建目標系統。
(4)創建名為Local Vulnerabilities掃描任務。
(5)掃描完本地漏洞的顯示界面如圖5.41所示。
(6)在該界面單擊(Task Details)圖標,查看漏洞掃描的詳細信息。顯示界面如圖5.42所示。
(7)該界面顯示了兩個窗口,分別是任務詳細信息和本地漏洞掃描報告信息。用戶從報告信息中可以了解本地系統是否有漏洞。在該界面單擊Actions欄下的(Details)圖標可以查看詳細情況。單擊該圖標后,將顯示如圖5.43所示的界面。
(8)在該界面顯示了所有信息,這些信息可以通過單擊(Download)圖標下載掃描報告。
四、掃描網絡漏洞
本小節將介紹使用OpenVAS掃描一個網絡漏洞。這些漏洞的信息是指一個目標網絡中某個設備的信息。本小節中將Windows XP、Windows 7、Metasploitable 2.0和Linux系統作為目標測試系統。掃描網絡漏洞的具體操作步驟如下所示。
(1)新建名為Network Vulnerability的Scan Config。
(2)添加所需掃描的類型,如表5-5所示。
表5-5 掃描類型
(3)創建名為Network Vulnerability目標系統。
(4)創建名為Network Scan掃描任務。
(5)掃描結果,如圖5.44所示。
圖5.44 Network掃描結果
(6)從該界面可以看到整個網絡中漏洞的情況不太嚴重,漏洞狀態為Medium。查看詳細漏洞掃描情況的方法在前面已經介紹,這里就不再贅述。
五、 掃描指定Linux系統漏洞
本小節將介紹使用OpenVAS掃描指定Linux系統的漏洞。這些漏洞信息來自在一個目標網絡中指定的Linux系統。推薦使用的目標Linux系統為Metasploitable 2.0和其他任何版本Linux。掃描指定Linux系統漏洞的具體操作步驟如下所示。
(1)新建名為Linux Vulnerabilities的Scan Config。
(2)添加所需的掃描類型,如表5-6所示。
表5-6 掃描的類型
(3)創建Linux Vulnerabilities目標系統。
(4)創建Linux Scan掃描任務。
(5)掃描結果,如圖5.45所示。
圖5.45 Linux掃描結果
(6)從該界面可以看到目標系統中有非常嚴重的漏洞。此時單擊(Task Details)圖標,查看漏洞掃描的詳細信息,如圖5.46所示。
(7)從該界面的掃描報告中可以看到有14個非常嚴重的漏洞信息。在該界面的Actions中單擊(Details)圖標查看具體漏洞情況,如圖5.47所示。
(8)該界面顯示的信息很多,由於篇幅的原因,這里只截取了其中一個較嚴重的漏洞。從該界面可以看到192.168.41.142目標主機上存在非常嚴重的漏洞。漏洞信息包括目標主機所開發的端口、OID和解決方法等。關於漏洞的報告可以使用前面介紹過的方法進行下載。
六、 掃描指定Windows系統漏洞
本小節將介紹使用OpenVAS掃描指定Windows系統漏洞。這些漏洞信息來自在一個目標網絡內指定的Windows目標系統。這里推薦的目標系統為Windows XP和Windows 7。
使用OpenVAS掃描指定Windows系統漏洞的具體操作步驟如下所示。
(1)新建名為Windows Vulnerabilities的Scan Config。
(2)添加所需的掃描類型,如表5-7所示。
表5-7 掃描的類型
(3)創建名為Windows Vulnerabilities目標系統。
(4)創建名為Windows Scan掃描任務。
(5)掃描完成后,結果如圖5.48所示。
(6)從該界面可以看到Windows Scan掃描已完成,漏洞情況為Medium。可以在該界面單擊(Task Details)圖標查看詳細信息,如圖5.49所示。
(7)從該界面可以了解掃描任務的設置及掃描報告信息,如掃描完成的時間、漏洞情況及日志。如果想查看更詳細的報告,使用前面介紹過的方法下載掃描報告。
參考