使用Nessus漏掃


Nessus號稱是世界上最流行的漏洞掃描程序,全世界有超過75000個組織在使用它。該工具提供完整的電腦漏洞掃描服務,並隨時更新其漏洞數據庫。Nessus不同於傳統的漏洞掃描軟件,Nessus可同時在本機或遠端上遙控,進行系統的漏洞分析掃描。Nessus也是滲透測試重要工具之一。所以,本章將介紹安裝、配置並啟動Nessus。

5.1.1 安裝和配置Nessus

為了定位在目標系統上的漏洞,Nessus依賴feeds的格式實現漏洞檢查。Nessus官網提供了兩種版本:家庭版和專業版。

  • 家庭版:家庭版是供非商業性或個人使用。家庭版比較適合個人使用,可以用於非專業的環境。
  • 專業版:專業版是供商業性使用。它包括支持或附加功能,如無線並發連接等。

本小節使用Nessus的家庭版來介紹它的安裝。具體操作步驟如下所示。

(1)下載Nessus軟件包。Nessus的官方下載地址是http://www.tenable.com/products/ nessus/select-your-operating-system。在瀏覽器中輸入該地址,將顯示如圖5.1所示的界面。

128-01

圖5.1 Nessus下載界面

(2)在該界面左側的Download Nessus下,單擊Linux,並選擇下載Nessus-5.2.6- debian6_i386.deb包,如圖5.2所示。

128-02

圖5.2 下載Linux系統的Nessus

(3)單擊Nessus-5.2.6-debian6_i386.deb包后,將顯示如圖5.3所示的界面。

128-03

圖5.3 接收許可證

(4)在該界面單擊Agree按鈕,將開始下載。然后將下載的包,保存到自己想要保存的位置。

(5)下載完Nessus軟件包,現在就可以來安裝該工具。執行命令如下所示:

root@kali:~# dpkg -i Nessus-5.2.6-debian6_i386.deb
Selecting previously unselected package nessus.
(正在讀取數據庫 … 系統當前共安裝有 276380 個文件和目錄。)
正在解壓縮 nessus (從 Nessus-5.2.6-debian6_i386.deb) …
正在設置 nessus (5.2.6) …
nessusd (Nessus) 5.2.6 [build N25116] for Linux
Copyright (C) 1998 - 2014 Tenable Network Security, Inc

