Коллектив авторов - Защита от хакеров корпоративных сетей
- Название:Защита от хакеров корпоративных сетей
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Коллектив авторов - Защита от хакеров корпоративных сетей краткое содержание
В книге рассматривается современный взгляд на хакерство, реинжиниринг и защиту информации. Авторы предлагают читателям список законов, которые определяют работу систем компьютерной безопасности, рассказывают, как можно применять эти законы в хакерских технологиях. Описываются типы атак и возможный ущерб, который они могут нанести компьютерным системам. В книге широко представлены различные методы хакинга, такие, как поиск различий, методы распознавания шифров, основы их вскрытия и схемы кодирования. Освещаются проблемы безопасности, возникающие в результате непредсказуемого ввода данных пользователем, методы использования машинно-ориентированного языка, возможности применения мониторинга сетевых коммуникаций, механизмы туннелирования для перехвата сетевого трафика. В книге представлены основные сведения о хакерстве аппаратных средств, вирусах, троянских конях и червях. В этой книге читатель узнает о методах, которые в случае неправильного их применения приведут к нарушению законодательства и связанным с этим последствиям.
Лучшая защита – это нападение. Другими словами, единственный способ остановить хакера заключается в том, чтобы думать, как он. Эти фразы олицетворяют подход, который, по мнению авторов, позволит наилучшим образом обеспечить безопасность информационной системы.
Перевод: Александр Петренко
Защита от хакеров корпоративных сетей - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
Пример уязвимой программы
На примере уязвимой программы рассмотрим, каким образом злоумышленник может использовать уязвимости форматирующей строки для достижения своих целей. Наибольший интерес представляют способы удаленного использования уязвимостей форматирующей строки. О степени серьезности уязвимости форматирующей строки можно судить по тому, с какой легкостью злоумышленник может внедриться в сетевой компьютер через Интернет без каких-либо мандатов – учетных записей с параметрами доступа пользователя, сформированными после его успешной аутентификации. Для примера лучше всего рассмотреть уязвимость форматирующей строки в программе широко известного или уважаемого автора, для того чтобы показать, что уязвимости форматирующей строки могут существовать, и существуют, в программах, которые считаются хорошо написанными. Кроме того, пример уязвимой программы должен позволить изучить различные вопросы использования уязвимости форматирующей строки, как, например, вывод отформатированной строки.
В примере рассматривается программа, получившая название rwhoisd. Программа rwhoisd, или демон RWHOIS, является одной из реализаций сервиса RWHOIS. Научно-исследовательское отделение компании Network Solutions, Inc., в настоящее время поддерживает программу rwhoisd сервера RWHOIS, исходные тексты которой доступны по лицензии GNU PublicLicense.
Приоткрывая завесу
Примеры важных уязвимостей форматирующей строки
Кроме упомянутой уязвимости форматирующей строки FTP-демона Вашингтонского университета при передаче параметра команде SITE EXEC, следует пару слов сказать о некоторых других уязвимостях. Часть из них была использована саморазмножающимися вирусами (червями) и утилитами, нашедшими широкое применение среди злоумышленников, в результате применения которых были скомпрометированы тысячи хостов.
IRIX telnetdclient.Включенные в форматирующую строку данные клиента, которая передавалась как параметр функции syslog(), позволяли удаленному злоумышленнику выполнить произвольный код безо всякой аутентификации. Эта уязвимость была обнаружена Last Stage of Delirium. Дополнительные сведения можно найти по адресу www.securityfocus.com/bid/1572.
Linux rpc.statd.Эта уязвимость форматирующей строки также обязана своим происхождением неправильному использованию функции syslog(). Она позволяет удаленному злоумышленнику получить права суперпользователя. Уязвимость была обнаружена Дэниелом Джакобоуитцом (Daniel Jacobowitz) и опубликована 16 июля 2000 года в извещении Bugtraq. Материалы по данному вопросу опубликованы по адресу www.securityfocus.com/bid/1480.
Cfingerd.Очередная уязвимость форматирующей строки функции syslog() была обнаружена Мигелем Ласзло (Megyer Laszlo). Если злоумышленник успешно воспользуется ей, то он получит возможность удаленно управлять основным хостом. Описание уязвимости может быть найдено по адресу www.securityfocus.com/bid/2576. Multiple Vendor LibC Locale Implementation.Юко Пуннонен (Jouko Pynn^en) и Core SDI независимо друг от друга обнаружили уязвимость форматирующей строки в реализации библиотеки языка C, поставляемой с некоторыми UNIX-системами. Выявленная уязвимость позволяла злоумышленнику повысить свои права на локальной машине. Подробный отчет о проделанной работе можно найти по адресу www.securityfocus.com/bid/1634.
Multiple CDE Vendor rpc.ttdbserverdISSX-Force обнаружила уязвимость, связанную с неправильным использованием функции syslog() в версиях демона серверной базы данных ToolTalk, поставляемой в нескольких операционных системах с CDE. Благодаря этой уязвимости удаленный злоумышленник, не прошедший аутентификацию, может выполнить произвольный код на атакованном хосте. Подробные сведения по этому вопросу можно найти по адресу www.securityfocus.com/bid/3382.
Классическую удаленную уязвимость форматирующей строки можно найти в версиях программы rwhoisd 1.5.7.1 и более ранних. Она позволяла удаленному злоумышленнику после подключения к серверу выполнить произвольный код. Впервые об уязвимости стало известно благодаря сообщению списка рассылки Bugtraq. Заархивированное сообщение может быть найдено по адресу www.securityfocus.com/archive/1/222756.
Для того чтобы понять уязвимость форматирующей строки программы rwhoisd, следует внимательно изучить ее исходный текст. В главе рассмотрена версия программы 1.5.7.1. На момент написания книги ее можно было загрузить по адресу www.rwhois.net/ftp.
Уязвимость проявляется во время вывода сообщения об ошибке при неверном задании аргумента команды – soaв командной строке.
Сообщение об ошибке формируется и выводится функцией print_error(). Эта функция вызывается повсюду в исходном тексте программы сервера для обработки ошибок клиента или пользователя. Входными параметрами функции являются номер ошибки в формате целого числа, форматирующая строка и переменное число аргументов.
Исходный текст этой функции может быть найден в файле common/ client_msgs.c (путь указан относительно директории, созданной во время восстановления из архива исходного текста программы версии 1.5.7.1).
/* prints to stdout the error messages. Format: %error ### message
text, where ### follows rfc 640 */
void
print_error(va_alist)
va_dcl
{
va_list list;
int i;
int err_no;
char *format;
if (printed_error_flag)
{
return;
}
va_start(list);
err_no = va_arg(list, int);
for (i = 0; i < N_ERRS; i++)
{
if (errs[i].err_no == err_no)
{
printf(“%%error %s”, errs[i].msg);
break;
}
}
format = va_arg(list, char*);
if (*format)
{
printf(“: ”);
}
vprintf(format, list);
va_end(list);
printf(“\n”);
printed_error_flag = TRUE;
}В исходном тексте жирным шрифтом отмечено место передачи входных данных программы функции vprintf(). Причиной уязвимости форматирующей строки является не функция vprintf(), а то, как ее используют. Функция print_ error() полагается на то, что вызвавшая ее функция передаст ей правильные входные данные: форматирующую строку и соответствующие ей переменные.
В примере рассматривается функция print_error(), потому что она наглядно демонстрирует причины возникновения уязвимостей форматирующей строки, которые могут быть использованы злоумышленником. Во многих программах есть функции, похожие на print_error(). В некотором смысле функция print_error() подобно функции syslog() служит оболочкой для выдачи диагностики об ошибке. Ее параметрами являются код ошибки и параметры, аналогичные параметрам функции printf(). Как уже обсуждалось в начале главы, проблема состоит в том, что программисты могут забыть о возможности передачи злоумышленником форматирующей строки через входные параметры.
Читать дальшеИнтервал:
Закладка: