Учитывая важность проблемы защиты, разработана специальная система
Такая схема проще и надежнее, так как нужно заботиться о защите одной машины, а не многих. Экран, маршрутизатор и ЭВМ управления экраном объединены небольшой, незащищенной локальной сетью. Основные операции по защите осуществляются здесь на IP-уровне. Эту схему можно реализовать и на одной ЭВМ, снабженной двумя интерфейсами, через один интерфейс осуществляется связь с Интернет, а через второй — с защищенной сетью. Такая ЭВМ совмещает функции маршрутизаторашлюза, экрана и управления экраном. Возможна реализация
(рис 13.1) Схема FirewallВ этой
(рис 13.2) Схема Firewall, где функцию экрана выполняет маршрутизаторВне зависимости от того, насколько надежен ваш сетевой экран, не следует снижать требования к безопасному конфигурированию рабочих станций и серверов.
Следует также помнить, что сетевой экран не способен защитить от
Существует несколько разновидностей
Фильтрующая разновидность сетевых экранов производит отбор пакетов по содержимому заголовков (адреса и номера портов). Но такие экраны не могут различить команду get от put, так как для этого надо просматривать поле данных. Функции таких сетевых экранов могут быть реализованы практически любым маршрутизатором.
Сетевые экраны на основе прокси-серверов способны анализировать не только заголовки, но и пересылаемые данные. Такие серверы исключают прямое соединение клиента и удаленного сервера. От имени клиента запрос посылает сетевой экран. Для большой сети целесообразно иметь отдельные машины для прокси-серверов, обеспечивающих разные виды услуг (WWW, FTP и пр.), см. рис 13.3 и рис 13.3а.
Разные серверы для разных услуг, помимо безопасности, пропорционально увеличивают быстродействие системы в целом.
На рисунках показаны два (но не единственных) варианта защиты сети с помощью сетевого экрана, построенного на основе прокси-сервера и имеющего "демилитаризованную" зону. В такой зоне обычно размещаются серверы, доступные из Интернет непосредственно (вне защищаемого контура). Такие серверы бывают нужны для рекламирования изделий фирмы, обслуживания клиентов или для демонстрации достижений учреждения или научного центра. Такие схемы сохраняют доступность вашего WEB-сервера со стороны поисковых систем, что позволит узнать о вашей компании или учреждении большему количеству людей. Вариант рис 13.3а несколько более гибкий, но требует трех сетевых интерфейсов для прокси-сервера. Существуют аппаратные решения, совмещающие многие из описанных здесь возможностей.
Следует помнить, что подключение через модем должно производиться через специальный защищенный сервер с поддержкой протоколов типа Radius. Наилучшее для него место размещения – демилитаризованная зона, ведь безопасность сети определяется ее самым уязвимым элементом.
(рис 13.3) Размещение WEB-сервера в демилитаризованной зонеПри выборе политики и правил отбора пакетов важно ответить на следующие вопросы:
(рис 13.3а) Вариант построения демилитаризованной зоны с помощью сетевого экрана с 3-мя интерфейсамиОбычно сетевым экраном реализуется одна из двух политик безопасности:
На первый взгляд, может показаться, что эти две политики неотличимы, но это совсем не так. В первом варианте при появлении нового приложения или протокола придется вводить новые ограничительные правила. Второй вариант политики консервативнее, и здесь менять правила приходится реже.
Прокси-сервер обычно привязан к конкретному типу приложений и способен разрешать или запрещать выполнение определенных операций. Рассмотрим, как внутренним клиентом через такого рода сервер может быть загружена определенная WEB-страница с сервера в Интернет.
Прямое соединение внутреннего клиента с внешним сервером через сетевой экран невозможно. Прокси-сервер посылает HTTP-запрос внешнему серверу от своего имени с IP-адреса своего внешнего интерфейса, подключенного к Интернет. Понятно, что и отклик от внешне го WEB-сервера придет через указанный интерфейс в прокси-сервер. После получения запрошенной WEB-страницы прокси-сервер производит определенные администратором проверки, после чего открывает сессию передачи полученных данных через свой интерфейс LAN клиенту-заказчику. На фазе проверок возможна сортировка данных и блокировка доступа клиента к определенному типу данных, например, порнографического вида.
Вообще фильтрация данных стала в последнее время широко обсуждаемой проблемой. Отбор может производиться по URL, хотя этот способ селекции мало эффективен, во-первых, потому что URL часто меняются, во-вторых, из-за того, что клиент может всегда заменить URL на IP-адрес. Надежда на то, что в ограничительный список можно включить и IP-адреса, напрасна, так как некоторые программы могут воспринимать IP-адрес в десятичном (а не в десятично-точечном) представлении. Существуют и более изощренные фильтры, где содержимое анализируется по ключевым словам или по характеру вложений (Java или ActiveX).
Выбирая правила фильтрации, нужно сначала сформулировать общую стратегию:
В разных системах межсетевых экранов правила фильтрации формулируются различным образом, но, как правило, требуются следующие данные:
В каком направлении и через какой интерфейс передаются пакеты.
Некоторые протоколы желательно отфильтровывать из-за их потенциальной опасности. Работа с ними допускается лишь на специально выделенных машинах.
В принципе, прокси-серверы могут работать в обоих направлениях, т.е. разрешать внешним клиентам доступ к внутренним серверам. Обеспечивая
Существуют так называемые прозрачные прокси-серверы. Такие серверы создают больший комфорт клиентам, ведь не нужно авторизоваться сначала в прокси или как-то адаптировать свое программное обеспечение. Для клиента создается впечатление, что он работает непосредственно с внешним сетевым объектом, он может даже не знать о существовании прокси. Запросы внутреннего клиента к внешнему серверу перехватываются прокси-сервером и после анализа блокируются или передаются во внешнюю сеть. Пользователь авторизуется на внешнем сервере, а не в прокси. Но у прокси остается возможность блокировки некоторых операций, например, GET или PUT. Прокси может вести журнал операций или предоставлять различные права разным клиентам. Следует заметить, что прозрачный сервер не скрывает IP-адреса внутренних клиентов. Если прокси организует подключение внешнего клиента к внутреннему серверу, для внутреннего сервера клиентом является прокси, а не внешний объект.
Но внешний объект знает IP-адрес внутреннего сервера. Ситуацию можно несколько улучшить, если поместить все внутренние серверы в демилитаризованную зону, — тогда хакер не получит никаких данных об остальных объектах внутренней сети. Внутренние серверы в этом случае должны быть дополнительно защищены, например, локальными программами типа
В случае классического прокси клиенту нужно знать имя прокси и ЭВМ, с которой он хочет взаимодействовать. Имя прокси клиент должен преобразовать в его IP-адрес, послав запрос в DNS, а имя ЭВМ — передать прокси-серверу в качестве параметра запроса. DNS в этом случае сообщает внутренние IP-адреса только внутренним сетевым объектам. Для работы с внешними IP-адресами служит другой DNS-сервер. В случае же прозрачного прокси схема взаимодействия с DNS идентична той, которая существует при отсутствии сетевого экрана.
Для прокси-серверов достаточно типично использование трансляции сетевых адресов NAT (Network Address Translation). Такая схема, среди прочего, позволяет обойтись меньшим числом реальных IP-адресов. При реализации запросов во внешнюю сеть программа NAT подставляет в поле адрес отправителя IP сервера NAT. При получении отклика программа NAT заносит в поле адреса получателя адрес клиента источника запроса.
Существуют сетевые услуги, которые следует блокировать сетевым экраном.
Не следует оставлять без внимания безобидный на первый взгляд протокол ICMP, так как он позволяет получить много разнообразной и полезной для хакера информации. По этой причине целесообразно блокировать прохождение ICMP-пакетов следующих типов:
Если вы поставили и сконфигурировали
Расстаньтесь с услугами
Если сетевой экран работает на ЭВМ с ОС Windows, там не должно быть файловой системы FAT, так как она не обеспечивает защиты.
В последнее время появился новый вид услуг – .)
Недостатки системы
Если требуется дополнительная степень защиты, при авторизации пользователей в защищенной части сети могут использоваться аппаратные средства идентификации, а также шифрование имен и паролей.
В последнее время появилось большое число аппаратных решений для межсетевых экранов. Это, прежде всего, CISCO PIX
При выборе той или иной системы
К средствам мониторинга сетевых атак относятся такие программные продукты, как SNORT (
Интересные возможности предоставляет программный пакет TCP Wrapper — его применяет демон tcpd, запускаемый вместо сетевых служб, которые указаны в файле inetd.conf. TCP
Хорошего результата можно достичь, грамотно конфигурируя программное обеспечение ЭВМ и контролируя качество паролей. Пример фрагмента журнального файла ZoneAlarm (разновидность
FWIN,2005/08/19,14:25:04 +4:00 GMT,61.235.154.103:44666,194.85.70.31:1 027,UDP FWIN,2005/08/19,14:39:36 +4:00 GMT,220.168.156.70:37740,194.85.70.31:1 026,UDP FWIN,2005/08/19,14:39:36 +4:00 GMT,220.168.156.70:37740,194.85.70.31:1 027,UDP FWIN,2005/08/19,14:44:34 +4:00 GMT,222.241.95.69:32875,194.85.70.31:10 27,UDP
Эта распечатка демонстрирует попытки прощупывания ЭВМ с IP-адресом 194.85.70.31 на предмет откликов со стороны портов 1026 и 1027 (протоколы cap и exosee). Зондирование производится с нескольких разных адресов (61.235.154.103, 220.168.156.70 и 222.241.95.69). Объектом атаки в данном случае является рабочая станция, которая не поддерживает эти протоколы.
После проникновения хакер старается ликвидировать следы своей работы и в то же время оставить для себя "калитку". Сделать это он может, заведя новую учетную запись или загрузив троянского коня. По этой причине нужно регулярно проверять список учетных записей и сканировать машину на предмет наличия троянских коней.
Для отслеживания работы ОС и приложений обычно предусматривается система журнальных файлов, которая фиксирует все события (приход запросов, соответствие запросов определенным критериям и т.д.)
Рассмотрим использование журнальных файлов на примере анализа успешной атаки вторжение через приложение SSH.
Если возникло подозрение относительно возможного вторжения, надо начинать с просмотра файлов secure и messages (каталог / var / log / ОС LINUX). В нашем случае атака началась в пятницу вечером (8-го июля 2005 года). Ниже представлены фрагменты журнальных файлов, иллюстрирующие характер атаки.
Jul 8 18:23:18 fender sshd[15017]:Illegal user anonymous from 207.232.63.45 Jul 8 18:23:20 fender sshd[15019]: Illegal user bruce from 207.232.63.45 (Нью-Йорк, США) Jul 8 18:23:22 fender sshd[15021]: Illegal user chuck from 207.232.63.45 Jul 8 18:23:23 fender sshd[15023]: Illegal user darkman from 207.232.63.45 … Jul 9 13:15:13 fender sshd[16764]: Illegal user bruce from 129.237.101.171 Jul 9 13:15:14 fender sshd[16766]: Illegal user chuck from 129.237.101.171 Jul 9 13:15:16 fender sshd[16768]: Illegal user darkman from 129.237.101.171 Jul 9 13:15:17 fender sshd[16770]: Illegal user hostmaster from 129.237.101.171 …. Jul 10 15:25:34 fender sshd[28450]: Did not receive identification string from 80.18.87.243\par Jul 10 16:56:16 fender sshd[28457]: Illegal user lynx from 80.18.87.243\par Jul 10 16:56:17 fender sshd[28459]: Illegal user monkey from 80.18.87.243\par Jul 10 16:56:18 fender sshd[28461]: Illegal user lion from 80.18.87.243\par …. Jul 10 02:42:02 fender sshd[18064]: Did not receive identification string from 166.70.74.35 Jul 10 03:09:13 fender sshd[18067]: Illegal user admin from 166.70.74.35 (Солт Лейк Сити, США) Jul 10 03:09:14 fender sshd[18069]: Illegal user admin from 166.70.74.35 Jul 10 03:09:16 fender sshd[18071]: Illegal user admin from 166.70.74.35 …. Jul 10 16:56:16 fender sshd[28457]: Illegal user lynx from 80.18.87.243 (Венеция, Италия) Jul 10 16:56:17 fender sshd[28459]: Illegal user monkey from 80.18.87.243 Jul 10 16:56:18 fender sshd[28461]: Illegal user lion from 80.18.87.243 …. Jul 10 16:56:40 fender sshd[28509]: Failed password for root from 80.18.87.243 port 45208 ssh2 Jul 10 16:56:41 fender sshd[28511]: Accepted password for root from 80.18.87.243 port 45298 ssh2 …. Jul 10 19:13:49 fender sshd[31152]: Accepted password for root from 81.181.128.181 port 4943 ssh2
Из записей видно, что машина была атакована из 7 точек. Четыре расположены в США ( IP=166.70.74.35; 207.232.63.45; 129.79.240.86 и 129.237.101.171 ), по одной — в Италии, Румынии и Венгрии ( IP=80.98.194.185 ). Производится подбор параметров доступа имя-пароль. Подбор продолжался около двух суток.
Успешный вариант был найден машиной из Италии ( IP-адрес=80.18.87.243 Венеция). Практически сразу атака со стороны всех ЭВМ была прервана и хакер вошел на атакуемую ЭВМ ( имя_ЭВМ=fender ) из машины с IP=81.181.128.181 ( Румыния ).
Для дальнейшего анализа событий нами были использованы данные из файла .bash_history, куда записываются все команды, исполняемые пользователем в терминальном режиме. Записи этого файла и результаты работы демона syslogd говорят о том, что через 3 минуты после успешного вторжения хакер заблокировал работу syslog.
Далее хакер заблокировал доступ к системе других пользователей, загрузил туда файл pass_file (объем 696057 байт), содержащий комбинации имя-пароль (небольшие фрагменты содержимого файла представлены ниже).
lynx lynx monkey monkey lion lion heart heart michel michel alibaba alibaba ….. root 123456 root 1234567 …. root 1234567890 root rootroot root rootrootroot root 123root123 root 987654321 …. root 4321 root 321 root root! root root!@ root root!@# ….
Хакер рассчитывает на то, что пользователь ЭВМ ленив и выбирает простой пароль (легче запомнить — легче подобрать). Кроме того, хакер скопировал на взломанную ЭВМ несколько скриптов и файл со списком адресов — кандидатов на взлом. После этого машина включилась в работу по подбору паролей на других ЭВМ.
К сожалению, факт атаки был установлен лишь утром в понедельник. Сначала была проведена частичная блокировка. Хакер почувствовал неладное и выдал команды last и ps, пытаясь понять, что происходит; дальнейшая его работа была полностью блокирована.
Какие выводы из этой истории можно сделать? На атакованной рабочей станции была установлена SSH устаревшей версии (имевшей уязвимость) и использован достаточно простой пароль. По этой причине нужно своевременно обновлять ОС и версии приложений. (Про выбор паролей смотри RFC-2196.) Особо опасными с точки зрения атак является ночь и выходные дни. Если нет насущной необходимости, лучше на это время блокировать доступ к ЭВМ или даже выключать ее.
Помимо журнальных файлов ОС надо просматривать и соответствующие файлы приложений, например,
Хакер может попытаться уничтожить следы своего пребывания, стерев или очистив определенные журнальные файлы. Вполне возможно, в нашем случае хакер так бы и поступил, восстановив перед уходом и доступ по SSH. По этой причине следует заранее побеспокоиться о периодическом копировании журнальных файлов на недоступное для хакера устройство или сохранении их в зашифрованном виде. Но хакер может поступить и более жестоко, например, разметив заново системный диск. Хорошая схема защиты должна предотвращать такого рода действия или позволять хотя бы быстро восстанавливать разрушенную конфигурацию системы.
Следует учитывать, что сами журнальные файлы могут стать объектом атаки типа DoS. Большой поток запросов, поступающих с нескольких ЭВМ и обращенных к одному или нескольким ресурсам машины, могут привести к быстрому росту журнальных файлов, переполнить дисковое запоминающее устройство и блокировать работу сервера.
Широкое внедрение ИНТРАНЕТ, где группы разбросанных по сети пользователей локальных сетей объединяются друг с другом с помощью виртуальных каналов
Стандарт IEEE
(рис 13.4) Формат пакета IEEE 802.10Поле чистый заголовок включает в себя три субполя. MDF (Management Defined Field) является said (Security Association Identifier) — идентификатор сетевого объекта ( (Link Service Access Point) представляет собой код, указывающий принадлежность пакета к протоколу
Защищенный заголовок копирует себе адрес отправителя из mac-заголовка (MAC — Media Access Control), что повышает надежность.
Поле ICV (
Наличие data определяется физической сетевой средой. Благодаря наличию mac-заголовка
Одним из наиболее эффективных способов защиты информации является шифрование сообщений, что, к сожалению, заметно увеличивает время отклика (шифрование-дешифрование). Задержки при большом входном трафике могут привести к блокировке сервера.
Традиционные
Смотри:
До недавнего времени компания CISCO хранила пароли в конфигурационных файлах в виде открытого текста, теперь они собираются использовать хешированное хранение паролей.
Но современные ЭВМ легко позволяют подобрать пароль при наличии хэша (2ГГц Intel может проверить 5000 паролей в сек). По этой причине нужно ограничить доступ к файлу хэшей паролей. Табличный метод (rainbow tables) может ускорить подбор на порядок.
Многофакторная аутентификация является, похоже, единственной альтернативой современной системе паролей. Здесь имеется в виду использование сертификатов, ID-карт пользователей, и контроль их биометрических данных (отпечатков пальцев, голоса или радужной оболочки глаза).
Многие администраторы, установив
Несколько увеличить безопасность может применение
(рис 13.5) Пирамида Maslow На следующем уровне размещается
Далее следует уровень безопасности специфических программ организации, так как именно они становятся чаще всего мишенями атаки. Например, FreeBSD имеет МАС -механизм (
На вершине пирамиды находятся системы
На рис 13.6 отображена схема системы безопасности локальной сети LAN (выделена серым фоном). Связь LAN с внешней сетью осуществляется через сетевой экран (
(рис 13.6) Система безопасности локальной сетиАдминистратор может поменять стандартные значения номеров портов для обычных видов сервиса (SSH, FTP, WWW и т.д.). Это не делает сервисы безопасными, но заметно осложняет работу хакера. Он может просканировать порты и найти нужное значение, но это, вероятно, привлечет внимание администратора. Аналогично, можно поменять имена некоторых системных утилит, например, cmd.exe, telnet.exe, tftp.exe и т.д.. При этом номера портов нужно будет задавать явно, что осложнит и работу обычных пользователей. Такие меры можно рассматривать в качестве дополнительных.
Одним из средств противодействия атакам является введение производителями микропроцессоров флага NX (не исполнять), который позволяет разделить память на области, где вариация содержимого возможна, а где — нет. Такая технология препятствует модификации хакерами демонов и фрагментов ОС и позволяет заблокировать любые атаки, сопряженные с переполнением буферов. Данная технология внедрена компанией AMD в своем 64-битовом процессоре, а Intel — в процессоре Itanium (2001 год). Для широкого внедрения этой техники нужно переписать и перекомпилировать существующие ОС. В настоящее время эта техника внедрена в Microsoft Windows Server 2003 (Service Pack 1), Microsoft Windows XP (Service Pack 2), SUSE Linux 9.2 и Red Hat Enterprise Linux 3 с обновлением 3. Некоторые разработчики ОС внедрили эмуляции NX для процессоров, где этот флаг аппаратно не поддерживается. Развитие технологий NX может по оценкам экспертов (
Одной из наиболее частых мишеней атак являются базы данных, которые являются основой большинства информационных систем. Разработана схема, при которой исходная копия базы хранится на базовой ЭВМ, не связанной с Интернет. Копии этой базы передаются на компьютеры, которые обслуживают внешние сетевые запросы. При этом данные снабжаются цифровой подписью базовой ЭВМ. Вместе с откликом на запрос пользователь получает не только запрошенные данные, но и подтверждение того, что они получены из исходной базы. Как отклик, так и подтверждение снабжаются цифровой подписью, что позволяет клиенту проверить неискаженность полученных данных.
Пользователь сети должен ответить себе на следующие вопросы:
Ответив на эти вопросы, он сможет определить, какие средства защиты следует использовать. Некоторые пользователи, зная, что работают за
Стирайте или еще лучше физически уничтожайте неиспользуемые диски, CD и другие носители.
При работе с беспроводными сетями следует применять VPN с шифрованием. При работе с беспроводными сетями используется протокол IS-41-C (США), который модельно сходен со стандартом GSM. Беспроводное оборудование должно отключаться сразу после завершения использования.
Администраторы должны выдавать новый пароль в случае утраты, только позвонив предварительно клиенту по телефону.
В случае работы с беспроводными сетями при выявлении подозрительного объекта желательно его локализовать. Это может быть сделано с помощью узконаправленной антенны c аттенюатором входного сигнала. Помочь этому может программа
Существуют специальные средства выявления уязвимостей сети. Следует учитывать, что полный доклад о таких уязвимостях может иметь размер телефонной книги. В такой ситуации трудно решить, с чего начать, если число уязвимостей больше 10000. Одним из возможных подходов является использование этих данных совместно с результатами работы
Выявление все новых уязвимостей вынуждает более внимательно относиться к системам обновлений (patches). В случае обеспечения безопасности отдельной ЭВМ применима системы Microsoft SMS (System Management Server) и SUS (Software Update Service). Существуют и общедоступные средства, например, http://www.patchmanagement.org. Следует учитывать, что процесс копирования и обновления ОС или приложений сам по себе является уязвимым и проводить его следует со всеми возможными предосторожностями.
Разработчики и коммерческие поставщики программных продуктов часто выдают программы, структура которых не удовлетворяет самым элементарным требованиям безопасности. Из-за спешки иногда в новые версии программ переносятся уязвимости, выявленные в предыдущих вариантах.
Хорошие результаты с точки зрения безопасности могут быть получены, если запретить пользователям устанавливать программное обеспечение по своему усмотрению.
В последнее время разработана новая технология, которая обеспечивает приемлемый уровень безопасности. Это VE (
VE определяет схему взаимодействий и распределение прав доступа. VE инкапсулирует программу или группу программ, предоставляя весь спектр услуг (память, коммуникации и пр.). При этом дублируются все необходимые данные. VE не могут быть полностью изолированы друг от друга и, тем более, от ОС. Типичное взаимодействие между VE сопряжено с использование общих данных. Любые операции VE связанные с ресурсами ЭВМ находятся под жестким контролем.
Для файловой системы и Registry главным препятствием является дублирование ресурсов. C одной стороны, программа должна иметь возможность изменять существующие значения, например, ключей Registry или конфигурационных файлов ОС. С другой стороны, если программа является
Для обеспечения полной безопасности VE-технология должна размещаться ниже ядра, а не работать параллельно ему. Если переместить ядро в сектор 1 или 2, VE-устройству будет предоставлен полный контроль над ЭВМ. Существует несколько вариантов взаимодействия VE и ОС.
Так как самой массовой ОС для серверов в настоящее время являются различные разновидности LINUX, разработчикам новых версий этой ОС следует задуматься о встроенных средствах безопасности. Одним из таких подходов может стать минимизация ядра ОС. Только для ядра небольшого размера можно гарантировать его безопасность, тексты с миллионом строк привилегированного объектного кода неконтролируемы. В такое ядро должно быть включено минимальное число функций (управление памятью,
Работа Syslog допускает передачу данных посредством протокола UDP (существует версия syslog-ng, где транспортным протоколом может быть TCP). Если атакер имеет доступ к каналу между отправителем и получателем, он сможет отслеживать обмен и уничтожать или фальсифицировать данные, говорящие о его присутствии. Хакер может также посылать уведомления получателю (по известному порту), добиваясь переполнения диска и блокировки работы системы syslog, , Syslog Ng и Kiwi.
Если атакер обычно собирает данные о будущем объекте атаки, то так же следует действовать и потенциальным жертвам. Необходимо формировать динамически обновляемые базы
Следует контролировать число и состав различных сервисов, работающих на ЭВМ (например, telnet, ssh,
Рассмотрим признаки, которые могут свидетельствовать об успешном вторжении в ЭВМ (вариант ОС LINUX) (см.
Часто администратор лишь чувствует, что что-то происходит не так. Этого должно быть достаточно, чтобы начать исследования. Ниже приводится перечень команд, которые позволяют выявить и конкретизовать названные выше аномалии.
find / -size +1000k -mtime +7 -print
ip link | grep PROMISC или /sbin/ifconfig
find / -nouser -print
find / -uid 0 -perm -4000 -print
find / -name "..." -print
grep :0: /etc/passwd
Попытки хакера установить свое программное обеспечение часто приводит к повреждению системных или прикладных программ. В системе RedHat имеется встроенная система RPM (RedHat Package Manager), которая позволяет выявить такие повреждения. Например, команда
rpm -qa | # rpm -Va | sort
поможет решить эту проблему. Для этой же цели можно использовать программу ).
Просмотрев список активных процессов с помощью команды ps-, следует обратить внимание на демоны, проход к которым начинается с символа "точка", а также на любые необычные имена процессов. Чтобы узнать подробности, следует заглянуть непосредственно в каталог /proc. Например, выдав команду cat/proc/20999, где 20999 — pid процесса. Для выявления прослушивающих сервисов можно выдать команду netstat-.
Аналогичные средства диагностики существуют и для ОС Windows (смотри, например, http://www.cert.org/tech_tips/WIDC.html). Следует помнить, что файловые системы FAT и FAT32 (Windows) не имеют средств защиты, поэтому при построении систем повышенной безопасности следует отдать предпочтение системе NTFS.
wmic useraccount.wmic /output:C:\services.htm service get /format:hform (для Windows-XP). Полезно также регулярно просматривать содержимое файлов Autoexec. bat, config.sys, system.ini и win.ini. Некоторые программы для "черного хода" загружаются в качестве услуг на фазе загрузки системы. Просмотрев список загруженных услуг, нужно удалить все ненужные.netstat –an. XP позволяет проверить принадлежность процессов определенному порту с помощью команды netstat –ao. Преобразование ID процессов в их имена можно осуществить посредством команды: wmic process where ProcessId="x" get caption.net share.at или schtasks.pulist.exe или tlist.exe. Первая из команд позволяет также выявить, кто запустил тот или иной процесс. Команда tlist.exe с флагом –t отображает список процессов, породивших msinfo32.msc."Tools, Folder Options, View" и затем "Show hidden files and folders". Годится для этой цели и команда dir/ah.xcalc.exe или showacls.exe.gpresult/v.Список номеров портов для известных троянских коней можно найти в http://www.simovits.com/nyheter9902.html
Ниже перечислены некоторые разновидности
Land attack. Атакер пытается замедлить работу вашей машины, послав пакет с идентичными адресами получателя и отправителя. Для стека протоколов Интернет такая ситуация не нормальна. ЭВМ пытается выйти из бесконечной петли обращений к самой себе. Имеются пэтчи для большинства операционных систем.
Unknown IP protocol. Традиционными транспортными протоколами являются UDP, TCP и ICMP, которые работают поверх протокола IP. Код протокола определяется полем тип протокола заголовка IP-дейтограммы. Существует большое число протоколов, которые идентифицируются с помощью номеров портов, например, HTTP, использующий в качестве транспорта TCP. Появление незнакомого протокола должно всегда настораживать, так как может нарушить нормальную работу программ.
Ping of death. Предпринимается попытка послать пакет, длина которого больше теоретического предела 65536 байтов. IP-уровень фрагментирует такие пакеты, а получатель осуществляет сборку, которая иногда приводит к разрушению ОС. Системы до 1997 года были уязвимы для такой атаки. Операция проделывалось, например, с помощью команды ping -l 65550.
Nestea attack. Опасное перекрытие IP-фрагментов, сформированное программой nestea. Ваша операционная система может стать нестабильной или разрушиться. Имеются пэтчи для большинства операционных систем. Адрес отправителя, вероятнее всего, не является истинным. Это означает, что отправитель использует фальшивый IP-адрес и прикидывается кем-то еще. К сожалению, не существует простых способов определить, кто в действительности посылает кадры с искаженным адресом отправителя.
Empty fragment. Когда пакеты слишком длины, они могут быть фрагментированы. Система контроля фиксирует фрагмент с нулевой длиной. Например, IP-заголовок имеет 20-байт, а данных вообще нет. Это может указывать, что:
Ядра Linux для версий между 2.1.89 и 2.2.3 были уязвимы для атак DoS с привлечением этой методики. Каждый такой фрагмент вызывает некоторую
Suspicious Router advertisement. Подозрительное анонсирование новых маршрутов. Атакер возможно пытается перенаправить трафик на себя. Для этого может использоваться, в том числе, и ICMP-протокол. Соответствующие опции должны всегда вызывать подозрение.
Corrupt IP options. Опции IP на практике почти не применяются. По этой причине в их обработке имеется достаточно много ошибок. Ими часто пытаются воспользоваться хакеры. Появление в пакете IP-опций должно вызывать подозрения.
Echo reply without request. Это может быть результатом взаимодействия хакера с засланным троянским конем. Может быть это и результатом дублирования вашего IP-адреса. В любом случае такие пакеты достойны внимания.
UDP port loopback. Пакет UDP путешествует между двумя эхо-портами. Такие пакеты могут делать это бесконечное число раз, используя всю имеющуюся полосу сети и производительность ЦПУ. Имеется несколько стандартных услуг такого рода, которые могут работать в системе. Среди них:
echo (порт 7) дневная квота (порт 17) chargen (порт 19)
Атакер может создать проблемы, фальсифицируя адрес отправителя и вынуждая две
Snork attack. Регистрируются UDP-дейтограммы с портом назначения 135 (Microsoft
TCP FIN scan. Разновидность TCP-сканирования. Однако хакер здесь пытается осуществить так называемое "FIN-сканирование". Он пытается закрыть несуществующее соединение сервера. Это ошибка, но системы иногда выдают разные результаты в зависимости от того, является ли данная услуга доступной. В результате атакер может получить доступ к системе.
DNS cache poison. Атакер послал запрос DNS-серверу, который содержит также и отклик. Это может быть попыткой компрометировать DNS-сервер. Это может быть также результатом работы ISP, который перенаправляет своих клиентов на прокси-сервер. Но, вероятнее всего, это вторжение в систему. Для того, чтобы улучшить рабочие параметры, DNS-серверы пытаются "кэшировать" имена локально. Серверы просматривают секции откликов всех пакетов, приходящих в систему. Они запоминают эти отклики на короткое время для случая, когда кто-то еще нуждается в этой информации. Очевидной проблемой является вариант, когда такой пакет содержит ложную информацию. В частности, кто-то может послать запрос в DNS, содержащий, кроме того, дополнительную информацию в секции отклика. Старые серверы воспринимают эту информацию, кэшируют ее, и выдают в ответ на запрос, если таковой поступит. (Новые DNS-серверы лишены этой уязвимости, но существует еще достаточно много старых серверов). Если ваш DNS-сервер обновлен, атака такого рода невозможна.
DNS BIND version request. Сервер BIND DNS содержит в своей базе данных запись CHAOS/TXT с именем "VERSION.BIND". Если кому-то нужна эта запись, присылается версия программы BIND. Такой запрос сам по себе не является атакой, но может быть разведывательным рейдом. Однако если возвращается версия типа "4.9.6-REL" или "8.2.1", это указывает, что у вас установлена версия с хорошо известной дыркой, связанной с переполнением буфера.
SMB malformed. Существует ошибка в старой версии SMB (система Microsoft для совместного использования файлов и принтеров в сети). Эта ошибка может быть использована при авторизации, путем посылки специально сформированных пакетов. При реализации этого трюка машина крэшится. Данная атака может быть предпринята успешно для систем Windows NT 4.0 SP4 и Windows 95 (все версии). Заметим, что имеются пэтчи для всех систем. Для того, чтобы дырка работала, "File and
HTTP URL directory traversal/climbing. Ситуация выглядит так, как будто атакер пытается прочесть посторонние файлы вашей системы. Обычная ошибка web-браузера заключается в том, что хакер может специфицировать URL, который выглядит как /../../../foo/bar.txt. Эта атака может удаться, так как программист не осуществляет двойной проверки URL, чтобы убедиться, корректен ли файл web-сайта. Сигнатурой такой атаки может быть наличие в URL последовательности ../... Иногда такого рода атака может быть имитирована некорректными связями, размещенными на странице. Это говорит о некорректной конфигурации. Во-первых, проверьте параметры URL, чтобы выяснить, к какому файлу намерен получить доступ атакер. Затем проверьте, получил ли атакер доступ к файлу. Если это действительно критичный файл и атакер был успешен, необходимо предпринять срочные действия. Например, если атакер получил доступ к файлу паролей, необходимо заменить все пароли.
Следует также проверить, является ли версия сервера новейшей и использованы ли все существующие пэтчи безопасности. Большинство таких атак предпринимается против "встроенных" web-серверов (т.e. web-серверов, добавленных в качестве части другого программного продукта), а не против реальных web-серверов типа Apache и IIS.
Данные HTTP CGI содержат ../../../... Данные, переданные в URL, имеют подозрительный проход, содержащий ../../../..; Этот проход может быть использован для доступа к привилегированным файлам. Атакер пытается добраться по дереву каталогов до нужных ему файлов. Некоторые приложения Web используют проходы, содержащие ../../../.. . Вам следует рассмотреть URL и аргумент GET с целью проверки их корректности. Если проход в аргументе GET указывает на попытку доступа к привилегированным данным, возможно, ваш сервер скомпрометирован.
HTTP asp with \ appended. Происходит попытка доступа к файлу asp с завершающим символом \. В некоторых ситуациях вместо исполнения программы asp будет возвращен исходный asp-файл. Это раскроет атакеру критическую информацию о сервере. Исходный текст программы сервера часто содержит пароли, скрытые имена файлов или ошибки, которые в такой ситуации относительно легко найти. Хакер может затем использовать эту скрытую (hidden) информацию для вскрытия сервера.
Telnet Bad IFS. В UNIX переменная "IFS" специфицирует символ, разделяющий команды. Если значение этой переменной изменено, то система детектирования вторжения не будет способна корректно интерпретировать команды. Более того, кто-либо может изменить эту переменную для того, чтобы модифицировать работу некоторых скриптов ядра. В частности, плохой IFS станет разграничителем, используемым при разборе любых вводов, таких, как имена файлов или DNS-имена. В этом случае нужно установить IFS соответствующим символу '/' или '.'. Вообще, если вы хотите жить немного спокойнее, лучше заблокировать применение telnet, предложив пользователям перейти на SSH.
Telnet RESOLV_HOST_CONF. Переменная окружения RESOLV_HOST_CONF посылается с привлечением поля опций Telnet. Это поле не должно никогда изменяться таким способом. Это может означать попытку получения доступа к критическим файлам типа паролей и т.д.
SMTP DEBUG command. Кто-то сканирует вашу систему с целью выявления ее уязвимости. В 1988 году червь Morris уложил Интернет. Одним из путей распространения червя являлась программа sendmail. Sendmail поддерживала нестандартную команду "DEBUG", которая позволяет любому получить контроль над сервером. Червь Morris автоматизировал этот процесс для распространения через системы sendmail. Сейчас маловероятно, что вы найдете такую старую почтовую систему. Следовательно, такая атака будет означать, что кто-то использует универсальный сканер уязвимости. Иногда система может выйти из синхронизма (сбой в ISN), что вызывает большие потери пакетов. В таких условиях по ошибке может быть запущена команда DEBUG. Например, если вы работаете с версией сервера для системы 486, который обрабатывает большое количество e-mail, такая десинхронизация может произойти. Уязвимой системой является Sendmail/5.5.8.
SMTP MIME null charset. Обнаружено незнакомое почтовое сообщение, вероятно сконструированное, чтобы разрушить почтовый сервер. В заголовки "Reply-To:" сообщения встраиваются исполняемые Shell и PERL коды. Когда система откликается, эти коды будут исполнены. Например, старые версии list-сервера MAJORDOMO исполняют любой PERL-скрипт, который вставлен в это поле.
FTP pipe in filename. Совершается попытка исполнить программу на FTP-сервере. Допускающая это уязвимость имеется во многих FTP-демонах до 1997 года, таких, что, если перед именем файла присутствует символ PIPE (|), сервер пытается исполнить программу имя которой следует за ним. Так как FTP-сервер обычно работает с привилегией root, может произойти его компрометация. Проверьте, что у вас работает новейшая версия сервера.
FTP Site Exec DotDot. Попытка неавторизованного доступа. Некоторые версии wu-site exec для удаленных машин. Путем предоставления прохода с определенными параметрами удаленный пользователь может исполнить произвольные команды на FTP-сервере. Эта атака позволяет атакующему выполнять команды на атакуемой машине. Это может привести к получению им доступа root-уровня. Такой дефект имеют системы wu-
NMAP ping. Для проверки вашей системы на уязвимость используется программа NMAP. NMAP — очень популярная программа, применяемая хакерами для сканирования Internet. Она работает под Unix, имеет много конфигурационных опций и использует несколько трюков, чтобы избежать детектирования системами, отслеживающими вторжение. NMAP не позволяет хакеру вторгнуться в систему, но допускает получение им полезной информации о конфигурации системы и доступных услугах. Программа часто используется как прелюдия более серьезной атаки.
SNMP WINS deletion. Совершена попытка стереть записи WINS через интерфейс SNMP сервера. Это может быть попытка реализовать Denialof-Service (DoS) или просканировать систему безопасности. Клиенты Windows контактируют с системой WINS, чтобы найти серверы. Многие системы уязвимы для атак при помощи SNMP-команд, посланных серверу для того, чтобы стереть записи. Это не взламывает сервер, но после стирания записи в базе данных клиенты и серверы смогут более найти друг друга. Однако этот отказ обслуживания (DoS) может предварять другие атаки. Это может быть частью широко диапазонного сканирования с целью поиска слабых точек в сети. Эта атака может быть против систем, где нет работающих SNMP или WINS.
SNMP SET sysContact. Совершена попытка удаленно установить поле sysContact через SNMP. Это, вероятно, сканирование уязвимых мест вашей системы. Группа SNMP "system" используется всеми MIB. Она часто сканируется хакерами при предварительной разведке. Одним из способов сканирования является выполнение команд SET для поля "sysContact" для того, чтобы просмотреть, реагирует ли какая-либо система. Такие SET часто используют для взлома хорошо известные пароли/communities. Для противодействия рекомендуется запретить исполнение команд SET удаленно.
CGI bash. Может быть совершена попытка исполнить скрипт bash, который в случае успеха позволит хакеру получить доступ к серверу. Это программа shell, которая может выполнять произвольные операции на сервере. Если она была случайно помещена в удаленно доступный каталог и если вы обнаружили, что какие-то параметры системы стали доступны хакеру, считайте свою систему скомпрометированной. Вы должны немедленно удалить эту программу из данного каталога, проверить систему на наличие троянских коней и проконтролировать, не изменялась ли ее конфигурация. Для этого у вас должна иметься копия всех конфигурационных файлов на отдельном носителе.
CGI perl.exe. Может быть произведена попытка исполнить perl.exe, что позволит хакеру неавторизованный доступ к серверу. Это программа shell, которая может выполнить произвольные операции на сервере. Если эта программа случайно помещена в удаленно доступный каталог и если выявлена модификация некоторого системного параметра, можете считать свою систему скомпрометированной. Вам следует немедленно удалить программу из ее каталога и поместить в более подходящее место, проверить вашу систему на наличие троянских коней, а также проконтролировать конфигурацию на предмет возможных модификаций.
В 1997 году одна из подгрупп IETF выпустила справочник Site Security
В правилах для пользователей необходимо регламентировать следующие вопросы.
Полезно объяснить пользователям, что их поведение в сети должно быть этичным!
Примером соглашения для доступа к компьютерам может служить документ такого рода для факультета информатики университета Мельбурна. (Смотри также http://www.admin.com.)
Следует, впрочем, иметь в виду, что, прочитав и подписав правила работы в сети, пользователь, если даже он понял, что он подписал, об этом немедленно забывает.
Попытайтесь убедить его не давать свой пароль даже очень большому начальнику.
WEB-сервер — достаточно сложная и потому уязвимая для атак программа. Причем угрозы могут исходить из самых неожиданных мест. Так в конце июня 1997 года было обнаружено, что Windows-95 (и NT) "повисает" (полный перечень причин повисания этой системы может занять целый том) при приходе на ее вход ICMP-пакета с длиной, которая не соответствует значению, указанному в его поле заголовка Длина.
WEB-сервер, так же, как любая сеть, должен иметь свою, желательно изложенную на бумаге политику безопасности. Это должен быть достаточно простой документ типа приведенного ниже, а доступ к WEB-серверу должен имеет пять уровней.
Для получения доступа на уровне 3-5 необходимо письменное разрешение директора организации или его заместителя по информационным системам. Доступ уровня 2 автоматически получают все сотрудники организации или фирмы при авторизации. Администраторы могут аннулировать авторизацию по решению заместителя директора по информационным системам, а при чрезвычайных обстоятельствах — самостоятельно, но с последующим уведомлением руководства. Работа с локальной консоли WEB-сервера разрешается только администраторам. Удаленная работа администраторам запрещена, они должны работать только с локального терминала.
Информация из каталогов /private, которая считается конфиденциальной, доступна только с терминала самой ЭВМ.
При работе с WEB-сервером не разрешается доступ к базам данных или файлам, если для этого не имеется соответствующего индивидуального договора .
Описание политики безопасности должно включать указание периода формирования резервных копий содержимого сервера, описания допустимых сетевых услуг и время профилактических остановок. Включается сюда перечень видов обязательного мониторинга сервера и просмотра дневника посещений.
Приведенный текст описания политики безопасности может варьироваться в широких пределах, он зависит от используемой ОС и набора сетевых утилит.
Наиболее безопасной сетевой средой считается Macintosh OS. Это связано с тем, что она не включает в себя
Системы Windows NT и UNIX обладают сопоставимыми и достаточно высокими уровнями безопасности. Большое число сообщений о дефектах безопасности UNIX свидетельствует о его массовом использовании.
Теперь рассмотрим, что нужно сделать, чтобы обеспечить максимально возможную безопасность WEB-cервера.
При работе с ОС Windows NT следует отключить доступ TCP/IP от услуг NETBIOS. Это может быть сделано с помощью
Если WEB-сервер нуждается в контроле доступа, то в настоящее время (в HTTP/1.1) имеется две возможности. Первая (basic) предполагает традиционный ввод и передачу по сети имени клиента и пароля. Эта схема проста, но допускает перехват параметров доступа (а между клиентом и сервером может быть достаточно много промежуточных узлов). Вторая схема (digest) для пользователя выглядит аналогично, но вводимое имя и пароль не передаются по сети непосредственно. На их базе формируется дайджест MD5, который пересылается по сети и используется для идентификации клиента.
Наиболее полезными серверами по проблемам безопасности являются в данный момент серверы: http://www.linuxberg.com/, http://freshmeat.net/, http://www.securityfocus.com/infocus/1216, http://user-mode-linux.sourceforge.net/
| Название программы | Назначение | Ссылка |
|---|---|---|
| snort | Система обнаружения попытки вторжения | http://www.clark.net/~roesh/security.html |
| http://www.snort.org/docs/idspaper/ | ||
| http://www.snort.org/docs/snort-rh7-mysql-ACID-1-5.pdf | ||
| SAINT | http://www.wwdsi.com/saint/ | |
| PMFirewall | Конфигурирование ipchains в |
http://www.pointman.org/ |
| OpenSSH | Защищенная оболочка Secure Shell с открытым кодом | http://www.openssh.com/ |
| Sentiel | Быстрое сканирование системных файлов | http://zurk.netpedia.net/zfile.html |
| Secure Shell (ssh) | Средство для защищенных подключений с использованием шифрования и взаимной авторизации | ftp://ftp.cs.hut.fi/pub/ssh/ |
| http://www.ssh.fi/ | ||
| Ripper | Взломщик паролей | http://www.openwall.com/john/ |
| Honeyd | Ловушка для хакеров | http://www.citi.umich.edu/u/provos/honeyd/ |
Информацию об атаках и различных средствах противодействия читатель может найти по адресу:
http://www.cert.org/reports/dsit_workshop-final.html
Существует много средств для детектирования
Архив средств для детектирования
http://packetstorm.securify.com/distributed/
CERT/CC публикует справочные материалы и другие документы по данной проблематике, например:
Учитывая важность проблемы защиты, разработана специальная система
Такая схема проще и надежнее, так как нужно заботиться о защите одной машины, а не многих. Экран, маршрутизатор и ЭВМ управления экраном объединены небольшой, незащищенной локальной сетью. Основные операции по защите осуществляются здесь на IP-уровне. Эту схему можно реализовать и на одной ЭВМ, снабженной двумя интерфейсами, через один интерфейс осуществляется связь с Интернет, а через второй — с защищенной сетью. Такая ЭВМ совмещает функции маршрутизаторашлюза, экрана и управления экраном. Возможна реализация
(рис 13.1) Схема FirewallВ этой
(рис 13.2) Схема Firewall, где функцию экрана выполняет маршрутизаторВне зависимости от того, насколько надежен ваш сетевой экран, не следует снижать требования к безопасному конфигурированию рабочих станций и серверов.
Следует также помнить, что сетевой экран не способен защитить от
Существует несколько разновидностей
Фильтрующая разновидность сетевых экранов производит отбор пакетов по содержимому заголовков (адреса и номера портов). Но такие экраны не могут различить команду get от put, так как для этого надо просматривать поле данных. Функции таких сетевых экранов могут быть реализованы практически любым маршрутизатором.
Сетевые экраны на основе прокси-серверов способны анализировать не только заголовки, но и пересылаемые данные. Такие серверы исключают прямое соединение клиента и удаленного сервера. От имени клиента запрос посылает сетевой экран. Для большой сети целесообразно иметь отдельные машины для прокси-серверов, обеспечивающих разные виды услуг (WWW, FTP и пр.), см. рис 13.3 и рис 13.3а.
Разные серверы для разных услуг, помимо безопасности, пропорционально увеличивают быстродействие системы в целом.
На рисунках показаны два (но не единственных) варианта защиты сети с помощью сетевого экрана, построенного на основе прокси-сервера и имеющего "демилитаризованную" зону. В такой зоне обычно размещаются серверы, доступные из Интернет непосредственно (вне защищаемого контура). Такие серверы бывают нужны для рекламирования изделий фирмы, обслуживания клиентов или для демонстрации достижений учреждения или научного центра. Такие схемы сохраняют доступность вашего WEB-сервера со стороны поисковых систем, что позволит узнать о вашей компании или учреждении большему количеству людей. Вариант рис 13.3а несколько более гибкий, но требует трех сетевых интерфейсов для прокси-сервера. Существуют аппаратные решения, совмещающие многие из описанных здесь возможностей.
Следует помнить, что подключение через модем должно производиться через специальный защищенный сервер с поддержкой протоколов типа Radius. Наилучшее для него место размещения – демилитаризованная зона, ведь безопасность сети определяется ее самым уязвимым элементом.
(рис 13.3) Размещение WEB-сервера в демилитаризованной зонеПри выборе политики и правил отбора пакетов важно ответить на следующие вопросы:
(рис 13.3а) Вариант построения демилитаризованной зоны с помощью сетевого экрана с 3-мя интерфейсамиОбычно сетевым экраном реализуется одна из двух политик безопасности:
На первый взгляд, может показаться, что эти две политики неотличимы, но это совсем не так. В первом варианте при появлении нового приложения или протокола придется вводить новые ограничительные правила. Второй вариант политики консервативнее, и здесь менять правила приходится реже.
Прокси-сервер обычно привязан к конкретному типу приложений и способен разрешать или запрещать выполнение определенных операций. Рассмотрим, как внутренним клиентом через такого рода сервер может быть загружена определенная WEB-страница с сервера в Интернет.
Прямое соединение внутреннего клиента с внешним сервером через сетевой экран невозможно. Прокси-сервер посылает HTTP-запрос внешнему серверу от своего имени с IP-адреса своего внешнего интерфейса, подключенного к Интернет. Понятно, что и отклик от внешне го WEB-сервера придет через указанный интерфейс в прокси-сервер. После получения запрошенной WEB-страницы прокси-сервер производит определенные администратором проверки, после чего открывает сессию передачи полученных данных через свой интерфейс LAN клиенту-заказчику. На фазе проверок возможна сортировка данных и блокировка доступа клиента к определенному типу данных, например, порнографического вида.
Вообще фильтрация данных стала в последнее время широко обсуждаемой проблемой. Отбор может производиться по URL, хотя этот способ селекции мало эффективен, во-первых, потому что URL часто меняются, во-вторых, из-за того, что клиент может всегда заменить URL на IP-адрес. Надежда на то, что в ограничительный список можно включить и IP-адреса, напрасна, так как некоторые программы могут воспринимать IP-адрес в десятичном (а не в десятично-точечном) представлении. Существуют и более изощренные фильтры, где содержимое анализируется по ключевым словам или по характеру вложений (Java или ActiveX).
Выбирая правила фильтрации, нужно сначала сформулировать общую стратегию:
В разных системах межсетевых экранов правила фильтрации формулируются различным образом, но, как правило, требуются следующие данные:
В каком направлении и через какой интерфейс передаются пакеты.
Некоторые протоколы желательно отфильтровывать из-за их потенциальной опасности. Работа с ними допускается лишь на специально выделенных машинах.
В принципе, прокси-серверы могут работать в обоих направлениях, т.е. разрешать внешним клиентам доступ к внутренним серверам. Обеспечивая
Существуют так называемые прозрачные прокси-серверы. Такие серверы создают больший комфорт клиентам, ведь не нужно авторизоваться сначала в прокси или как-то адаптировать свое программное обеспечение. Для клиента создается впечатление, что он работает непосредственно с внешним сетевым объектом, он может даже не знать о существовании прокси. Запросы внутреннего клиента к внешнему серверу перехватываются прокси-сервером и после анализа блокируются или передаются во внешнюю сеть. Пользователь авторизуется на внешнем сервере, а не в прокси. Но у прокси остается возможность блокировки некоторых операций, например, GET или PUT. Прокси может вести журнал операций или предоставлять различные права разным клиентам. Следует заметить, что прозрачный сервер не скрывает IP-адреса внутренних клиентов. Если прокси организует подключение внешнего клиента к внутреннему серверу, для внутреннего сервера клиентом является прокси, а не внешний объект.
Но внешний объект знает IP-адрес внутреннего сервера. Ситуацию можно несколько улучшить, если поместить все внутренние серверы в демилитаризованную зону, — тогда хакер не получит никаких данных об остальных объектах внутренней сети. Внутренние серверы в этом случае должны быть дополнительно защищены, например, локальными программами типа
В случае классического прокси клиенту нужно знать имя прокси и ЭВМ, с которой он хочет взаимодействовать. Имя прокси клиент должен преобразовать в его IP-адрес, послав запрос в DNS, а имя ЭВМ — передать прокси-серверу в качестве параметра запроса. DNS в этом случае сообщает внутренние IP-адреса только внутренним сетевым объектам. Для работы с внешними IP-адресами служит другой DNS-сервер. В случае же прозрачного прокси схема взаимодействия с DNS идентична той, которая существует при отсутствии сетевого экрана.
Для прокси-серверов достаточно типично использование трансляции сетевых адресов NAT (Network Address Translation). Такая схема, среди прочего, позволяет обойтись меньшим числом реальных IP-адресов. При реализации запросов во внешнюю сеть программа NAT подставляет в поле адрес отправителя IP сервера NAT. При получении отклика программа NAT заносит в поле адреса получателя адрес клиента источника запроса.
Существуют сетевые услуги, которые следует блокировать сетевым экраном.
Не следует оставлять без внимания безобидный на первый взгляд протокол ICMP, так как он позволяет получить много разнообразной и полезной для хакера информации. По этой причине целесообразно блокировать прохождение ICMP-пакетов следующих типов:
Если вы поставили и сконфигурировали
Расстаньтесь с услугами
Если сетевой экран работает на ЭВМ с ОС Windows, там не должно быть файловой системы FAT, так как она не обеспечивает защиты.
В последнее время появился новый вид услуг – .)
Недостатки системы
Если требуется дополнительная степень защиты, при авторизации пользователей в защищенной части сети могут использоваться аппаратные средства идентификации, а также шифрование имен и паролей.
В последнее время появилось большое число аппаратных решений для межсетевых экранов. Это, прежде всего, CISCO PIX
При выборе той или иной системы
К средствам мониторинга сетевых атак относятся такие программные продукты, как SNORT (
Интересные возможности предоставляет программный пакет TCP Wrapper — его применяет демон tcpd, запускаемый вместо сетевых служб, которые указаны в файле inetd.conf. TCP
Хорошего результата можно достичь, грамотно конфигурируя программное обеспечение ЭВМ и контролируя качество паролей. Пример фрагмента журнального файла ZoneAlarm (разновидность
FWIN,2005/08/19,14:25:04 +4:00 GMT,61.235.154.103:44666,194.85.70.31:1 027,UDP FWIN,2005/08/19,14:39:36 +4:00 GMT,220.168.156.70:37740,194.85.70.31:1 026,UDP FWIN,2005/08/19,14:39:36 +4:00 GMT,220.168.156.70:37740,194.85.70.31:1 027,UDP FWIN,2005/08/19,14:44:34 +4:00 GMT,222.241.95.69:32875,194.85.70.31:10 27,UDP
Эта распечатка демонстрирует попытки прощупывания ЭВМ с IP-адресом 194.85.70.31 на предмет откликов со стороны портов 1026 и 1027 (протоколы cap и exosee). Зондирование производится с нескольких разных адресов (61.235.154.103, 220.168.156.70 и 222.241.95.69). Объектом атаки в данном случае является рабочая станция, которая не поддерживает эти протоколы.
После проникновения хакер старается ликвидировать следы своей работы и в то же время оставить для себя "калитку". Сделать это он может, заведя новую учетную запись или загрузив троянского коня. По этой причине нужно регулярно проверять список учетных записей и сканировать машину на предмет наличия троянских коней.
Для отслеживания работы ОС и приложений обычно предусматривается система журнальных файлов, которая фиксирует все события (приход запросов, соответствие запросов определенным критериям и т.д.)
Рассмотрим использование журнальных файлов на примере анализа успешной атаки вторжение через приложение SSH.
Если возникло подозрение относительно возможного вторжения, надо начинать с просмотра файлов secure и messages (каталог / var / log / ОС LINUX). В нашем случае атака началась в пятницу вечером (8-го июля 2005 года). Ниже представлены фрагменты журнальных файлов, иллюстрирующие характер атаки.
Jul 8 18:23:18 fender sshd[15017]:Illegal user anonymous from 207.232.63.45 Jul 8 18:23:20 fender sshd[15019]: Illegal user bruce from 207.232.63.45 (Нью-Йорк, США) Jul 8 18:23:22 fender sshd[15021]: Illegal user chuck from 207.232.63.45 Jul 8 18:23:23 fender sshd[15023]: Illegal user darkman from 207.232.63.45 … Jul 9 13:15:13 fender sshd[16764]: Illegal user bruce from 129.237.101.171 Jul 9 13:15:14 fender sshd[16766]: Illegal user chuck from 129.237.101.171 Jul 9 13:15:16 fender sshd[16768]: Illegal user darkman from 129.237.101.171 Jul 9 13:15:17 fender sshd[16770]: Illegal user hostmaster from 129.237.101.171 …. Jul 10 15:25:34 fender sshd[28450]: Did not receive identification string from 80.18.87.243\par Jul 10 16:56:16 fender sshd[28457]: Illegal user lynx from 80.18.87.243\par Jul 10 16:56:17 fender sshd[28459]: Illegal user monkey from 80.18.87.243\par Jul 10 16:56:18 fender sshd[28461]: Illegal user lion from 80.18.87.243\par …. Jul 10 02:42:02 fender sshd[18064]: Did not receive identification string from 166.70.74.35 Jul 10 03:09:13 fender sshd[18067]: Illegal user admin from 166.70.74.35 (Солт Лейк Сити, США) Jul 10 03:09:14 fender sshd[18069]: Illegal user admin from 166.70.74.35 Jul 10 03:09:16 fender sshd[18071]: Illegal user admin from 166.70.74.35 …. Jul 10 16:56:16 fender sshd[28457]: Illegal user lynx from 80.18.87.243 (Венеция, Италия) Jul 10 16:56:17 fender sshd[28459]: Illegal user monkey from 80.18.87.243 Jul 10 16:56:18 fender sshd[28461]: Illegal user lion from 80.18.87.243 …. Jul 10 16:56:40 fender sshd[28509]: Failed password for root from 80.18.87.243 port 45208 ssh2 Jul 10 16:56:41 fender sshd[28511]: Accepted password for root from 80.18.87.243 port 45298 ssh2 …. Jul 10 19:13:49 fender sshd[31152]: Accepted password for root from 81.181.128.181 port 4943 ssh2
Из записей видно, что машина была атакована из 7 точек. Четыре расположены в США ( IP=166.70.74.35; 207.232.63.45; 129.79.240.86 и 129.237.101.171 ), по одной — в Италии, Румынии и Венгрии ( IP=80.98.194.185 ). Производится подбор параметров доступа имя-пароль. Подбор продолжался около двух суток.
Успешный вариант был найден машиной из Италии ( IP-адрес=80.18.87.243 Венеция). Практически сразу атака со стороны всех ЭВМ была прервана и хакер вошел на атакуемую ЭВМ ( имя_ЭВМ=fender ) из машины с IP=81.181.128.181 ( Румыния ).
Для дальнейшего анализа событий нами были использованы данные из файла .bash_history, куда записываются все команды, исполняемые пользователем в терминальном режиме. Записи этого файла и результаты работы демона syslogd говорят о том, что через 3 минуты после успешного вторжения хакер заблокировал работу syslog.
Далее хакер заблокировал доступ к системе других пользователей, загрузил туда файл pass_file (объем 696057 байт), содержащий комбинации имя-пароль (небольшие фрагменты содержимого файла представлены ниже).
lynx lynx monkey monkey lion lion heart heart michel michel alibaba alibaba ….. root 123456 root 1234567 …. root 1234567890 root rootroot root rootrootroot root 123root123 root 987654321 …. root 4321 root 321 root root! root root!@ root root!@# ….
Хакер рассчитывает на то, что пользователь ЭВМ ленив и выбирает простой пароль (легче запомнить — легче подобрать). Кроме того, хакер скопировал на взломанную ЭВМ несколько скриптов и файл со списком адресов — кандидатов на взлом. После этого машина включилась в работу по подбору паролей на других ЭВМ.
К сожалению, факт атаки был установлен лишь утром в понедельник. Сначала была проведена частичная блокировка. Хакер почувствовал неладное и выдал команды last и ps, пытаясь понять, что происходит; дальнейшая его работа была полностью блокирована.
Какие выводы из этой истории можно сделать? На атакованной рабочей станции была установлена SSH устаревшей версии (имевшей уязвимость) и использован достаточно простой пароль. По этой причине нужно своевременно обновлять ОС и версии приложений. (Про выбор паролей смотри RFC-2196.) Особо опасными с точки зрения атак является ночь и выходные дни. Если нет насущной необходимости, лучше на это время блокировать доступ к ЭВМ или даже выключать ее.
Помимо журнальных файлов ОС надо просматривать и соответствующие файлы приложений, например,
Хакер может попытаться уничтожить следы своего пребывания, стерев или очистив определенные журнальные файлы. Вполне возможно, в нашем случае хакер так бы и поступил, восстановив перед уходом и доступ по SSH. По этой причине следует заранее побеспокоиться о периодическом копировании журнальных файлов на недоступное для хакера устройство или сохранении их в зашифрованном виде. Но хакер может поступить и более жестоко, например, разметив заново системный диск. Хорошая схема защиты должна предотвращать такого рода действия или позволять хотя бы быстро восстанавливать разрушенную конфигурацию системы.
Следует учитывать, что сами журнальные файлы могут стать объектом атаки типа DoS. Большой поток запросов, поступающих с нескольких ЭВМ и обращенных к одному или нескольким ресурсам машины, могут привести к быстрому росту журнальных файлов, переполнить дисковое запоминающее устройство и блокировать работу сервера.
Широкое внедрение ИНТРАНЕТ, где группы разбросанных по сети пользователей локальных сетей объединяются друг с другом с помощью виртуальных каналов
Стандарт IEEE
(рис 13.4) Формат пакета IEEE 802.10Поле чистый заголовок включает в себя три субполя. MDF (Management Defined Field) является said (Security Association Identifier) — идентификатор сетевого объекта ( (Link Service Access Point) представляет собой код, указывающий принадлежность пакета к протоколу
Защищенный заголовок копирует себе адрес отправителя из mac-заголовка (MAC — Media Access Control), что повышает надежность.
Поле ICV (
Наличие data определяется физической сетевой средой. Благодаря наличию mac-заголовка
Одним из наиболее эффективных способов защиты информации является шифрование сообщений, что, к сожалению, заметно увеличивает время отклика (шифрование-дешифрование). Задержки при большом входном трафике могут привести к блокировке сервера.
Традиционные
Смотри:
До недавнего времени компания CISCO хранила пароли в конфигурационных файлах в виде открытого текста, теперь они собираются использовать хешированное хранение паролей.
Но современные ЭВМ легко позволяют подобрать пароль при наличии хэша (2ГГц Intel может проверить 5000 паролей в сек). По этой причине нужно ограничить доступ к файлу хэшей паролей. Табличный метод (rainbow tables) может ускорить подбор на порядок.
Многофакторная аутентификация является, похоже, единственной альтернативой современной системе паролей. Здесь имеется в виду использование сертификатов, ID-карт пользователей, и контроль их биометрических данных (отпечатков пальцев, голоса или радужной оболочки глаза).
Многие администраторы, установив
Несколько увеличить безопасность может применение
(рис 13.5) Пирамида MaslowНа следующем уровне размещается
Далее следует уровень безопасности специфических программ организации, так как именно они становятся чаще всего мишенями атаки. Например, FreeBSD имеет МАС -механизм (
На вершине пирамиды находятся системы
На рис 13.6 отображена схема системы безопасности локальной сети LAN (выделена серым фоном). Связь LAN с внешней сетью осуществляется через сетевой экран (
(рис 13.6) Система безопасности локальной сетиАдминистратор может поменять стандартные значения номеров портов для обычных видов сервиса (SSH, FTP, WWW и т.д.). Это не делает сервисы безопасными, но заметно осложняет работу хакера. Он может просканировать порты и найти нужное значение, но это, вероятно, привлечет внимание администратора. Аналогично, можно поменять имена некоторых системных утилит, например, cmd.exe, telnet.exe, tftp.exe и т.д.. При этом номера портов нужно будет задавать явно, что осложнит и работу обычных пользователей. Такие меры можно рассматривать в качестве дополнительных.
Одним из средств противодействия атакам является введение производителями микропроцессоров флага NX (не исполнять), который позволяет разделить память на области, где вариация содержимого возможна, а где — нет. Такая технология препятствует модификации хакерами демонов и фрагментов ОС и позволяет заблокировать любые атаки, сопряженные с переполнением буферов. Данная технология внедрена компанией AMD в своем 64-битовом процессоре, а Intel — в процессоре Itanium (2001 год). Для широкого внедрения этой техники нужно переписать и перекомпилировать существующие ОС. В настоящее время эта техника внедрена в Microsoft Windows Server 2003 (Service Pack 1), Microsoft Windows XP (Service Pack 2), SUSE Linux 9.2 и Red Hat Enterprise Linux 3 с обновлением 3. Некоторые разработчики ОС внедрили эмуляции NX для процессоров, где этот флаг аппаратно не поддерживается. Развитие технологий NX может по оценкам экспертов (
Одной из наиболее частых мишеней атак являются базы данных, которые являются основой большинства информационных систем. Разработана схема, при которой исходная копия базы хранится на базовой ЭВМ, не связанной с Интернет. Копии этой базы передаются на компьютеры, которые обслуживают внешние сетевые запросы. При этом данные снабжаются цифровой подписью базовой ЭВМ. Вместе с откликом на запрос пользователь получает не только запрошенные данные, но и подтверждение того, что они получены из исходной базы. Как отклик, так и подтверждение снабжаются цифровой подписью, что позволяет клиенту проверить неискаженность полученных данных.
Пользователь сети должен ответить себе на следующие вопросы:
Ответив на эти вопросы, он сможет определить, какие средства защиты следует использовать. Некоторые пользователи, зная, что работают за
Стирайте или еще лучше физически уничтожайте неиспользуемые диски, CD и другие носители.
При работе с беспроводными сетями следует применять VPN с шифрованием. При работе с беспроводными сетями используется протокол IS-41-C (США), который модельно сходен со стандартом GSM. Беспроводное оборудование должно отключаться сразу после завершения использования.
Администраторы должны выдавать новый пароль в случае утраты, только позвонив предварительно клиенту по телефону.
В случае работы с беспроводными сетями при выявлении подозрительного объекта желательно его локализовать. Это может быть сделано с помощью узконаправленной антенны c аттенюатором входного сигнала. Помочь этому может программа
Существуют специальные средства выявления уязвимостей сети. Следует учитывать, что полный доклад о таких уязвимостях может иметь размер телефонной книги. В такой ситуации трудно решить, с чего начать, если число уязвимостей больше 10000. Одним из возможных подходов является использование этих данных совместно с результатами работы
Выявление все новых уязвимостей вынуждает более внимательно относиться к системам обновлений (patches). В случае обеспечения безопасности отдельной ЭВМ применима системы Microsoft SMS (System Management Server) и SUS (Software Update Service). Существуют и общедоступные средства, например, http://www.patchmanagement.org. Следует учитывать, что процесс копирования и обновления ОС или приложений сам по себе является уязвимым и проводить его следует со всеми возможными предосторожностями.
Разработчики и коммерческие поставщики программных продуктов часто выдают программы, структура которых не удовлетворяет самым элементарным требованиям безопасности. Из-за спешки иногда в новые версии программ переносятся уязвимости, выявленные в предыдущих вариантах.
Хорошие результаты с точки зрения безопасности могут быть получены, если запретить пользователям устанавливать программное обеспечение по своему усмотрению.
В последнее время разработана новая технология, которая обеспечивает приемлемый уровень безопасности. Это VE (
VE определяет схему взаимодействий и распределение прав доступа. VE инкапсулирует программу или группу программ, предоставляя весь спектр услуг (память, коммуникации и пр.). При этом дублируются все необходимые данные. VE не могут быть полностью изолированы друг от друга и, тем более, от ОС. Типичное взаимодействие между VE сопряжено с использование общих данных. Любые операции VE связанные с ресурсами ЭВМ находятся под жестким контролем.
Для файловой системы и Registry главным препятствием является дублирование ресурсов. C одной стороны, программа должна иметь возможность изменять существующие значения, например, ключей Registry или конфигурационных файлов ОС. С другой стороны, если программа является
Для обеспечения полной безопасности VE-технология должна размещаться ниже ядра, а не работать параллельно ему. Если переместить ядро в сектор 1 или 2, VE-устройству будет предоставлен полный контроль над ЭВМ. Существует несколько вариантов взаимодействия VE и ОС.
Так как самой массовой ОС для серверов в настоящее время являются различные разновидности LINUX, разработчикам новых версий этой ОС следует задуматься о встроенных средствах безопасности. Одним из таких подходов может стать минимизация ядра ОС. Только для ядра небольшого размера можно гарантировать его безопасность, тексты с миллионом строк привилегированного объектного кода неконтролируемы. В такое ядро должно быть включено минимальное число функций (управление памятью,
Работа Syslog допускает передачу данных посредством протокола UDP (существует версия syslog-ng, где транспортным протоколом может быть TCP). Если атакер имеет доступ к каналу между отправителем и получателем, он сможет отслеживать обмен и уничтожать или фальсифицировать данные, говорящие о его присутствии. Хакер может также посылать уведомления получателю (по известному порту), добиваясь переполнения диска и блокировки работы системы syslog, , Syslog Ng и Kiwi.
Если атакер обычно собирает данные о будущем объекте атаки, то так же следует действовать и потенциальным жертвам. Необходимо формировать динамически обновляемые базы
Следует контролировать число и состав различных сервисов, работающих на ЭВМ (например, telnet, ssh,
Рассмотрим признаки, которые могут свидетельствовать об успешном вторжении в ЭВМ (вариант ОС LINUX) (см.
Часто администратор лишь чувствует, что что-то происходит не так. Этого должно быть достаточно, чтобы начать исследования. Ниже приводится перечень команд, которые позволяют выявить и конкретизовать названные выше аномалии.
find / -size +1000k -mtime +7 -print
ip link | grep PROMISC или /sbin/ifconfig
find / -nouser -print
find / -uid 0 -perm -4000 -print
find / -name "..." -print
grep :0: /etc/passwd
Попытки хакера установить свое программное обеспечение часто приводит к повреждению системных или прикладных программ. В системе RedHat имеется встроенная система RPM (RedHat Package Manager), которая позволяет выявить такие повреждения. Например, команда
rpm -qa | # rpm -Va | sort
поможет решить эту проблему. Для этой же цели можно использовать программу ).
Просмотрев список активных процессов с помощью команды ps-, следует обратить внимание на демоны, проход к которым начинается с символа "точка", а также на любые необычные имена процессов. Чтобы узнать подробности, следует заглянуть непосредственно в каталог /proc. Например, выдав команду cat/proc/20999, где 20999 — pid процесса. Для выявления прослушивающих сервисов можно выдать команду netstat-.
Аналогичные средства диагностики существуют и для ОС Windows (смотри, например, http://www.cert.org/tech_tips/WIDC.html). Следует помнить, что файловые системы FAT и FAT32 (Windows) не имеют средств защиты, поэтому при построении систем повышенной безопасности следует отдать предпочтение системе NTFS.
wmic useraccount.wmic /output:C:\services.htm service get /format:hform (для Windows-XP). Полезно также регулярно просматривать содержимое файлов Autoexec. bat, config.sys, system.ini и win.ini. Некоторые программы для "черного хода" загружаются в качестве услуг на фазе загрузки системы. Просмотрев список загруженных услуг, нужно удалить все ненужные.netstat –an. XP позволяет проверить принадлежность процессов определенному порту с помощью команды netstat –ao. Преобразование ID процессов в их имена можно осуществить посредством команды: wmic process where ProcessId="x" get caption.net share.at или schtasks.pulist.exe или tlist.exe. Первая из команд позволяет также выявить, кто запустил тот или иной процесс. Команда tlist.exe с флагом –t отображает список процессов, породивших msinfo32.msc."Tools, Folder Options, View" и затем "Show hidden files and folders". Годится для этой цели и команда dir/ah.xcalc.exe или showacls.exe.gpresult/v.Список номеров портов для известных троянских коней можно найти в http://www.simovits.com/nyheter9902.html
Ниже перечислены некоторые разновидности
Land attack. Атакер пытается замедлить работу вашей машины, послав пакет с идентичными адресами получателя и отправителя. Для стека протоколов Интернет такая ситуация не нормальна. ЭВМ пытается выйти из бесконечной петли обращений к самой себе. Имеются пэтчи для большинства операционных систем.
Unknown IP protocol. Традиционными транспортными протоколами являются UDP, TCP и ICMP, которые работают поверх протокола IP. Код протокола определяется полем тип протокола заголовка IP-дейтограммы. Существует большое число протоколов, которые идентифицируются с помощью номеров портов, например, HTTP, использующий в качестве транспорта TCP. Появление незнакомого протокола должно всегда настораживать, так как может нарушить нормальную работу программ.
Ping of death. Предпринимается попытка послать пакет, длина которого больше теоретического предела 65536 байтов. IP-уровень фрагментирует такие пакеты, а получатель осуществляет сборку, которая иногда приводит к разрушению ОС. Системы до 1997 года были уязвимы для такой атаки. Операция проделывалось, например, с помощью команды ping -l 65550.
Nestea attack. Опасное перекрытие IP-фрагментов, сформированное программой nestea. Ваша операционная система может стать нестабильной или разрушиться. Имеются пэтчи для большинства операционных систем. Адрес отправителя, вероятнее всего, не является истинным. Это означает, что отправитель использует фальшивый IP-адрес и прикидывается кем-то еще. К сожалению, не существует простых способов определить, кто в действительности посылает кадры с искаженным адресом отправителя.
Empty fragment. Когда пакеты слишком длины, они могут быть фрагментированы. Система контроля фиксирует фрагмент с нулевой длиной. Например, IP-заголовок имеет 20-байт, а данных вообще нет. Это может указывать, что:
Ядра Linux для версий между 2.1.89 и 2.2.3 были уязвимы для атак DoS с привлечением этой методики. Каждый такой фрагмент вызывает некоторую
Suspicious Router advertisement. Подозрительное анонсирование новых маршрутов. Атакер возможно пытается перенаправить трафик на себя. Для этого может использоваться, в том числе, и ICMP-протокол. Соответствующие опции должны всегда вызывать подозрение.
Corrupt IP options. Опции IP на практике почти не применяются. По этой причине в их обработке имеется достаточно много ошибок. Ими часто пытаются воспользоваться хакеры. Появление в пакете IP-опций должно вызывать подозрения.
Echo reply without request. Это может быть результатом взаимодействия хакера с засланным троянским конем. Может быть это и результатом дублирования вашего IP-адреса. В любом случае такие пакеты достойны внимания.
UDP port loopback. Пакет UDP путешествует между двумя эхо-портами. Такие пакеты могут делать это бесконечное число раз, используя всю имеющуюся полосу сети и производительность ЦПУ. Имеется несколько стандартных услуг такого рода, которые могут работать в системе. Среди них:
echo (порт 7) дневная квота (порт 17) chargen (порт 19)
Атакер может создать проблемы, фальсифицируя адрес отправителя и вынуждая две
Snork attack. Регистрируются UDP-дейтограммы с портом назначения 135 (Microsoft
TCP FIN scan. Разновидность TCP-сканирования. Однако хакер здесь пытается осуществить так называемое "FIN-сканирование". Он пытается закрыть несуществующее соединение сервера. Это ошибка, но системы иногда выдают разные результаты в зависимости от того, является ли данная услуга доступной. В результате атакер может получить доступ к системе.
DNS cache poison. Атакер послал запрос DNS-серверу, который содержит также и отклик. Это может быть попыткой компрометировать DNS-сервер. Это может быть также результатом работы ISP, который перенаправляет своих клиентов на прокси-сервер. Но, вероятнее всего, это вторжение в систему. Для того, чтобы улучшить рабочие параметры, DNS-серверы пытаются "кэшировать" имена локально. Серверы просматривают секции откликов всех пакетов, приходящих в систему. Они запоминают эти отклики на короткое время для случая, когда кто-то еще нуждается в этой информации. Очевидной проблемой является вариант, когда такой пакет содержит ложную информацию. В частности, кто-то может послать запрос в DNS, содержащий, кроме того, дополнительную информацию в секции отклика. Старые серверы воспринимают эту информацию, кэшируют ее, и выдают в ответ на запрос, если таковой поступит. (Новые DNS-серверы лишены этой уязвимости, но существует еще достаточно много старых серверов). Если ваш DNS-сервер обновлен, атака такого рода невозможна.
DNS BIND version request. Сервер BIND DNS содержит в своей базе данных запись CHAOS/TXT с именем "VERSION.BIND". Если кому-то нужна эта запись, присылается версия программы BIND. Такой запрос сам по себе не является атакой, но может быть разведывательным рейдом. Однако если возвращается версия типа "4.9.6-REL" или "8.2.1", это указывает, что у вас установлена версия с хорошо известной дыркой, связанной с переполнением буфера.
SMB malformed. Существует ошибка в старой версии SMB (система Microsoft для совместного использования файлов и принтеров в сети). Эта ошибка может быть использована при авторизации, путем посылки специально сформированных пакетов. При реализации этого трюка машина крэшится. Данная атака может быть предпринята успешно для систем Windows NT 4.0 SP4 и Windows 95 (все версии). Заметим, что имеются пэтчи для всех систем. Для того, чтобы дырка работала, "File and
HTTP URL directory traversal/climbing. Ситуация выглядит так, как будто атакер пытается прочесть посторонние файлы вашей системы. Обычная ошибка web-браузера заключается в том, что хакер может специфицировать URL, который выглядит как /../../../foo/bar.txt. Эта атака может удаться, так как программист не осуществляет двойной проверки URL, чтобы убедиться, корректен ли файл web-сайта. Сигнатурой такой атаки может быть наличие в URL последовательности ../... Иногда такого рода атака может быть имитирована некорректными связями, размещенными на странице. Это говорит о некорректной конфигурации. Во-первых, проверьте параметры URL, чтобы выяснить, к какому файлу намерен получить доступ атакер. Затем проверьте, получил ли атакер доступ к файлу. Если это действительно критичный файл и атакер был успешен, необходимо предпринять срочные действия. Например, если атакер получил доступ к файлу паролей, необходимо заменить все пароли.
Следует также проверить, является ли версия сервера новейшей и использованы ли все существующие пэтчи безопасности. Большинство таких атак предпринимается против "встроенных" web-серверов (т.e. web-серверов, добавленных в качестве части другого программного продукта), а не против реальных web-серверов типа Apache и IIS.
Данные HTTP CGI содержат ../../../... Данные, переданные в URL, имеют подозрительный проход, содержащий ../../../..; Этот проход может быть использован для доступа к привилегированным файлам. Атакер пытается добраться по дереву каталогов до нужных ему файлов. Некоторые приложения Web используют проходы, содержащие ../../../.. . Вам следует рассмотреть URL и аргумент GET с целью проверки их корректности. Если проход в аргументе GET указывает на попытку доступа к привилегированным данным, возможно, ваш сервер скомпрометирован.
HTTP asp with \ appended. Происходит попытка доступа к файлу asp с завершающим символом \. В некоторых ситуациях вместо исполнения программы asp будет возвращен исходный asp-файл. Это раскроет атакеру критическую информацию о сервере. Исходный текст программы сервера часто содержит пароли, скрытые имена файлов или ошибки, которые в такой ситуации относительно легко найти. Хакер может затем использовать эту скрытую (hidden) информацию для вскрытия сервера.
Telnet Bad IFS. В UNIX переменная "IFS" специфицирует символ, разделяющий команды. Если значение этой переменной изменено, то система детектирования вторжения не будет способна корректно интерпретировать команды. Более того, кто-либо может изменить эту переменную для того, чтобы модифицировать работу некоторых скриптов ядра. В частности, плохой IFS станет разграничителем, используемым при разборе любых вводов, таких, как имена файлов или DNS-имена. В этом случае нужно установить IFS соответствующим символу '/' или '.'. Вообще, если вы хотите жить немного спокойнее, лучше заблокировать применение telnet, предложив пользователям перейти на SSH.
Telnet RESOLV_HOST_CONF. Переменная окружения RESOLV_HOST_CONF посылается с привлечением поля опций Telnet. Это поле не должно никогда изменяться таким способом. Это может означать попытку получения доступа к критическим файлам типа паролей и т.д.
SMTP DEBUG command. Кто-то сканирует вашу систему с целью выявления ее уязвимости. В 1988 году червь Morris уложил Интернет. Одним из путей распространения червя являлась программа sendmail. Sendmail поддерживала нестандартную команду "DEBUG", которая позволяет любому получить контроль над сервером. Червь Morris автоматизировал этот процесс для распространения через системы sendmail. Сейчас маловероятно, что вы найдете такую старую почтовую систему. Следовательно, такая атака будет означать, что кто-то использует универсальный сканер уязвимости. Иногда система может выйти из синхронизма (сбой в ISN), что вызывает большие потери пакетов. В таких условиях по ошибке может быть запущена команда DEBUG. Например, если вы работаете с версией сервера для системы 486, который обрабатывает большое количество e-mail, такая десинхронизация может произойти. Уязвимой системой является Sendmail/5.5.8.
SMTP MIME null charset. Обнаружено незнакомое почтовое сообщение, вероятно сконструированное, чтобы разрушить почтовый сервер. В заголовки "Reply-To:" сообщения встраиваются исполняемые Shell и PERL коды. Когда система откликается, эти коды будут исполнены. Например, старые версии list-сервера MAJORDOMO исполняют любой PERL-скрипт, который вставлен в это поле.
FTP pipe in filename. Совершается попытка исполнить программу на FTP-сервере. Допускающая это уязвимость имеется во многих FTP-демонах до 1997 года, таких, что, если перед именем файла присутствует символ PIPE (|), сервер пытается исполнить программу имя которой следует за ним. Так как FTP-сервер обычно работает с привилегией root, может произойти его компрометация. Проверьте, что у вас работает новейшая версия сервера.
FTP Site Exec DotDot. Попытка неавторизованного доступа. Некоторые версии wu-site exec для удаленных машин. Путем предоставления прохода с определенными параметрами удаленный пользователь может исполнить произвольные команды на FTP-сервере. Эта атака позволяет атакующему выполнять команды на атакуемой машине. Это может привести к получению им доступа root-уровня. Такой дефект имеют системы wu-
NMAP ping. Для проверки вашей системы на уязвимость используется программа NMAP. NMAP — очень популярная программа, применяемая хакерами для сканирования Internet. Она работает под Unix, имеет много конфигурационных опций и использует несколько трюков, чтобы избежать детектирования системами, отслеживающими вторжение. NMAP не позволяет хакеру вторгнуться в систему, но допускает получение им полезной информации о конфигурации системы и доступных услугах. Программа часто используется как прелюдия более серьезной атаки.
SNMP WINS deletion. Совершена попытка стереть записи WINS через интерфейс SNMP сервера. Это может быть попытка реализовать Denialof-Service (DoS) или просканировать систему безопасности. Клиенты Windows контактируют с системой WINS, чтобы найти серверы. Многие системы уязвимы для атак при помощи SNMP-команд, посланных серверу для того, чтобы стереть записи. Это не взламывает сервер, но после стирания записи в базе данных клиенты и серверы смогут более найти друг друга. Однако этот отказ обслуживания (DoS) может предварять другие атаки. Это может быть частью широко диапазонного сканирования с целью поиска слабых точек в сети. Эта атака может быть против систем, где нет работающих SNMP или WINS.
SNMP SET sysContact. Совершена попытка удаленно установить поле sysContact через SNMP. Это, вероятно, сканирование уязвимых мест вашей системы. Группа SNMP "system" используется всеми MIB. Она часто сканируется хакерами при предварительной разведке. Одним из способов сканирования является выполнение команд SET для поля "sysContact" для того, чтобы просмотреть, реагирует ли какая-либо система. Такие SET часто используют для взлома хорошо известные пароли/communities. Для противодействия рекомендуется запретить исполнение команд SET удаленно.
CGI bash. Может быть совершена попытка исполнить скрипт bash, который в случае успеха позволит хакеру получить доступ к серверу. Это программа shell, которая может выполнять произвольные операции на сервере. Если она была случайно помещена в удаленно доступный каталог и если вы обнаружили, что какие-то параметры системы стали доступны хакеру, считайте свою систему скомпрометированной. Вы должны немедленно удалить эту программу из данного каталога, проверить систему на наличие троянских коней и проконтролировать, не изменялась ли ее конфигурация. Для этого у вас должна иметься копия всех конфигурационных файлов на отдельном носителе.
CGI perl.exe. Может быть произведена попытка исполнить perl.exe, что позволит хакеру неавторизованный доступ к серверу. Это программа shell, которая может выполнить произвольные операции на сервере. Если эта программа случайно помещена в удаленно доступный каталог и если выявлена модификация некоторого системного параметра, можете считать свою систему скомпрометированной. Вам следует немедленно удалить программу из ее каталога и поместить в более подходящее место, проверить вашу систему на наличие троянских коней, а также проконтролировать конфигурацию на предмет возможных модификаций.
В 1997 году одна из подгрупп IETF выпустила справочник Site Security
В правилах для пользователей необходимо регламентировать следующие вопросы.
Полезно объяснить пользователям, что их поведение в сети должно быть этичным!
Примером соглашения для доступа к компьютерам может служить документ такого рода для факультета информатики университета Мельбурна. (Смотри также http://www.admin.com.)
Следует, впрочем, иметь в виду, что, прочитав и подписав правила работы в сети, пользователь, если даже он понял, что он подписал, об этом немедленно забывает.
Попытайтесь убедить его не давать свой пароль даже очень большому начальнику.
WEB-сервер — достаточно сложная и потому уязвимая для атак программа. Причем угрозы могут исходить из самых неожиданных мест. Так в конце июня 1997 года было обнаружено, что Windows-95 (и NT) "повисает" (полный перечень причин повисания этой системы может занять целый том) при приходе на ее вход ICMP-пакета с длиной, которая не соответствует значению, указанному в его поле заголовка Длина.
WEB-сервер, так же, как любая сеть, должен иметь свою, желательно изложенную на бумаге политику безопасности. Это должен быть достаточно простой документ типа приведенного ниже, а доступ к WEB-серверу должен имеет пять уровней.
Для получения доступа на уровне 3-5 необходимо письменное разрешение директора организации или его заместителя по информационным системам. Доступ уровня 2 автоматически получают все сотрудники организации или фирмы при авторизации. Администраторы могут аннулировать авторизацию по решению заместителя директора по информационным системам, а при чрезвычайных обстоятельствах — самостоятельно, но с последующим уведомлением руководства. Работа с локальной консоли WEB-сервера разрешается только администраторам. Удаленная работа администраторам запрещена, они должны работать только с локального терминала.
Информация из каталогов /private, которая считается конфиденциальной, доступна только с терминала самой ЭВМ.
При работе с WEB-сервером не разрешается доступ к базам данных или файлам, если для этого не имеется соответствующего индивидуального договора .
Описание политики безопасности должно включать указание периода формирования резервных копий содержимого сервера, описания допустимых сетевых услуг и время профилактических остановок. Включается сюда перечень видов обязательного мониторинга сервера и просмотра дневника посещений.
Приведенный текст описания политики безопасности может варьироваться в широких пределах, он зависит от используемой ОС и набора сетевых утилит.
Наиболее безопасной сетевой средой считается Macintosh OS. Это связано с тем, что она не включает в себя
Системы Windows NT и UNIX обладают сопоставимыми и достаточно высокими уровнями безопасности. Большое число сообщений о дефектах безопасности UNIX свидетельствует о его массовом использовании.
Теперь рассмотрим, что нужно сделать, чтобы обеспечить максимально возможную безопасность WEB-cервера.
При работе с ОС Windows NT следует отключить доступ TCP/IP от услуг NETBIOS. Это может быть сделано с помощью
Если WEB-сервер нуждается в контроле доступа, то в настоящее время (в HTTP/1.1) имеется две возможности. Первая (basic) предполагает традиционный ввод и передачу по сети имени клиента и пароля. Эта схема проста, но допускает перехват параметров доступа (а между клиентом и сервером может быть достаточно много промежуточных узлов). Вторая схема (digest) для пользователя выглядит аналогично, но вводимое имя и пароль не передаются по сети непосредственно. На их базе формируется дайджест MD5, который пересылается по сети и используется для идентификации клиента.
Наиболее полезными серверами по проблемам безопасности являются в данный момент серверы: http://www.linuxberg.com/, http://freshmeat.net/, http://www.securityfocus.com/infocus/1216, http://user-mode-linux.sourceforge.net/
| Название программы | Назначение | Ссылка |
|---|---|---|
| snort | Система обнаружения попытки вторжения | http://www.clark.net/~roesh/security.html |
| http://www.snort.org/docs/idspaper/ | ||
| http://www.snort.org/docs/snort-rh7-mysql-ACID-1-5.pdf | ||
| SAINT | http://www.wwdsi.com/saint/ | |
| PMFirewall | Конфигурирование ipchains в |
http://www.pointman.org/ |
| OpenSSH | Защищенная оболочка Secure Shell с открытым кодом | http://www.openssh.com/ |
| Sentiel | Быстрое сканирование системных файлов | http://zurk.netpedia.net/zfile.html |
| Secure Shell (ssh) | Средство для защищенных подключений с использованием шифрования и взаимной авторизации | ftp://ftp.cs.hut.fi/pub/ssh/ |
| http://www.ssh.fi/ | ||
| Ripper | Взломщик паролей | http://www.openwall.com/john/ |
| Honeyd | Ловушка для хакеров | http://www.citi.umich.edu/u/provos/honeyd/ |
Информацию об атаках и различных средствах противодействия читатель может найти по адресу:
http://www.cert.org/reports/dsit_workshop-final.html
Существует много средств для детектирования
Архив средств для детектирования
http://packetstorm.securify.com/distributed/
CERT/CC публикует справочные материалы и другие документы по данной проблематике, например:
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.