
- •Содержание
- •Раздел 1. Задачи информационной безопасности и уровни ее обеспечения
- •Тема 1. Основные понятия информационной безопасности
- •Тема 2. Обеспечение информационной безопасности на государственном уровне
- •2.1 Доктрина в области информационной безопасности РФ
- •2.2 Правовая основа системы лицензирования и сертификации в РФ
- •2.3 Категории информации
- •Тема 3. Направления защиты информации в информационных системах
- •3.1 Характеристика направлений защиты информации
- •3.2 Защита информационных объектов (БД)
- •3.2.1 Идентификация и аутентификация
- •3.2.2 Управление доступом
- •3.2.3 Угрозы, специфичные для СУБД
- •Раздел 2 Программно-технические средства защиты информационных систем
- •Тема 4. Ключевые механизмы защиты информационных систем от несанкционированного доступа
- •4.1 Идентификация и аутентификация
- •4.1.1 Парольная аутентификация
- •4.1.2 Использование токенов для аутентификации
- •4.2.Управление доступом
- •4.3 Протоколирование и аудит
- •Тема 5. Криптографические методы и средства для защиты информации
- •5.1 Основные термины и понятия криптографии
- •5.2 Криптоаналитические атаки.
- •5.3 Понятие стойкости алгоритма шифрования
- •5.4 Симметричные криптографические системы
- •5.4.1 Блочные алгоритмы симметричного шифрования
- •5.4.2 Стандарт шифрования Российской Федерации ГОСТ 28147-89
- •5.5 Алгоритмы поточного шифрования
- •5.6 Ассиметричные или двухключевые криптографические системы
- •5.6.1 Системы с открытым ключом
- •5.6.2 Метод RSA
- •5.7.2 Известные алгоритмы ЭП
- •5.7.3 Российские стандарты ЭЦП ГОСТ Р 34.10.94,
- •5.8 Составные криптографические системы
- •5.9 Управление ключами
- •5.9.1 Генерация ключей
- •5.9.2 Накопление ключей
- •5.9.3 Распределение ключей
- •5.9.4 Распределение ключей в асимметричных криптосистемах
- •5.10 Стеганография
- •5.11 Надежность криптосистем
- •Раздел 3. Обеспечение информационной безопасности на уровне предприятия
- •Тема 6. Защита программного обеспечения
- •6.1 Характеристика вредоносных программ
- •6.2 Модели воздействия программных закладок на компьюторы
- •6.3 Защита от программных закладок
- •6.3.1 Защита от внедрения программных закладок
- •6.3.2 Выявление внедренной программной закладки
- •6.4 Клавиатурные шпионы
- •6.4.1 Имитаторы
- •6.4.2 Фильтры
- •6.4.3 Заместители
- •6.5 Парольные взломщики
- •Тема 7. Безопасность распределенных вычислительных систем в Интернет
- •7.1 Особенности безопасности компьютерных сетей
- •7.2 Удаленные атаки на распределенные вычислительные системы
- •7.3.1 Анализ сетевого трафика
- •7.3.2 Подмена доверенного объекта или субъекта распределенной ВС
- •7.3.3 Ложный объект распределенной ВС
- •7.3.4 Отказ в обслуживании
- •7.4.1. Отсутствие выделенного канала связи между объектами РВС
- •7.4.2 Недостаточная идентификация и аутентификация объектов и субъектов РВС
- •7.4.3 Взаимодействие объектов без установления виртуального канала
- •7.4.4 Использование нестойких алгоритмов идентификации объектов при создании виртуального канала
- •7.4.5 Отсутствие контроля за виртуальными каналами связи между объектами РВС
- •7.4.6 Отсутствие в РВС возможности контроля за маршрутом сообщений
- •7.4.7 Отсутствие в РВС полной информации о ее объектах
- •7.4.8 Отсутствие в РВС криптозащиты сообщений
- •7.5 Принципы создания защищенных систем связи в распределенных ВС
- •7.6 Методы защиты от удаленных атак в сети Internet
- •7.6.1 Административные методы защиты от удаленных атак
- •7.6.2. Программно-аппаратные методы защиты от удаленных атак в сети Internet
- •7.7 Удаленные атаки на телекоммуникационные службы
- •7.7.1 Направления атак и типовые сценарии их осуществления в ОС UNIX
- •7.7.2. Причины существования уязвимостей в UNIX-системах
- •7.7.3. Средства автоматизированного контроля безопасности
- •Тема 8. Политика безопасности компьютерных систем и ее реализация
- •8.1 Государственные документы об информационной безопасности
- •8.2 Наиболее распространенные угрозы
- •8.3 Управленческие меры обеспечения информационной безопасности
- •8.3.1 Политика безопасности
- •8.3.2 Программа безопасности - управленческий аспект
- •8.3.3 Управление рисками
- •8.3.4 Безопасность в жизненном цикле системы
- •8.4 Операционные регуляторы
- •8.4.1 Управление персоналом
- •8.4.2 Физическая защита
- •8.4.3 Поддержание работоспособности
- •8.4.4 Реакция на нарушение режима безопасности
- •8.4.5 Планирование восстановительных работ
- •8.5 Анализ современного рынка программно-технических средств защиты информации
- •Тема 9. Защита авторских прав на программное обеспечение
- •9.1 Методы правовой защиты
- •9.2 Методы и средства технологической защиты авторских прав на ПО
- •Учебно-методическое и информационное обеспечение дисциплины
- •Оценочные средства для входного контроля

