15.07.2013 Views

第十二章教學投影片

第十二章教學投影片

第十二章教學投影片

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

第12章:Nessus<br />

12-1 Nessus簡介<br />

12-2 Nessus的安裝方法<br />

12-3 Nessus的使用


Nessus發展歷史<br />

R. Deraison成立一個計劃,命名為Nessus,在透過許多<br />

同好的協助與網路社群討論修改,於1998年4月首次發<br />

表Nessus<br />

免費下載、功能強大、架構完整、更新迅速且相當容<br />

易使用的主機安全稽核掃瞄軟體<br />

發展目的是幫助系統管理者搜尋系統主機的弱點所<br />

在,讓系統管理者對主機進行錯誤的更正或防護,以<br />

避免被入侵者攻擊<br />

Nessus的可延伸性使得掃描更具有發展空間,因為它<br />

隨意增加原本所沒有的偵測模式,而外掛模組(Plugins)<br />

就是對每個安全漏洞的描述和稽核,因此擴充外掛模<br />

組就可提升軟體的稽核能力


Nessus主要特點<br />

外掛Plugins:使用者可依需求修改外掛模組,而不需<br />

修改內部核心的程式碼<br />

NASL擴充語言:為了迅速簡易撰寫測試掃描程式,系<br />

統業者設計一套Nessus Attack Scripting Language,不<br />

需修改Nessus的掃描引擎核心程式,即可自行達到各<br />

項要求<br />

時常性更新弱點資料庫:Nessus的開發維護人員每天<br />

專注於檢查最新的安全漏洞


Nessus主要特點(續)<br />

Client-Server架構:Nessus是由Nessus伺服器和Nessus<br />

用戶端組成,而伺服器負責測試掃描,以外掛模組的<br />

方式來增加測試項目,將測試結果回報給用戶端檢視<br />

報告<br />

同時測試多台電腦:此功能會為伺服器主機的能力而<br />

異,但Nessus系統可同時測試多台目標主機<br />

聰明的通信埠識別能力:Nessus在測試目標並不會依<br />

循IANA所指派的通信埠編號。例:Nessus能辨別出一<br />

個開在port 6386的網頁伺服器


Nessus主要特點(續)<br />

重覆服務的檢測:如果一台主機同時架設兩個網頁伺<br />

服器,一個在port 80而另一個在port 8080,Nessus則會<br />

將兩個通信埠都測試出來<br />

完整的報告:有多種輸出報表格式,分析報告包含系<br />

統所檢驗出的漏洞訊息、分級弱點的嚴重性與提供解<br />

決方案<br />

完全支援SSL:Nessus可測試與SSL結合的服務,例如<br />

HTTPs、SMTPs、IMAPs等等<br />

獨立的開發者:Nessus的開發者是完全獨立,跟商業<br />

軟體廠商沒有關聯,所以不會因與某些廠商有關而隱<br />

瞞任何的安全弱點


Nessus操作平台<br />

Nessus由伺服器端與用戶端兩個部份組成,伺服器主<br />

要是負責測試執行,可安裝在現今常見的主流作業系<br />

統上<br />

用戶端Nessus Client主要是一個前端介面,提供使用者<br />

登入Nessus伺服器,選擇要執行的測試與顯示測試結<br />

果<br />

伺服器端與用戶端軟體均可在Nessus官方網站下載。<br />

伺服器端的Nessusd預設TCP埠為1241,用戶端會談<br />

(session)時會使用以E1Gamal為基礎的公開金鑰方式做<br />

認證,以及每次連線傳輸資料都經過串流加密,避免<br />

資料被竊取後破解洩漏機密


Nessus安裝-Linux<br />

最新版的Nessus,需至官方網站http://www.nessus.org<br />

http://www.nessus.org<br />

下載二進位的安裝程式<br />

Fedora 8系統上安裝Nessus。首先需下載Nessus官方提<br />

供的Fedora 8安裝程式,該檔名為Nessus-3.2.0fc8.i386.rpm,目前最新版本為3.2.0版<br />

Nessus Client圖形操作介面程式 ,從Nessus官方網站下<br />

載,本書下載的檔名為NessusClient-3.2.0-fc8.i386.rpm<br />

