Metasploit漏洞掃描
漏洞掃描是自動在目標中尋找和發現安全弱點。
漏洞掃描器會在網絡上和對方產生大量的流量,會暴露自己的行為過程,如此就不建議你使用漏掃了。
基本的漏洞掃描
- 我們首先使用netcat來獲取目標主機的旗幟(旗幟獲取指的是連接到一個遠程服務並讀取特征標識)
我們連接到一個運行在TCP端口80的Web服務器,並發出一個GET HTTP請求
root > nc [IP] [port端口]
返回的信息告訴我們:1-目標的server是基於Apache2的web服務器系統。
- 確定了目標的web服務器系統,就可以對目標進行漏掃(工具掃描)
使用NeXpose進行掃描
NeXpose是一款漏洞掃描器,它通過對網絡進行掃描,查找出網絡上正在運行的設備,最終識別處OS和應用程序的安全漏洞,NeXpose會對掃描結果進行分析和處理,生成各種類型的報告。
- 略過,因為沒法注冊下載
使用Nessus進行掃描
-
安裝Nessus:
通過網絡將Nessus的deb文件下載到kali中並執行以下程序:
root > dpkg -i Nessus-6.10.5-debian6_amd64.deb
- 啟動Nessus服務
root > service nessusd start
- 進入Nessus的Web管理頁面
https://[IP]:8834
該頁面需要使用SSL安全套接層協議訪問(需要額外給安全訪問證書)
- 首次訪問
首次訪問該頁面會注冊賬戶,要記住賬號和Password哦!
ps:還需要激活碼,在下載時會填賬號,郵箱收到郵件的哦!
首次進入Web頁面,會做很多操作,但是以后只需要賬號就一路暢通
ps:我的賬號和密碼都是 root
將Nessus結果導入msf框架中
按照如上的使用教程,我們會得到一個掃描結果,然后導出為.nessus文件格式。
進入msf終端,使用”db_connect“創建一個新的數據庫,然后使用”db_import“,並在命令后加上導出的報告文件名(nessus文件)導入進數據庫中。
msf > db_connect postgres:root@127.0.0.1/[庫名]
msf > db_import /home/mirror/*.nessus[具體的nessus文件路徑] # 將文件導入數據庫中
msf > db_hosts -c address,svcs,vulns #查看數據庫內容
上面圖示:連接數據表、導入文件到數據表、檢查導入是否正確
db_hosts會輸出一個列表,里面包含了目標的IP地址、探測到的服務數量、Nessus在目標發現的漏洞數量
- 如果想要顯示一個詳細的漏洞列表
msf > db_vulns
在msf中使用Nessus進行掃描
除了Web頁面的掃描操作之外,也可以在終端命令行中操作;插件允許通過msf框架對nessus進行完全的控制,可以運用來掃描、分析、甚至是發起滲透攻擊。
msf > db_destroy postgres:root@127.0.0.1/nessus #刪除數據庫
msf > db_connect postgres:root@127.0.0.1/nessuss #新建一個數據庫(連接)
msf > load nessus #加載nessus插件
msf > nessus_help #查看nessus橋插件的命令操作
- 使用msf的nessus橋插件進行掃描(必須使用nessus_connenct命令登陸到Nessus服務器中)
msf > nessus_connenct [user]:[pass]@[ip]:[port]
- 列出掃描的策略的ID號(已定義的)
msf > nessus_policy_list
- 建立並執行掃描策略
msf > nessus_scan_new <UUID of Policy> <Scan name> <Description> <Targets>
- 借鑒文獻
專用漏洞掃描器
驗證SMB登錄
可以使用SMB登錄掃描器對大量的主機的用戶名和口令進行猜解;但是由此大量的掃描,目標的IP主機的系統日志必然會留下痕跡。
使用use選擇smb_login模塊后,可以運行show_options命令查看參數列表;msf允許你指定用戶用戶名和口令的組合、用戶名列表和口令列表的組合,或前兩者中各要素的組合。用RHOST參數設置一段IP地址(目標),然后使用一個固定的用戶名和口令。
msf > use scanner/smb/smb_login
msf auxiliary(smb_login) > show options
msf auxiliary(smb_login) > set RHOSTS [IP]
msf auxiliary(smb_login) > set SMBUser [user]
msf auxiliary(smb_login) > set SMBPass [pass]
msf auxiliary(smb_login) > run