14.Выкиньте некоторые малоиспользуемые службы (типа finger, talk, rpc) и ужесточите настройки вашего файрвола.
15.Поставьте proxy-сервер для дополнительной аутентификации извне, а также для скрытия адресов и топологии внутренней подсети.
16.Перенесите весь сервис, требующий входящих соединений (http, SMTP), на отдельную машину и оставьте ее в открытой сети. Удалите с этой машины все программы и информацию, не относящуюся к ее назначению. Все остальные машины спрячьте за файрволом с полным отключением входящего трафика.
17.Поставьте защищенную версию UNIX или другой операционной системы
7.7.3. Средства автоматизированного контроля безопасности
Мы уже говорили о полезности средства автоматизированного контроля безопасности отдельного компьютера, а также всей подсети, за которую он отвечает, для системного администратора. Естественно, что такие средства уже появлялись, и чаще других встречаются названия ISS (Internet Security Scaner), COPS (Computer Oracle and Password System) и, конечно, SATAN (Security Administrator Tool for Analizyng Networks). К сожалению, им обычно присущи следующие недостатки:
1.Системозависимость - обычно они рассчитаны на вполне конкретную ОС или даже ее версию;
2.Ненадежность и неадекватность - если эти программы сообщают, что все "О'key" , это совсем не значит, что так на самом деле и есть; и наоборот - некая "уязвимость" , с их точки зрения, может оказаться специальным вариантом конфигурации системы;
3.Малое время жизни - т. к. с момента обнаружения уязвимости до ее искоренения проходит не очень большое время (порядка года), программа быстро устаревает;
4.Неактуальность - более того, с момента выхода программы в свет все новые (поэтому самые опасные) уязвимости оказываются неизвестными для нее, и ее ценность быстро сводится к нулю. Этот недостаток является самым серьезным;
5.Наконец, это возможность их использования с прямо противоположными целями - для поиска изъянов в вашей системе.
Можно заметить явную аналогию этих программ с антивирусными сканерами первого поколения - те знали лишь строго определенный набор вирусов, новые вирусы добавлялись только в следующем выпуске программы. Если посмотреть на возможности современных антивирусных программ - это и оперативное лечение вирусов, и автоматизированное пополнение базы вирусов самим пользователем, и поиск неизвестных вирусов, - то можно пожелать, чтобы хороший сканер интернета смог позаимствовать некоторые из них. В первую очередь - это возможность пополнения базы новыми уязвимостями. Причем в наши дни это несложно сделать - стоит лишь скачивать информацию с источников, занимающихся как раз сбором таких сведений, типа CERT или CIAC.
Программа SATAN
После общего введения мы посчитали невозможным не ознакомить читателя в общих чертах с таким нашумевшим средством, как SATAN, которое иногда считается чуть ли ни самой опасной программой из когда бы то ни было написанных, начиная от своего зловещего названия до возможности влезть чуть ли не в самый защищенный компьютер. Насчет названия сразу подчеркнем, что в момент инсталляции с помощью специальной процедуры вы можете поменять его на SANTA (Security Analysis Network Tool for Administrator), а заодно и зловещего сатану на симпатичного Деда Мороза. А что касается влезания в компьютер (не любой, конечно) - если подобная программа и имеется у хакеров или спецслужб, то она никогда не стала бы свободно распространяться по интернету, как это происходит с SATAN.
На самом деле SATAN - это добротно сделанная, с современным интерфейсом, программа для поиска брешей в вашей подсети (Intranet, как модно говорить в последнее время), написанная на машиннонезависимых языках Perl и С, поэтому она в некоторой мере преодолевает первый из вышеописанных недостатков. Она даже допускает возможность для расширения и вставки новых модулей. К сожалению, во всем остальном ей присущи указанные недостатки, в т.ч. и самый главный - она уже устарела,
143

