一:Nessus的介紹
1.1Nessus是什么?
Nessus號稱是世界上最流行的漏洞掃描程序,該工具提供完整的電腦漏洞掃描服務,並隨時更新其漏洞數據庫。Nessus不同於傳統的漏洞掃描軟件,Nessus可同時在本機或遠端上遙控,進行系統的漏洞分析掃描。Nessus也是滲透測試重要工具之一
下載網址:https://www.tenable.com/downloads/nessus
1.2Nessus的特點

啟動Nessus服務
Nessus服務安裝后。默認是自己主動啟動的。假設用戶重新啟動系統,獲取進行其他操作時。將Nessus服務關閉的話。則再次訪問必需要先啟動該服務。
以下將分別介紹在不同操作系統中,啟動Nessus服務的方法。
1.Windows下啟動Nessus服務
在Windows下啟動Nessus服務的方法例如以下所看到的:
(1)打開Windows系統的服務窗體。在Windows系統的啟動菜單條中單擊“執行”命令,將彈出“執行”對話框,如圖1.22所看到的。
圖1.22 執行對話框
(2)在該對話框中輸入“services.msc”,然后單擊“確定”button,將打開“服務”窗體,如圖1.23所看到的。
圖1.23 服務窗體
(3)在該界面的名稱列找到“Tenable Nessus”服務。就可以管理該服務,如停止、啟動或又一次啟動等。
在Windows中,也能夠通過命令行停止或啟動Nessus服務。比如。停止Nessus服務。運行命令例如以下所看到的:
- C:\Users\Administrator>net stop "Tenable Nessus"
- Tenable Nessus 服務正在停止.
- Tenable Nessus 服務已成功停止。
從以上輸出信息中,能夠看到Nessus服務已成功停止。假設啟動Nessus服務,運行命令例如以下所看到的:
- C:\Users\Administrator>net start "Tenable Nessus"
- Tenable Nessus 服務正在啟動 .
- Tenable Nessus 服務已經啟動成功。
從以上輸出信息中,能夠看到Nessus服務已成功啟動。
2.Linux下啟動Nessus服務
在Linux下啟動Nessus服務。運行命令例如以下所看到的:
- [root@Server ~]# service nessusd start
- 啟動 Nessus 服務: [確定]
從以上輸出信息中,能夠看到Nessus服務已成功啟動。
假設用戶不確定該服務是否啟動的話。能夠使用下面命令查看其狀態。例如以下所看到的:
- [root@Server ~]# service nessusd status
- nessusd (pid 5948) 正在執行...
從以上輸出信息中,能夠看到Nessus服務正在執行。
Nessus軟件更新
為了可以使用Nessus進行一個成功的漏洞掃描。在掃描之前檢查而且更新Nessus,使用最新的插件是很重要的。這樣可以保證掃描到全部最新的漏洞。以下將以Windows操作系統為例,介紹更新插件的方法。
1.在線更新
【演示樣例1-3】在Windows下更新Nessus中的插件。詳細操作過程例如以下所看到的:
(1)登錄Nessus服務。在Windows中的瀏覽器地址欄輸入https://IP:8834/地址。將打開如圖1.24所看到的的界面。
圖1.24 證書不被信任
(2)在該界面選擇“繼續瀏覽此站點(不推薦)”選項。將打開如圖1.25所看到的的界面。
圖1.25 登錄界面 圖1.26 Nessus登錄界面
(3)在該界面輸入用於管理Nessus服務的username和password。然后。單擊Sign Inbutton。
登錄成功后。將顯示如圖1.26所看到的的界面。
(4)在該界面單擊右上角后面的小三角。將會彈出一個菜單條,如圖1.27所看到的。在該菜單條中,單擊Settings命令,將打開設置界面。如圖1.28所看到的。
圖1.27 菜單條 圖1.28 設置界面
(5)從該界面左側欄中,能夠看到有兩個子選項,即Overview(概述)和Software Update(軟件更新)選項。圖1.28中,顯示的是Overview選項中的信息。
當中。包含Nessus版本號、連接時間、平台、近期更新時間、激活碼等。假設要進行軟件更新,則選擇Software Update選項,將顯示如圖1.29所看到的的界面。
圖1.29 軟件更新 圖1.30 手動更新軟件
(6)從該界面能夠看到在Automatic Updates(自己主動更新)以下有三種更新方式,各自是Update all components(更新全部組件)、Update plugins(更新插件)和Disabled(禁止更新)。用戶能夠選擇不論什么一種更新方式。並且,Nessus還提供了一種自己定義插件更新方式。用於針對特定的主機。比如。更新IP地址為192.168.1.100主機提供的插件。則在Custom Host相應的文本框中輸入地址192.168.1.100。假設用戶不希望自己主動更新的話。還能夠進行手動更新。在該界面單擊右上角的Manual Software Update(手動更新)button,將顯示如圖1.30所看到的的界面。
(7)這里也提供了三種更新方式,各自是Update all components(更新全部組件)、Update plugins(更新插件)和Upload your own plugin archive(上傳自己的插件文檔)。用戶選擇想要的更新方式后。單擊Continuebutton,就可以開始更新。更新完畢后。右上角(鈴鐺)圖標處會提示更新成功,如圖1.31所看到的。
圖1.31 軟件更新成功 圖1.32 生成挑戰碼
2.離線更新
以上的更新方式屬於在線更新。
使用這樣的方式更新的話。必需要確定自己的網絡一直處於正常狀態。假設用戶不能確認自己網絡的話能夠使用離線更新方式。
這樣的方式不需要Nessus系統連接必須連接到互聯網。以下將介紹離線更新的方式。
【演示樣例1-4】以下將以Windows 7操作系統為例,介紹離線更新插件的方法。
(1)獲取一個激活碼。因為獲取的激活碼,僅僅能使用一次。所以。假設再次激活服務。須要又一次獲取一個激活碼。
(2)生成一個挑戰碼。運行命令例如以下所看到的:
- C:\Program Files\Tenable\Nessus> nessuscli.exe fetch --challenge
運行以上命令后,顯示效果如圖1.32所看到的。
提示:假設是在Linux系統中的話,運行命令例如以下所看到的:
- [root@localhost ~]# /opt/nessus/sbin/nessuscli fetch --challenge
(3)從上圖中能夠看到生成了一個激活碼。接下來,就能夠離線下載Nessus插件了。
當中,下載地址為https://plugins.nessus.org/v2/offline.php。在瀏覽器中成功訪問該地址后,將顯示如圖1.33所看到的的界面。
(4)在該界面的第一行文本框中輸入步驟(2)中獲取到的挑戰碼,第二行文本框中輸入獲取到的激活碼。然后,單擊Submitbutton。就可以開始下載插件。
在該界面獲取到的是6.3及更新的插件。假設用戶想要獲取版本號為6.3之前插件的話,在單擊圖中箭頭指的here命令,將會跳轉到還有一個頁面,如圖1.34所看到的。
圖1.33 離線下載插件 圖1.34 下載舊版本號的插件
(5)該界面和圖1.31顯示的內容是一樣的。這里相同輸入生成的挑戰碼和激活碼。就可以獲取舊版本號的插件。
Nessus中用戶管理
用戶管理是Nessus額外提供的一種功能。在一個大型企業環境中。或使用Nessus的人比較多時,對用戶進行管理是很實用的。當在這樣的情況下使用Nessus掃描時,管理員能夠為多個掃描用戶設置不同的安全級別。
Nessus提供了兩種不同的用戶角色,各自是Administrator(管理員)和Standard(普通用戶)。
當中,Administrator角色的用戶能夠訪問Nessus中的全部功能;Standard角色的用戶對部分功能是受限制的,如軟件更新、用戶管理及高級設置等。以下將介紹對Nessus中用戶管理的方法。
1.新建用戶
在Nessus的設置界面選擇Accounts選項卡,將顯示如圖1.35所看到的的界面。
圖1.35 賬戶設置界面 圖1.36 新建用戶
在該界面單擊右上角的New Userbutton,將打開如圖1.36所看到的的界面。
在該界面輸入要創建的username和password。User Role相應的文本框有兩個選項。各自是Standard和System Administrator。當中。Standard選項表示創建的用戶為普通用戶;System Administrator選項表示創建的用戶為管理員用戶。然后單擊Savebutton,將看到如圖1.37所看到的的界面。
圖1.37 用戶界面 圖1.38 刪除用戶
從該界面能夠看到成功創建了名為user用戶,類型為Standard。
2.刪除用戶
當Nessus掃描不須要某用戶時,就可以將該用戶刪除。詳細方法例如以下所看到的:
(1)打開用戶設置界面,如圖1.31所看到的。
(2)在該界面選擇要刪除的用戶,然后,單擊username后面的(錯號)圖標就可以刪除用戶。或者,勾選username前面的復選框。
此時,在搜索框的左側將會出現一個Deletebutton,如圖1.38所看到的。然后,單擊Deletebutton,將顯示如圖1.39所看到的的界面。
圖1.39 確認刪除用戶 圖1.40 編輯用戶界面
該界面提示是否確定要刪除該用戶。
假設確認沒問題。則單擊Deletebutton,就可以成功刪除該用戶。
3.改動已存在用戶角色
在用戶界面(圖1.31)中單擊要改動角色的用戶。就可以改變用戶的角色。比如。編輯user用戶。在用戶界面單擊user用戶后。將顯示如圖1.40所看到的的界面。
從該界面能夠看到user用戶的角色為Standard。這里單擊User Role相應文本框后面的小三角。就可以選擇要改動角色。
比如。改動為System Administrator角色。將顯示如圖1.41所看到的的界面。
圖1.41 改動用戶角色 圖1.42 改動password
此時,用戶角色已成功改動。接下來。須要單擊Savebutton保存設置。
否則,設置無效。
4.改動用戶password
改動password也是在用戶設置界面改動的。相同,單擊想要改動password的用戶。然后。單擊左側欄中的Change Password選項卡,將顯示如圖1.42所看到的的界面。
在該界面輸入要又一次設置的新password。然后單擊Savebutton。就可以成功改動其用戶password。
Nessus中通訊設置
這里的通訊設置指的是設置選項中的Communication選項卡。在該選項卡設置中,包含兩個設置選項,各自是Proxy Server和SMTP Server。以下分別介紹這兩種服務的設置方式。
圖1.43 Proxy Server設置界面 圖1.44 SMTP服務設置界面
1.Proxy服務
Proxy(代理)服務用於轉發HTTP請求。假設網絡組織須要時。Nessus將使用該設置實現插件更新,並與遠程掃描者進行通信。以下將介紹Proxy服務的設置方法。
例如以下所看到的:
(1)在設置界面選擇Communication選項卡,將顯示如圖1.43所看到的的界面。
從該界面能夠看到,這里共同擁有五個字段。可是,僅僅有Host和Port字段是必須的。Username、Password和User-Agent三個字段是可選的。以下將分別介紹每一個字段的含義,例如以下所看到的:
- q Host:代理server的主機名名或IP。
- q Port:代理server連接的port號。
- q Username:代理server連接的username。
- q Password:代理server連接的usernamepassword。
- q User-Agent:假設代理server使用指定HTTP用戶代理過濾器的話,則設置該字段。
該字段主要用於自己定義用代理字符串時使用。
2. SMTP服務
SMTP(Simple Mail Transfer Protocol。簡單郵件傳輸協議)是用於發送和接收郵件的標准。一旦配置了SMTP服務。Nessus會將掃描結果通過郵件的形式發送到“Email Notifications”選項指定的收件人。當中,SMTP服務的設置界面如圖1.44所看到的。
以下將對SMTP服務設置界面的每一個字段進行具體介紹。
例如以下所看到的:
- q Host:SMTP服務的主機名或IP地址。
- q Port:用於連接SMTP服務的port號。
- q From(sender email):發送掃描報告的郵件地址。
- q Encryption:使用哪種加密方式加密郵件內容。Nessus提供了三種方式,各自是Force SSL、Force TLS和Use TLS if available。默認。不使用加密(No Encryption)。
- q Hostname(for email links):Nessus服務的主機名或IP地址。
- q Auth Method:SMTP服務認證方法。
Nessus提供了五種認證方法,各自是PLAIN、LOGIN、NTLM和CRAM-MD5。默認,沒有使用認證方法,即NONE。
- q Username:用於認證SMTP服務的username
- q Password:用於認證SMTP服務用戶相應的password。
提示:在SMTP服務設置界面,假設沒有使用不論什么認證方法的話,將不會出現Username和Password字段