1. 程式人生 > >Metasploit Framework(1)基本命令、簡單使用

Metasploit Framework(1)基本命令、簡單使用

文章的格式也許不是很好看,也沒有什麼合理的順序

完全是想到什麼寫一些什麼,但各個方面都涵蓋到了

能耐下心看的朋友歡迎一起學習,大牛和槓精們請繞道

 

基本的控制檯命令介紹:

banner

檢視metasploit的基本資訊

 

connect

這裡理解成kali的nc命令,基本一致

 

簡單使用下:

 

show

列出各種各樣的模組,後邊會經常使用

 

search

顧名思義,搜尋,比如我搜索一個微軟的漏洞,顯示的是檔案目錄

(/usr/share/metasploit-framework/.....)

 

可以過濾性地搜尋

 

不只有name篩選,還有型別type,平臺platform等(-h可以看看都可以搜哪些)

 

use

使用模組的命令:比如我下面使用著名的ms08-067

 

接下來就可以輸入一些特定模組的特定的命令

比如:show options,show targets,這些具體在後面介紹

 

資料庫方面的操作:

db_status:檢視是否連線到資料庫,如果失敗的話重啟下

 

db_disconnect:斷開資料庫連線(通常用不著)

 

db_connect:連線其他資料庫

 

db_rebuild_cache:開啟資料庫快取任務(後邊如果用到資料庫的東西,可以更快速呼叫)

 

db_nmap:其實和Nmap命令一致,不過會把掃描結果存入資料庫

 

db_export:匯出資料庫,-f引數:儲存格式,後邊接路徑

使用:db_export -f xml /root/xxx/a.xml

 

有匯出就有匯入:

db_import

使用:db_import /root/xxx/a.xml

注意:可以匯入一些工具的檔案,比如可以匯入Nmap掃描結果的輸出檔案

 

這裡順便再介紹一個命令hosts,檢視主機記錄:

示例:

我先hosts命令檢視是否儲存了主機,Nmap掃描一個IP,再看看有沒有更新:

 

下面我再hosts:發現多了一個記錄

 

我想具體看下這個記錄:

 

現在只掃描了一個:如果掃描了很多IP,我想只看開啟的IP:加一個-u引數即可

hosts 1.1.1.1 -u

 

當然還有-c過濾引數:只看某一列

 

還有一個有用的引數-S搜尋功能

 

 

上邊獲取了主機訊息,那麼埠資訊呢?

services:

 

這裡就查到了剛才Nmap掃描到的埠的資訊:

 

如果我想搜尋開啟3306埠的資訊:

 

-S引數是全域性搜尋,如果只搜尋開放某個埠就需要引數-p了

埠可以是一個,也可以是一個範圍(-p 100-200) 

 

可以配合上邊的-c引數來使用:

 

 

接下來用Metasploit framework做些小測試

後邊的命令是一些需要具體目標的命令:

因此,我特意開啟一個Metasploitable虛擬機器

ifconfig檢視到這個機器IP:192.168.163.129

 

我利用mysql_login模組嘗試破解一個mysql資料庫:

使用這個模組:use+路徑

 

依次設定使用者名稱,檢查是否空密碼,設定目標IP:

 

可以使用剛才介紹的show options命令看看設定的結果

 

下面執行這個模組:

一種是run,一種是exploit:

由於目標機器本身就有漏洞,直接成功了:

 

這個結果就會存入資料庫中:使用命令creds檢視資料庫

順便說一下,以後如果掃描到了漏洞,也可以使用vulns檢視資料庫中儲存的漏洞

 

掃描完之後,可以用unset取消引數的設定

 

有一種設定:設定全域性引數:setg(重啟metasploit framework後這個全域性引數就會失效)

比如:setg RHOSTS 192.168.163.129 

那麼接下來使用任何模組預設都會設定好這個引數

 

當然全面引數取消也很簡單:unsetg [引數名]

 

當然,為了防止設定好全域性引數重啟後失效,可以用一個新的命令:save

 

下邊再做一個簡單的案例:

我用經典的MS08-067漏洞來滲透一個windowsXP系統:

開啟一個windowsXP機器:關閉防火牆

檢視到這個機器的IP:192.168.163.130

查詢完整路徑然後使用模組:

 

設定好目標IP:

 

檢視目標targets都有哪些:找到其中對應的序號

比如我這裡對應的是2號

 

再設定payload為反連線的payload(目標機器會主動和我TCP連線)

 

既然要主動連線,就需要設定一個連線的IP:當前Kali機器的IP

設定好之後看看設定的引數:

 

OK,沒有問題,可以執行了!

 

後來發現IP設定錯了,我改了下,這裡就不記錄了:

 

但是滲透失敗了,筆記MS08-067是老漏洞了,XP系統不好滲透

 

但是!!雖說失敗了,但是目標機器被我搞崩潰了,這也算是一種攻擊了吧,哈哈。

 

如果成功了的話,就可以獲取shell了

 

對了,我前幾天用緩衝區溢位漏洞拿下了這臺XP的shell,有興趣的朋友可以一看:

https://www.cnblogs.com/xuyiqing/p/9875951.html

 

可以使用exploit -j引數來後臺獲取shell

如果是後臺獲取的shell可以用sessions -i 來操作

 

load命令:載入外部的工具

比如我想用nessus或者openvas,但不可以直接使用

需要:load openvas

具體在後邊詳細說

 

有load就有unload,取消載入

 

這一篇就到這裡,後面會介紹具體的使用