и не может сейчас серьезно использоваться ни администраторами, ни хакерами. Поэтому непонятен мистический страх перед всемогуществом SATAN'а. Авторы, готовя материал для данной книги, сами столкнулись с таким отношением и были немало этим удивлены.
Однако на момент выхода это была достаточно актуальная программа. Она содержала в себе поиск большинства уязвимостей, описанных нами в п. 8.5.2 и была построена на статье [16] (или эта статья вылилась из работы над SATAN'ом). В частности, программа ищет уязвимости в:
FTP и TFTP;
NFS и NIS;
rexd;
sendmail;
r-службах;
X-Window.
Существуют также более поздние версии SATAN'а, в которые включен поиск и других уязвимостей. Для этого она сначала всевозможным образом собирает информацию о вашей системе, причем уровень этого конфигурируется пользователем и может быть: легкий, нормальный и жесткий. Легкий уровень, по утверждению авторов программы, не может быть никак обнаружен атакуемой стороной (по крайней мере, такая активность программы никак не может быть принята за враждебную) и включает в себя DNS-запросы для выяснения версии операционной системы и другой подобной информации, которая может быть легально получена с использованием DNS. Далее она посылает запрос на службу RPC (remote procedure call) для выяснения, какие rpc-сервисы работают. Нормальный уровень разведки включает в себя все эти запросы, а также дополняет их посылкой запросов (сканированием) некоторых строго определенных портов, таких как FTP, telnet, SMTP, NNTP, UUCP и др. для определения установленных служб. Наконец, жесткий уровень включает в себя все предыдущие уровни, а также дополняется полным сканированием всех (возможных) UDP- и TCP-портов для обнаружения нестандартных служб или служб на нестандартных портах. Авторы предостерегают, что такое сканирование может быть легко зафиксировано даже без специальных программ - например, на консоли могут появляться сообщения от вашего файрвола.
Другой важной опцией, задаваемой при настройке SATAN'a, является глубина просмотра подсетей (proximity). Значение 0 означает только один хост, 1 - подсеть, в которую он входит, 2 - все подсети, в которые входит подсеть данного хоста, и т. д. Авторы подчеркивают, что ни при каких обстоятельствах это число не должно быть более 2, иначе SATAN выйдет из-под контроля и просканирует слишком много внешних подсетей.
Собственно, ничем более страшным, кроме как сканированием портов и обнаружением работающих служб и их конфигурации, SATAN не занимается. При этом, если находятся потенциальные уязвимости, он сообщает об этом. Как пишут сами авторы, фаза проникновения в удаленную систему не была реализована.
Авторы SATAN'а используют очень современный интерфейс - все сообщения программы оформляются в виде HTML-страниц. Поэтому работа с SATAN'ом мало чем отличается от плавания (surf) по интернету в своем любимом броузере (SATAN поддерживает любой из них, будь то lynx, Mosaic или Netscape). Пользователь может отсортировать найденные уязвимости (по типу, серьезности и т. п.) и тут же получить развернутую информацию по каждой из них. Для поддержки броузеров в SATAN входит собственный http-сервер, выполняющий ограниченное число запросов, а связь с этим сервером осуществляется c использованием случайного 32-битного числа (magic cookie), которое служит для дополнительной аутентификации http-клиента. Иначе говоря, оно служит для предотвращения перехвата конфиденциальной информации броузером, отличным от запущенного SATAN'ом, а также вообще против любого взаимодействия с http-сервером SATAN'а. Любопытно, что в версиях до 1.1.1 в этой схеме аутентификации тоже была ошибка, которая даже попала в один из бюллетеней CERT.
Итак, типичный сценарий работы с SATAN заключается в следующем:
1.Настроить желаемые параметры, в том числе глубину сканирования;
2.Задать адрес цели и уровень сканирования;
144

3.Просмотреть полученные результаты и получить по ним более подробную информацию;
4.Устранить найденные уязвимости.
Администратору безопасности рекомендуется просканировать на жестком уровне все свои хосты, а также все доверенные хосты, обязательно спросив на это разрешение у их администраторов. Это рекомендуется сделать даже сегодня, несмотря на то, что SATAN устарел - вы сможете быстро получить список используемых сетевых служб и их версий и проверить, нет ли среди них уязвимых, воспользовавшись материалами CERT или CIAC.
Internet Scaner (ISS)
Уже после того, как была написана эта глава, мы столкнулись с программой, которая более-менее удовлетворяет перечисленным требованиям к современному средству автоматизированной проверки безопасности хоста. По крайней мере, она регулярно обновляется. Она оригинально называется Internet Scaner SAFESuite и распространяется компанией Internet Security Systems (ISS - не путать с Internet Security Scaner) по адресу http://www.iss.net. Как вы уже догадались, эта программа не бесплатна, в отличие от SATAN, что в данном случае и неплохо - это несколько ограничит число потенциальных кракеров. Для запуска она требует ключ, пересылаемый вам при покупке пакета, а в оценочную (evaluation) версию включен ключ, который разрешит вам сканирование только своего собственного хоста.
Эта программа реализована под 6 платформ:
Windows NT,
HP/UX 9.x и 10.x,,
AIX 3.2.5 и 4.1,
Linux (ELF),
SunOS 4.1.3,
Solaris (SPARC) 2.x,
При этом любая из реализаций знает уязвимости и других платформ.
Функционально она состоит из трех частей: сканер файрвола, Web-сканер и сканер Intranet. При этом, как и в SATAN, пользователь настраивает уровень сканирования. При этом он имеет возможность редактировать следующие любопытные классы уязвимостей:
В nfs,
В rpc,
В sendmail/ftp,
В x windows,
Ip spoofing (включая возможность предсказания tcp-последовательности и атаки на r-службы),
Отказ в обслуживании (различные способы),
Наличие пользователей по умолчанию,
Тестирование стандартных демонов и правильности их настроек,
Правильность настроек файрвола,
Наличие ошибок и правильность администрирования web-сервера.
Ксожалению, мы не успели проверить качество работы и адекватность тестирования этой программой, но, видимо, на сегодняшний день она является одной из лучших.
Оценка безопасности Internet
Исходно сеть создавалась как незащищенная открытая система, предназначенная для информационного общения все возрастающего числа пользователей.
При этом подключение новых пользователей должно было быть максимально простым, а доступ к информации — наиболее удобным. Все это явно противоречит принципам создания защищенной системы, безопасность которой должна быть описана на всех стадиях ее создания и эксплуатации, а пользователи — наделены четкими полномочиями.
145