下載完此兩個檔案之後,使用rpm安裝套件,以下操作<br />

請使用root權限:<br />

rpm –ivh Nessus-3.2.0-fc8.i386.rpm<br />

rpm –ivh NessusClient-3.2.0-fc8.i386.rpm


Nessus安裝-Windows<br />

要安裝Windows版的Nessus一樣可至<br />

http://www.nessus.org<br />

http:// www.nessus.org下載<br />

本書截稿前最新版3.2.0的檔名為Nessus-3.2.0.exe。<br />

此安裝程式包含伺服器端Nessusd與用戶端Nessus<br />

Client,所以安裝完畢後即可馬上設定使用。


Nessus的使用 -Linux<br />

註冊<br />

以本書示範的環境為例,在安裝完Nessus-3.2.0-fc8.i386.rpm之<br />

後,接下來要先進行註冊的動作,請使用root身分執行以下命<br />

令:<br />

/opt/nessus/bin/nessus-fetch --register xxxx-xxxx-xxxx-xxxx-xxxx<br />

(xxxx-xxxx-xxxx-xxxx-xxxx請根據您所取得的序號來代換 )<br />

新增使用者<br />

若要新增使用者,則需要執行Nessus內附的nessus-adduser指令<br />

來新增使用者 ,範例請詳見書本內容。


Nessus的使用 –Windows<br />

註冊<br />

安裝過程中出現對<br />

話框要求輸入序<br />

號,使用者也可以<br />

先跳過此步驟<br />

稍後再從[開始] -><br />

[程式集] -><br />

[Tenable Network<br />

Security] -> [Nessus]<br />

-> [Product<br />

Registration]來進行<br />

輸入序號的動作,<br />

如右圖


Nessus的使用 –Windows(續)<br />

新增使用者<br />

請點選[開始] -> [程式<br />

集] -> [Tenable Network<br />

Security] -> [Nessus] -><br />

[User Management]<br />

點選「Add User」來新<br />

增使用者,請輸入帳號<br />

名稱以及密碼,其餘皆<br />

用預設值即可,按下<br />

「OK」及新增完畢,<br />

如右圖


Nessus Client功能畫面(一)<br />

執行Nessus Client<br />

點選[應用程式] -><br />

[網際網路] -> [Nessus<br />

Client]來啟動它 ,如右<br />


Nessus Client功能畫面(二)


Nessus Client功能畫面(三)


Nessus Client功能畫面(四)


Nessus Client功能畫面(五)


Nessus Client功能設定-Options頁面<br />

Number of hosts in parallel:限制同一時間進行掃描的主機數目<br />

Number of checks in parallel:限制同一時間進行掃描的檢測次數。例如,<br />

同一時間限制只能掃描20台,每台測試30個程序,意指在這一段時間<br />

內,伺服器總共工作600個程序。<br />

Port scanner range:掃描埠號的範圍,如1-100代表掃描範圍為1到100。<br />

Safe checks:安全檢查。若是啟用此選項,則一些具有破壞性的外掛模<br />

組就不會被載入執行。預設是啟用的。<br />

Designate hosts by their DNS name:以DNS紀錄來表示每一個目標主機<br />

Save knowledge base on disk:將知識庫的資料儲存在硬碟上。知識庫的<br />

作用是為了保存已掃瞄主機所收集的資訊,包括主機開放哪些port、使用<br />

何種作業系統類型等,主要目的是為了減少不必要的測試,譬如說,<br />

plugins A掃描結果可以給其他的plugins共用,省去已知的測試結果。該<br />

功能設計的出發點是儘量利用其他已知的檢查結果,減少佔用網路資<br />

源,同時也可以提高效率<br />

Save a packet capture of the scan:儲存掃描過程中所擷取到的封包。<br />

Log details of the scan on the server:將掃描過程紀錄儲存在Nessus伺服器<br />

端。<br />

Port scanners to use:此選項可以選擇要使用哪一類型的部號掃描器來掃<br />

描目標主機。


Nessus Client功能設定-Policy頁面<br />

Policy name:我們可對自訂的掃描策略命名,<br />

以幫助記憶。<br />

Share this policy across multiple sessions:將此<br />

