| Дата публикации: | 14.02.2003 |
| Всего просмотров: | 1389 |
| Опасность: | Средняя |
| Наличие исправления: | Нет |
| Количество уязвимостей: | 1 |
| CVE ID: | Нет данных |
| Вектор эксплуатации: | Удаленная |
| Воздействие: | Обход ограничений безопасности |
| CWE ID: | Нет данных |
| Наличие эксплоита: | Нет данных |
| Уязвимые продукты: | CGI::Lite 2.x |
| Описание: | Уязвимость в проверке правильности ввода обнаружена в CGI::Lite. Удаленный пользователь может представить специально сформированный ввод, который обойдет механизм фильтрации опасного кода. Уязвимость присутствует в функции escape_dangerous_chars(). Функция не в состоянии фильтровать большинство метасимволов оболочки, в результате удаленный атакующий может выполнить произвольные команды оболочки на целевом сервере с привилегиями Web демона. Пример:
#!/usr/bin/perl -w
use strict;
use CGI::Lite;
my $cgi = new CGI::Lite;
my %form = $cgi->parse_form_data;
my $recipient = $form{'recipient'};
my $message = "From: sender\nSubject: Hello\n\nHello my friend!\n\n";
$recipient = escape_dangerous_chars ($recipient);
open (SM, "|/usr/sbin/sendmail -f rfg $recipient");
print SM $message;
close SM;
print "Content-Type: text/html\n\n";
print "<HTML>\n";
print "<HEAD></HEAD>\n";
print "<BODY>\n";
print "Thank you. Your request has been processed\n";
print "</BODY>\n";
print "</HTML>\n";
Уязвимость обнаружена в CGI::Lite 2.0
|
| Ссылки: | Security bug in CGI::Lite::escape_dangerous_chars() function |