Metasploit 是什么
Metasploit Framework 是模块化的渗透测试平台,模块按用途分成 exploit、auxiliary、post、payload 等类别。评估中真正需要用到的是 auxiliary 部分的侦察与核对能力,例如服务版本识别、共享枚举、配置核查;exploit 与会话能力会改变目标状态,默认不启用,确需验证要走单独授权。
基本信息
| 运行环境 | Kali、Parrot 或独立安装,入口命令 msfconsole |
|---|---|
| 可用模块 | auxiliary 类侦察与核对模块 |
| 默认禁用 | exploit / payload / 持久化 / 横向移动能力 |
| 使用前提 | 书面授权、隔离环境、变更单与执行记录 |
| 记录要求 | 模块名、参数、时间、目标与输出全部入档 |
典型使用场景
- 服务版本核对:确认补丁状态,作为漏洞验证的辅助证据
- 协议配置检查:SMB 签名、匿名访问等是否开启
- 资产清点:批量识别端口对应服务与版本,补齐资产台账
- 验证客户已知问题:对已被通报的配置缺陷做只读确认
- 补测前核对:确认修复是否真正生效于目标版本
辅助模块使用示例
辅助模块使用示例
msfconsole -q # 安静模式启动
msf6 > search type:auxiliary name:smb # 找侦察类模块
msf6 > use auxiliary/scanner/smb/smb_version # 载入模块
msf6 > show options # 看必填参数
msf6 > set RHOSTS 10.0.10.5 # 限定单个目标
msf6 > set THREADS 1 # 控制并发,降低影响
msf6 > run # 只读取版本信息模块类别与可用性
| 类别 | 作用 | 本类评估是否可执行 |
|---|---|---|
| auxiliary | 侦察、枚举、配置核对 | 可用,限定目标与并发 |
| exploit | 利用漏洞改变目标状态 | 默认禁用,需单独授权 |
| payload / post | 建立会话、后渗透动作 | 禁用,常规评估不做 |
| encoder / evasion | 规避检测 | 禁用,超出评估范围 |
常规评估只输出可验证的配置与版本问题:不留会话、不做命令执行类动作;一次误用 exploit 可能直接改变生产状态。
模块版本要与目标服务匹配再看结果:旧版模块对新型服务常给出错误判断,结论前用其他手段交叉验证。