自訂的掃描策略分享給多個sessions。這裡每一<br />

個session代表著一個掃描任務。<br />

Save the passwords as clear text:將掃描過程中<br />

檢測出來的密碼相關欄位以明碼儲存。除非有<br />

特殊需要,不然不建議啟用此選項,以免私密<br />

資料外洩。<br />

Comments:可以加入註解以幫助記憶。


Nessus Client功能設定-Credentials頁面<br />

此頁面可針對特定的通訊協定來填入已知的帳號密碼<br />

等資訊,用來做進一步的探測。一般來說如果做的是<br />

黑箱測試,則此頁面留白。


Nessus Client功能設定-Plugin Selection頁面<br />

此頁面用來勾選預載入的外掛模組,來檢測目標主<br />

機。一般建議這裡使用預設值即可,使用者也可點選<br />

「Enable all」來進行全面的弱點掃描。


Nessus Client功能設定-Network頁面<br />

Reduce the number of connections in parallel on<br />

congestion:若網路擁塞則自動降低連線數量。<br />

Use the kernel congestion detection (Linux only) :使用<br />

系統核心支援的網路擁塞偵測機制,只有Linux下才可<br />

使用此參數。<br />

Stop scanning hosts turned off during the audit:在進行弱<br />

點評估過程時停止埠號的掃描,有些應用程式,若是<br />

在檢測時同時探測該埠號會有不正常的回應。<br />

Max simultaneous TCP sessions per scan:限制每個掃描<br />

TCP sessions同時最大數量。<br />

Max simultaneous TCP sessions per host:限制每個目標<br />

主機TCP sessions同時最大數量。<br />

Network receive timeout (in seconds) :逾時時間 (以秒<br />

為單位)。


Nessus Client功能設定-Advanced<br />

此頁面的下拉選單可供進<br />

階使用者針對特定的服務<br />

或是協定進行更進一步的<br />

參數設定。<br />

以上每個頁面設定完畢<br />

後,可按下「Save」來儲<br />

存掃描策略,此時可看到<br />

右半部出現了我們剛剛自<br />

訂的「internal test」,如右<br />

圖<br />

接著我們要新增所要掃描<br />

的目標主機,按下左半部<br />

的「+」按鈕來新增,則會<br />

出現新增目標主機的對話<br />


Nessus Client功能畫面(六)<br />

single host:掃描單一主機 。<br />

IP Range:可指定要掃描的IP位址範圍。<br />

Subnet:使用Network/Netmask表示法來表示要掃描的Subnet範圍。<br />

Hosts in file:若是預掃描的主機範圍不連貫,我們可以將掃描主機的IP<br />

位址存成純文字檔,再由此載入。語法為一行一組IP位址。


Nessus Client功能畫面(七)<br />

掃描任務進行中,如上圖


Nessus Client功能畫面(八)<br />

掃描結果<br />

←代表有已知弱點


Nessus Client功能畫面(九)<br />

Nessus Client還<br />

支援將掃描結果<br />

輸出成HTML格<br />

式的報表<br />

按下<br />

「Export…」來<br />

將報表輸出成的<br />

網頁報表,如右<br />


Nessus Client-掃描資訊說明<br />

無論是掃描結果或是產生的報表,皆內含十分有用的<br />

資訊可供網管人員參考,作為改進的依據。介紹較為<br />

重要的項目:<br />

外掛模組資訊(Plugin output):顯示此弱點代表的ID<br />

碼,透過這個ID碼可以到Nessus網站找到此弱點更詳<br />

細的說明。<br />

弱點(Vulnerability):顯示風險等級,若是紅色狀況為<br />

嚴重,請立即處理相關安全問題。<br />

狀況描述(Description):描述這個弱點發生的原因。<br />

解決方法(Solution):提供管理人員解決上述弱點的解<br />

決方案與建議。<br />

最後,我們可點選[File] -> [Save As…]來將掃描結果存<br />

檔,可於日後再將此掃描結果讀入。


參考文獻<br />

1. R. Deraison, et al, Nessus Network Auditing,<br />

SYNGRESS, 2004。<br />

2. NESSUS, http://www.nessus.org/。

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!