Processing the Nessus plugins…
[##################################################]

All plugins loaded

 - You can start nessusd by typing /etc/init.d/nessusd start
 - Then go to https://kali:8834/ to configure your scanner

看到以上類似的輸出信息,表示Nessus軟件包安裝成功。Nessus默認將被安裝在/opt/nessus目錄中。

(6)啟動Nessus。執行命令如下所示:

root@kali:~# /etc/init.d/nessusd start
$Starting Nessus : .

從輸出的信息中可以看到Nessus服務已經啟動。

129-01注意:使用Nessus之前,必須有一個注冊碼。關於獲取激活碼的方法在第2章已經介紹過,這里就不再贅述。

(7)激活Nessus。執行命令如下所示:

root@Kali:~# /opt/nessus/bin/nessus-fetch --register 9CC8-19A0-01A7-D4C1- 4521

(8)為Nessus創建一個用戶。執行命令如下所示:

root@Kali:~# /opt/nessus/sbin/nessus-adduser

(9)登錄Nessus。在瀏覽器中輸入地址https://主機IP:8834或https://主機名:8834。

通過以上步驟的詳細介紹,Nessus就配置好了,現在就可以使用Nessus掃描各種的漏洞。使用Nessus掃描漏洞之前需要新建掃描策略和掃描任務,為了后面能順利的掃描各種漏洞,接下來將介紹新建策略和掃描任務的方法。

1. 添加策略

添加策略的具體操作步驟如下所示。

(1)登錄Nessus。Nessus是一個安全鏈接,所以需要添加信任后才允許登錄。在瀏覽器地址欄中輸入https://192.168.41.234:8834/,將顯示如圖5.4所示的界面。

129-02

圖5.4 連接不被信任

(2)在該界面單擊I Understand the Risks按鈕,將顯示如圖5.5所示的界面。

130-01

圖5.5 了解風險

(3)該界面顯示了所存在的風險,單擊Add Exception按鈕,將顯示如圖5.6所示的界面。

130-02

圖5.6 添加安全例外

(4)在該界面單擊Confirm Security Exception按鈕,將顯示如圖5.7所示的界面。

131-01

圖5.7 Nessus登錄界面

(5)在該界面輸入前面創建的用戶名和密碼,然后單擊Sign In按鈕,將顯示如圖5.8所示的界面。

131-02

圖5.8 Nessus主界面

(6)在該界面使用鼠標切換到Policies選項卡上,將顯示如圖5.9所示的界面。

132-01

圖5.9 策略界面

(7)在該界面單擊New Policy按鈕,將顯示如圖5.10所示的界面。

132-02

圖5.10 策略向導

(8)該界面選擇創建策略類型。Nessus默認支持10種策略類型,在策略類型上有綠色條的表示訂閱。這里選擇Advanced Policy類型,單擊該圖標后,將顯示如圖5.11所示的界面。

133-01

圖5.11 新建策略

(9)在該界面設置策略名、可見性和描述信息(可選項)。這里設置策略名為Local VulnerabilityAssessment、可見性為private。然后單擊左側的Plugins標簽,將顯示如圖5.12所示的界面。在圖5.11中Visibility有兩個選項。

133-02

圖5.12 插件程序

  • private:僅自己能使用該策略掃描。
  • shared:其他用戶也能使用該策略掃描。

(10)該界面顯示了所有插件程序,默認全部是啟動的。在該界面可以單擊Disable All按鈕,禁用所有啟動的插件程序。然后指定需要啟動的插件程序,如啟動Debian Local Security Checks和Default Unix Accounts插件程序,啟動后如圖5.13所示。

134-01

圖5.13 啟動的插件程序

(11)在該界面單擊Save按鈕,將顯示如圖5.14所示的界面。

134-02

圖5.14 新建的策略

(12)從該界面可以看到新建的策略Local Vulnerability Assessment,表示該策略已創建成功。

2. 新建掃描任務

策略創建成功后,必須要新建掃描任務才能實現漏洞掃描。下面將介紹新建掃描任務的具體操作步驟。

(1)在圖5.14中,將鼠標切換到Scans選項卡上,將顯示如圖5.15所示的界面。

135-03

圖5.15 掃描任務界面

(2)從該界面可以看到當前沒有任何掃描任務,所以需要添加掃描任務后才能掃描。在該界面單擊New Scan按鈕,將顯示如圖5.16所示。

135-04

圖5.16 新建掃描任務

(3)在該界面設置掃描任務名稱、使用策略、文件夾和掃描的目標。這里分別設置為Sample Scan、Local Vulnerability Assessment(前面新建的策略)、My Scans和192.168.41.0/24。然后單擊Launch按鈕,將顯示如圖5.17所示的界面。

136-01

圖5.17 運行掃描任務

(4)從該界面可以看到掃描任務的狀態為Running(正在運行),表示Sample Scan掃描任務添加成功。如果想要停止掃描,可以單擊135-01(停止一下)按鈕。如果暫停掃描任務,單擊135-02按鈕。

5.1.2 掃描本地漏洞

在前面介紹了Nessus的安裝、配置、登錄及新建策略和掃描任務,現在可以開始第一次測試組的安全漏洞。對於新建策略和掃描任務這里就不再贅述,本小節中只列出掃描本地漏洞所需添加的插件程序及分析掃描信息。

【實例5-1】掃描本地漏洞具體操作步驟如下所示。

(1)新建名為Local Vulnerability Assessment策略。

(2)添加所需的插件程序。

  • Ubuntu Local Security Checks:掃描本地Ubuntu安全檢查。
  • Default Unix Accounts:掃描默認Unix賬戶。

(3)新建名為Sample Scan掃描任務。

(4)掃描漏洞。掃描任務執行完成后,將顯示如圖5.18所示的界面。

136-02

圖5.18 掃描完成

(5)在該界面雙擊掃描任務名稱Sample Scan,將顯示掃描的詳細信息,如圖5.19所示。

137-01

圖5.19 掃描的詳細信息

(6)從該界面可以看到總共掃描了三台主機。掃描主機的漏洞情況,可以查看Vulnerability列,該列中的數字表示掃描到的信息數。右側顯示了掃描的詳細信息,如掃描任務名稱、狀態、策略、目標主機和時間等。右下角以圓形圖顯示了漏洞的危險情況,分別使用不同顏色顯示漏洞的嚴重性。本機幾乎沒任何漏洞,所以顯示是藍色(Info)。關於漏洞的信息使用在該界面可以單擊Host列中的任何一個地址,顯示該主機的詳細信息,包括IP地址、操作系統類型、掃描的起始時間和結束時間等。本例中選擇192.168.41.234地址,如圖5.20所示。

137-02

圖5.20 漏洞信息

(7)在該界面單擊INFO按鈕,將顯示具體的漏洞信息,如圖5.21所示。

138-01

圖5.21 漏洞詳細信息

(8)該界面顯示了漏洞的描述信息及掃描到的信息。例如,該主機上開啟了68、8834和15774等端口。使用Nessus還可以通過導出文件的方式查看漏洞信息,導出的文件格式包括Nessus、PDF、HTML、CSV和Nessus DB。導出文件的方式如下所示:

在圖5.20中單擊Export按鈕,選擇導出文件的格式。這里選擇PDF格式,單擊PDF命令,將顯示如圖5.22所示的界面。

138-02

圖5.22 可用的內容

(9)該界面分為兩部分,包括Available Content(可用的內容)和Report Content(報告內容)。該界面顯示了導出的PDF文件中可包括的內容有主機摘要信息、主機漏洞和插件漏洞。在圖5.22中將要導出的內容用鼠標拖到Report Content框中,拖入內容后將顯示如圖5.23所示的界面。

139-01

圖5.23 導出的內容

(10)在該界面顯示了將要導出的內容。此時單擊Export按鈕,將顯示如圖5.24所示的界面。

139-02

圖5.24 下載界面

(11)在該界面單擊Save File按鈕,指定該文件的保存位置,即PDF文件導出成功。

5.1.3 掃描網絡漏洞

如果用戶想要使用Nessus攻擊一個大范圍的漏洞,需要配置評估漏洞列表並指定獲取信息的評估列表。本小節將介紹配置Nessus在目標主機尋找網絡漏洞,這些漏洞指目標主機或其他網絡協議。

【實例5-2】掃描網絡漏洞的具體操作步驟如下所示。

(1)新建名為Internal Network Scan策略。

(2)添加所需的插件程序,如表5-1所示。

表5-1 所需插件程序

CISCO 掃描CISCO系統
DNS 掃描DNS服務器
Default Unix Accounts 掃描本地默認用戶賬戶和密碼
FTP 掃描FTP服務器
Firewalls 掃描代理防火牆
Gain a shell remotely 掃描遠程獲取的Shell
Geeral 掃描常用的服務
Netware 掃描網絡操作系統
Peer-To-Peer File Sharing 掃描共享文件檢測
Policy Compliance 掃描PCI DSS和SCAP信息
SCADA 掃描設置管理工具
SMTP Problems 掃描SMTP問題
SNMP 掃描SNMP相關信息
Service Detection 掃描服務偵察
Settings 掃描基本設置

(3)新建名為Network Scan掃描任務。

(4)掃描結果如圖5.25所示。

140-01

圖5.25 網絡掃描結果

(5)從該界面可以看到有兩個比較嚴重的漏洞。如果想要詳細地分析該漏洞,建議將該信息使用文件的形式導出。

5.1.4 掃描指定Linux的系統漏洞

本小節將介紹使用Nessus掃描指定Linux系統上的漏洞。

【實例5-3】掃描指定Linux系統漏洞的具體操作步驟如下所示。

(1)使用Metasploitable 2.0作為目標主機。用戶也可以使用其他版本的Linux系統。

(2)新建名為Linux Vulnerability Scan策略。

(3)添加所需的插件程序,如表5-2所示。

表5-2 所需插件程序

Backdoors 掃描秘密信息
Brute Force Attacks 暴力攻擊
CentOSo Local Security Checks 掃描CentOS系統的本地安全漏洞
DNS 掃描DNS服務器
Debian Local Security Checks 掃描Debian系統的本地安全漏洞
Default Unix Accounts 掃描默認Unix用戶賬號
Denial of Service 掃描拒絕的服務
FTP 掃描FTP服務器
Fedora Local Security Checks 掃描Fedora系統的本地安全漏洞
Firewalls 掃描防火牆
FreeBSD Local Security Checks 掃描FreeBSD系統的本地安全漏洞
Gain a shell remotely 掃描遠程獲得的Shell
General 掃描漏洞
Gentoo Local Security Checks 掃描Gentoo系統的本地安全漏洞
HP-UX Local Security Checks 掃描HP-UX系統的本地安全漏洞
Mandriva Local Security Checks 掃描Mandriva系統的本地安全漏洞
Misc 掃描復雜的漏洞
Red Hat Local Security Checks 掃描Red Hat系統的本地安全漏洞
SMTP Porblems 掃描SMTP問題
SNMP 掃描SNMP漏洞
Scientific Linux Local Security Checks 掃描Scientific Linux系統的本地安全漏洞
Slackware Local Security Checks 掃描Slackware系統的本地安全漏洞
Solaris Local Security Checks 掃描Solaris系統的本地安全漏洞
SuSE Local Security Checks 掃描SuSE系統的本地安全漏洞
Ubuntu Local Security Checks 掃描Ubuntu系統的本地安全漏洞
Web Servers 掃描Web服務器

(4)新建名為Linux Vulnerability Scan掃描任務。

(5)掃描漏洞,掃描結果如圖5.26所示。

141-01

圖5.26 指定Linux系統掃描結果

(6)從該界面可以看到總共掃描了6台主機上的漏洞信息。其中,主機192.168.41.142上存在7個比較嚴重的漏洞。關於漏洞的百分比情況,可以從右下角的扇形圖中了解到。同樣,用戶可以使用前面介紹過的兩種方法,查看漏洞的詳細信息。

5.1.5 掃描指定Windows的系統漏洞

本節將介紹使用Nessus掃描指定Windows系統上的漏洞。

【實例5-4】使用Nessus掃描指定Windows系統漏洞。本例中使用Windows 7系統作為目標主機。具體掃描步驟如下所示。

(1)新建名為Windows Vulnerability Scan策略。

(2)添加所需的插件程序,如表5-3所示。

表5-3 所需插件程序

DNS 掃描DNS服務器
Databases 掃描數據庫
Denial of Service 掃描拒絕的服務
FTP 掃描FTP服務器
SMTP Problems 掃描SMTP問題
SNMP 掃描SNMP
Settings 掃描設置信息
Web Servers 掃描Web Servers
Windows 掃描Windows
Windows:Microsoft Bulletins 掃描Windows中微軟公告
Windows:User management 掃描Windows用戶管理

(3)開始掃描漏洞。掃描結果如圖5.27所示。

142-01

圖5.27 掃描Windows系統的結果

(4)從該界面可以看到主機192.168.41.1的漏洞情況,該主機中存在一個比較嚴重的漏洞。同樣用戶可以使用前面介紹過的兩種方法查看漏洞的詳細信息,進而修改主機中存在的漏洞。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM