Обнаружение вторжений в систему

Обнаружение вторжений в систему

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

Автор: Demyo Inc.

Введение

Прежде всего, обнаружение вторжения в систему – не то же самое, что Системы Обнаружения Вторжений/Системы Предотвращения Вторжений (IDS/IPS). Мы хотим обнаружить факт вторжения в систему после того, как атакующие прошли все защитные барьеры нашей компании, в том числе вышеупомянутые IDS/IPS, устройства полного перехвата пакетов, файрволы, средства физической безопасности и все прочие превентивные технологии. Множество превентивных технологий большей частью используют фильтрацию по черному списку [1] и потому терпят неудачу. Фильтрация по черному списку запрещает только то, что явно указано, как вредоносное, и разрешает все остальное. Поэтому для обхода защиты атакующему нужно найти просто еще один способ, не указанный в фильтре. Гораздо сложнее выполнить условия, определенные в белом списке.

Отслеживание файлов ключей в системе

Какие файлы на сервере являются файлами ключей? Для Linux-машины это, например, /etc/passwd, /etc/shadow.

Взглянем на пример файла /etc/shadow:

# cat /etc/shadow

root:$6$OFny79f/$LC5hcqZXNYKachPKheRh5WkeTpa/zO3y8OX3EUHrFkrFQAdLU
TKwGjLPSdZ9uhwJQ9GmChLvbhPRbPw7lDTg90:15231:0:99999:7:::
daemon:x:15204:0:99999:7:::
bin:x:15204:0:99999:7:::
sys:x:15204:0:99999:7:::
www-data:15204:0:99999:7:::
<snip>
pulse:*:15204:0:99999:7:::
rtkit:*:15204:0:99999:7:::
festival:*:15204:0:99999:7:::
postgres:!:15204:0:99999:7:::
apache:$6$LqrWIgqp$jdq1exB2GiBFgLL9kDlDkks30azWBJ1/mDU.to84mHn6nmzU
zV7iHiMXK7rVm8.plMmaNKg9Yyu7ryw00r5VX.:15452:0:99999:7:::

Что с ним не так? Если вы посмотрите на список пользователей в данном файле, то увидите, что пользователь apache имеет связанный с ним хэш. Обычно служба apache никогда не имеет связанного с ней хэша. Если в данном файле рядом с именем пользователя указан хэш, значит пользователь имеет пароль и может входить в систему по SSH. В данном случае явно потрудился хакер, создавший новый аккаунт, который пытался замаскироваться под стандартного для системы пользователя/стандартный процесс.

Один из способов отслеживания изменений файловой системы – реализация LoggedFS. LoggedFS журналирует все, что происходит внутри файловой системы. Она легко настраивается под ваши нужды через XML-файлы [2].

Пример файла конфигурации LoggedFS:

<?xml version="1.0" encoding="UTF -8"?>
<loggedFS logEnabled="true" printProcessName="true">
<includes>
<include extension=".*" uid="*" action=".*" retname=".*"/>
</includes>
<excludes>
<exclude extension=".*\.bak$" uid="*" action=".*" retname="SUCCESS"/>
<exclude extension=".*" uid="1000" action=".*" retname="FAILURE"/>
<exclude extension=".*" uid="*" action="getattr" retname=".*"/>
</excludes>
</loggedFS>

Эта конфигурация позволяет заносить в журнал все события, кроме тех, что связаны с bak-файлами, uid 1000 или операцией getattr.

Целостность файлов

Отслеживание целостности файлов (FIM, File integrity monitoring) – это внутренний элемент управления или процесс, который выполняет проверку целостности операционной системы и файлов приложений, используя сравнение текущего состояния файла с прежним, эталонным. Этот метод часто включает вычисление по известному алгоритму криптографической контрольной суммы от текущего состояния файла и сравнения ее с контрольной суммой эталонного состояния. Для отслеживания целостности могут использоваться и другие атрибуты.

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

Задачи безопасности

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

  • Учетные данные
  • Настройки привилегий и безопасности
  • Содержимое
  • Ключевые атрибуты и размер
  • Хэш-значения
  • Значения настроек [3]

Для отслеживания целостности существует множество коммерческих и бесплатных программных продуктов:

  • CimTrak
  • OSSEC
  • Samhain
  • Tripwire
  • Qualys
  • nCircle
  • Verisys
  • AIDE [4]

На рисунке 3.1 показана панель монитора целостности файлов nCircle

Рисунок 3.1

Что-то здесь совсем не так

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

Рисунок 3.2

Для тех, кто пока не понял, в чем дело, я дам подсказку. ls – команда, выводящая список файлов директории, ключ –h отвечает за вывод списка в удобном для чтения формате, т. е. отображение размера больших файлов в гигабайтах или мегабайтах, чтобы избежать записей вроде "1073741824 bytes". Ключ –l также повышает удобство чтения списка. Главным здесь является ключ –a, который включает в вывод имена папок, начинающихся с точки (.). Атакующие часто прячут свои файлы, называя их так же или почти так же, как легальные файлы системы. В данном случае хакер создал в системе папку с именем '. '. В обычном случае команда ls –a покажет одну директорию, имя которой состоит из единственной точки. Здесь же мы видим две таких папки, что должно вызвать в вашей голове сигнал тревоги. Можно зайти в скрытую директорию командой cd '. ', не забыв оставить после точки один пробел.

Вот почему всегда стоит использовать команду ls с ключом 'a' – так можно видеть скрытые папки и файлы. Очень часто эти скрытые папки находятся в хорошо известных местах вроде /root, /var/www, /home и т. д.

Дополнительные учетные записи системы

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

Рисунок 3.3

Метки времени

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

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

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

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

Метки времени обычно используются для журналирования событий или последовательностей событий (sequence of events, SOE), при котором каждое событие или SOE в журнале помечается меткой времени. В файловых системах метка времени может хранить время создания/модификации файла [5].

Пусть у вас есть множество папок и исполняемых файлов в папке C:/Windows/System32, все они имеют метки времени, близкие ко времени установки ОС, но один файл не обладает этим свойством. Говорит ли это о проблеме? Этот исполняемый файл может быть просто дополнительным ПО, установленным в систему позже, но также может быть вредоносным ПО, которое прячется в данной директории. Вредоносные файлы Windows обожают эту папку. На рисунке 3.4 видно, что месяц модификации одной папки отличается от месяца модификации остальных.

Рисунок 3.4

Скрытые файлы и папки

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

Папку можно рассматривать как контейнер для файлов и других папок. В Linux и UNIX-подобных ОС папка – это просто особый тип файла, который ассоциирует имена файлов с колекциями метаданных (т. е., данных о файлах). Аналогично, ссылка – специальный тип файла, который указывает на другой файл (который может быть и папкой). Таким образом, фраза "скрытые файлы и папки" в некотором роде избыточна, однако она удобна и наглядна, а потому часто используется. Более точными терминами являются скрытые объекты файловой системы и скрытые элементы.

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

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

В UNIX-подобных операционных системах объекты файловой системы имеют больше атрибутов, чем в операционных системах Microsoft Windows. Атрибуты включают систему разрешений, которые определяют, какие пользователи имеют доступ на чтение, запись и выполнение к каждому из объектов файловой системы. Однако, видимость объекта атрибутами не задается. Это лишь неявное свойство, которое легко меняется путем добавления точки в начало имени объекта или, наоборот, ее удаления.

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

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

Атаки нулевого дня

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

Атака (или угроза) нулевого дня – атака, которая эксплуатирует ранее неизвестную уязвимость в приложении, то есть, на момент атаки уязвимость известна в течении "нуля дней". Это означает, что у разработчиков было в распоряжении 0 дней, чтобы выпустить патч для закрытия уязвимости. Эксплоиты нулевого дня (реальное ПО, которое использует бреши в безопасности для выполнения атак) используются и распространяются атакующими до того, как разработчик целевого приложения узнает о соответствующей уязвимости.

Векторы атак

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

Окно уязвимости

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

Для вирусов, троянов и других атак нулевого дня окно уязвимости обычно проходит следующие этапы:

  • Разработчик создает ПО, содержащее неизвестную уязвимость
  • Атакующий находит эту уязвимость прежде разработчика
  • Атакующий пишет и распространяет эксплоит, но уязвимость остается незамеченной для разработчика
  • Разработчик узнает об уязвимости и начинает работать над исправлением.

Измерение продолжительности окна уязвимости может быть непростой задачей, поскольку атакующие не сообщают о том, когда уязвимость была найдена впервые. Разработчики могут не хотеть делиться данными об уязвимости из коммерческих соображений или в целях безопасности. Разработчики также могут не знать, что уязвимость эксплуатируется в момент работы над ее исправлением, из-за чего она не классифицируется, как уязвимость нулевого дня. Однако, можно легко показать, что это окно может длиться несколько лет. Например, в 2008 году Microsoft подтвердила наличие уязвимости в Internet Explorer, которая затрагивала несколько версий программы, выпущенных еще в 2001 году. Дата обнаружения данной уязвимости атакующими неизвестна, однако, окно уязвимости в этом случае могло длиться до 7 лет!

Обнаружение

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

Анализ: данный этап сфокусирована на анализе поверхности атаки
Тестирование: данный этап сосредоточена на фаззинге обнаруженных векторов атак
Создание отчетов: воспроизведение найденных проблем для разработчиков
Борьба: поиск защитных мер, рассмотренных ниже

Защита

Защита нулевого дня – возможность противостоять эксплоитам нулевого дня. Атаки нулевого дня также могут оставаться необнаруженными после их запуска.

Для снижения эффективности уязвимостей нулевого дня, связанных с повреждениями памяти, существует множество методов. Данные защитные механизмы существуют в современных операционных системах: Windows 7, Microsoft Windows Vista, Mac OS X, Oracle Solaris, Linux и, возможно, в других Unix-подобных ОС. В Microsoft Windows XP SP2 имеется ограниченная защита от общих уязвимостей к повреждению памяти. Также существует ПО для серверов и рабочих станций, позволяющее бороться с уязвимостями нулевого дня к переполнению буфера.

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

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

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

Также важно обновлять ПО до актуальных версий.

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

Пользуйтесь сайтами с SSL-протоколом, который обезопасит информацию, передаваемую между пользователем и посещаемым сайтом.

Этика

Существуют различные точки зрения на сбор и использование информации об уязвимостях нулевого дня. Многие производители средств компьютерной безопасности выполняют исследования уязвимостей нулевого дня, чтобы лучше понять природу уязвимостей и их эксплуатацию злоумышленниками, компьютерными червями и вирусами. Другие производители покупают информацию об уязвимостях для улучшения защитных способностей своего продукта. Хотя покупка и продажа информации об уязвимостях технически не является незаконной во многих странах, существует множество споров по поводу метода разглашения этой информации. Недавнее решение немецких властей о принятии статьи 6 Конвенции о Киберпреступлениях и Рамочного Решения ЕС по атакам на информационные системы может сделать незаконными продажу или даже обработку уязвимостей.

Большая часть формальных попыток сводятся к директивам по разглашению или более поздним директивам OIS "Guidelines for Security Vulnerability Reporting and Response". В целом данные правила запрещают публичное разглашение информации об уязвимостях без уведомления разработчика за адекватное для создания патча количество времени [7].

Эталонное состояние

Когда атакующие компрометируют систему, что они делают в первую очередь? Они устанавливают как можно больше различных бэкдоров. Так что, если обнаруженный в системе бэкдор был удален, система не обязательно стала чистой. Гораздо безопаснее откатить систему к эталонному состоянию. Обычно это делается путем переустановки системы. Большие компании обычно имеют "золотые" образы своих систем. Они используют эти образы для быстрой очистки зараженной машины и быстрой переустановки ОС со всеми обновлениями и программным обеспечением. Для Linux-систем есть программа System Imager, которая может выполнять сразу несколько установок Linux. System Imager может облегчить процесс установки Linux на множество похожих машин. Она упрощает распространение и настройку программ и обновлений операционных систем, а также может быть использована для распространения контента [8].

Отслеживание запущенных в системе процессов

Что не так со списком запущенных процессов Linux-системы на рисунке 3.5?

Рисунок 3.5

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

Файлы со странными именами

Вредоносное ПО часто создает файлы со странными названиями. Пример таких названий для систем Windows показан на рисунке 3.6:

Рисунок 3.6

Мы видим, что запущен файл kj4hkj4hl4kkl4hj.exe. Это должно стать первым признаком того, что в системе происходит что-то подозрительное. Однако, не стоит путать с вредоносными файлами обновления Windows, которые создают временные папки со случайными именами.

Руткиты

Руткит – тип скрытой вредоносной программы, разработанной для сокрытия присутствия в системе определенных программ и процессов от обычных методов обнаружения и получения постоянного привилегированного доступа к системе. Термин руткит составлен из слов "root" (традиционное имя привилегированной учетной записи в системах семейства UNIX) и "kit" (обозначающее набор программных компонентов, входящих в состав утилит). Термин руткит обладает негативной коннотацией из-за его связи с вредоносным ПО.

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

Обнаружение руткитов – трудная задача, поскольку руткит может нарушать работу программ, предназначенных для его обнаружения. Методы обнаружения включают использование альтернативных и доверенных операционных систем, анализ поведения, сигнатурное сканирование, разностное сканирование и анализ дампов памяти. Удаление руткита может быть сложным или практически невозможным, особенно, когда руткит располагается в ядре. Единственным решением проблемы в таком случае может быть переустановка ОС. Для удаления руткитов прошивок (или ромкитов) может понадобиться специальное оборудование или даже замена железа [9].

Руткиты уровня ядра

Руткиты уровня ядра запускаются с самыми высокими привилегиями операционной системы (в нулевом кольце), путем добавления кода или замены участков кода ядра операционной системы и связанных с ним драйверов устройств. Большинство операционных систем поддерживают запуск драйверов устройств в режиме ядра, то есть, с привилегиями самой операционной системы. Поэтому многие руткиты уровня ядра построены как драйверы устройств или загружаемые модули, например, загружаемые модули ядра в Linux или драйвера устройств в Windows. Этот класс руткитов имеет неограниченный доступ, но сложнее всего в написании. Сложность порождает ошибки, а любые ошибки в коде, работающем на уровне ядра, серьезно влияют на стабильность системы, что приводит к обнаружению руткита. Один из первых широко известных руткитов был разработан для Windows NT 4.0 и опубликован в журнале Phrack в 1999 году [10].

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

Руткит может модифицировать структуры в ядре Windows, используя метод, известный как прямая манипуляция объектами ядра (DKOM). Этот метод может перехватывать функции ядра в таблице дескрипторов системных служб (SSDT) или модифицировать шлюзы между режимами пользователя и ядра, чтобы скрыть себя. Аналогично в Linux руткит может модифицировать таблицу системных вызовов, чтобы нарушить функционирование ядра. Руткиты нередко создают скрытую шифрованную файловую систему, в которой они могут прятать другое вредоносное ПО или исходные копии зараженных файлов.

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

Руткиты, работающие в режиме пользователя

Такие руткиты запускаются в кольце 3 вместе с другими приложениями в качестве пользовательских, а не системных процессов. Они имеют множество возможных векторов перехвата и модификации стандартного поведения прикладных программных интерфейсов (API). Некоторые руткиты внедряют динамическую библиотеку (вроде .dll файла Windows или .dylib файла Mac OS X) в другие процессы и, тем самым, могут запускаться внутри любого другого процесса. Другие, обладая достаточными привилегиями, просто перезаписывают память целевого приложения. Вот некоторые механизмы внедрения:

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

Обнаружение руткитов

Для поиска руткитов существует множество программ, запускающихся на работающей системе. Пример такой программы, "rootkit hunter", показан на рисунке 3.7 [11].

Рисунок 3.7

Низко висящий фрукт

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

  • Сдерживание вторжений по принципу снежинок (любые две снежинки отличаются – анализ для получения доступа к особенной системе требует больше времени. Сделайте бесполезным автоматизированное сканирование системы). Например, можно поменять порт сервиса SSH со стандартного TCP/22 на TCP/31234. Некоторые решительные хакеры отыщут новый порт довольно быстро, однако для новичков это станет дополнительным препятствием.
  • Низко висящий фрукт атакуют большую часть времени. Простое игнорирование ICMP эхо-запросов (пингов) остановит некоторых хакеров, поскольку существует множество систем, отвечающих на эхо-запросы. У этих систем проще определить активные IP-адреса, и их проще сканировать на наличие уязвимостей [12].

Антивирусы

Больше всего в системе вредоносное ПО боится антивирусов. Антивирус способен обнаружить атаку, однако может быть уже поздно. Антивирусная защита основана на сигнатурах файлов. Хакеры обходят сигнатурное сканирование путем уникального шифрования своих файлов. Каждый исполняемый файл шифруется уникальным образом – и движок антивируса, опаздывая, всегда проигрывает. Если ваш антивирус срабатывает, значит вредоносное ПО смогло проскользнуть мимо ваших IDS/IPS в сеть и/или в систему.

Обнаружение вторжений через robots.txt

Чтобы победить хакера, вы должны думать как хакер. Давайте посмотрим, что представляет собой файл веб-сервера robots.txt. Файл располагается в корне сайта, например, по адресу www.mywebpage.com/robots.txt и предоставляет поисковым системам информацию о том, что должно быть кэшировано, что пропущено, как часто поисковой системе следует обновлять информацию и т. д. Предположим, что в папке с именем "reports" содержатся конфиденциальные файлы. Эта папка может быть добавлена в исключения, и поисковые системы не будут показывать ее в результатах поиска. Другие файлы и папки вроде /private /, /adminpanel/, /phpmyadmin/ также следует исключить из результатов поиска. Этот метод до сих пор выглядит замечательно, но имеющий немного опыта хакер заглянет в файл robots.txt и увидит, что вы хотели от него спрятать!

Пример некорректного файла robots.txtПример корректного файла robots.txt
Disallow: /adminpanel/
Disallow: /phpmyadmin/
Disallow: /backup/
Disallow: /uploads/
Переместите все защищаемые папки в одну папку с названием private и запретите работу с ней:
Disallow: /private/

Немного перестроенный файл robots.txt может выглядеть так:

User-Agent: *
Disallow: /private/
Allow: /
User-Agent: hacker
Disallow: /please/go/to/an/easier/target/

Это позволит хакеру догадаться, что он выбрал не самую простую мишень, и он, возможно, пойдет искать цель попроще. Разумеется, это не предотвратит целенаправленной атаки [13]. Так что, если кто-то пытается обратиться к несуществующей на сервере папке "/please/go/to/an/easier/target/", вы можете понять, кто интересуется вашим сайтом.

Устройства полного перехвата пакетов

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

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

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

Развертывание

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

При соединении через SPAN-порт перехватчик пакетов может получать и записывать все Ethernet/IP пакеты со всех портов коммутатора или маршрутизатора.

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

Существует два общих подхода к развертыванию перехватчиков пакетов: централизованный и децентрализованный

Централизованный

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

Децентрализованный

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

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

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

Емкость

Перехватчики пакетов обладают емкостью от 500 ГБ до 32 ТБ и более. Лишь немногие организации с крайне высокими нагрузками на сеть могут захотеть использовать устройства с большей емкостью. Для большинства организаций будет достаточно емкости в диапазоне от 1 до 4 ТБ.

При выборе емкости можно руководствоваться следующим правилом: 1ГБ в день для "тяжелых" пользователей и 1ГБ в день для обычных. Для типичного офиса из 20 человек со средней нагруженностью сети 1ТБ должно хватить на срок от 1 года до 4 лет.

Возможности

Фильтрованный захват пакетов против полного

Устройства полного перехвата пакетов захватывают и записывают весь Ethernet/IP трафик, в то время как устройства фильтрованного перехвата пакетов захватывают лишь определенный сорт трафика, который определяется пользовательскими фильтрами IP-адресов, MAC-адресов, протоколов и т. п. Если перехватчик пакетов используется не для узкой специфической цели, покрываемой параметрами фильтров, лучше использовать полный захват пакетов, иначе есть риск потерять необходимые данные. При использовании перехвата пакета для программно-технической экспертизы сети или в целях компьютерной безопасности захват всех без исключения пакетов является крайне важным, поскольку любой не перехваченный пакет пропадает бесследно. Невозможно заранее знать специфические характеристики пакетов или сеансов передачи данных, особенно в случае постоянных угроз повышенной сложности (Advanced Persistent Threat, APT). Успех APT и других методов взлома основан на сетевых администраторах, не знающих, как эти методы работают, и не имеющих решений, способных им противостоять. Большинство APT-атак запускаются из России или Китая.

Зашифрованное хранилище против незашифрованного

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

Средняя скорость захвата против пиковой скорости

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

Постоянное хранилище против перезаписываемого

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

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

Поскольку перехватчики пакетов захватывают и сохраняют большое количество данных о сетевой активности, включая файлы, электронные письма и прочую информацию, они сами по себе могут стать привлекательной для хакеров целью. Перехватчики пакетов, независимо от времени, на которое они разворачиваются, должны содержать средства безопасности, чтобы защитить записанные данные от несанкционированного доступа. Если развертывание перехватчика пакетов порождает слишком большое количество проблем безопасности, стоимость защиты может перевесить его преимущества. Лучше всего, когда перехватчик пакетов имеет встроенные средства безопасности. Эти средства безопасности могут включать шифрование или методы скрытия присутствия перехватчика в сети. Например, некоторые перехватчики пакетов имеют опцию "электронная невидимость", то есть, скрытый сетевой профиль, не требующий использования ни IP, ни MAC-адреса.

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

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

Наконец, нужно принять во внимание физическую безопасность. Эффективность любой опции сетевой безопасности является спорной, если кто-нибудь может просто украсть перехватчик пакетов или сделать его копию, получив тем самым доступ к его содержимому. Шифрование – один из лучших способов решения данной проблемы, хотя некоторые перехватчики пакетов также хранятся в надежных помещениях. [14]

Нестандартные векторы атаки

Что является самым слабым звеном любой корпорации? Правильный ответ – люди. Люди подвержены социальной инженерии, люди приносят "забытые" в санузлах и на автостоянках флешки и диски и подключают их к компьютеру просто из любопытства. Люди приносят свои личные устройства из дома и подключают их к корпоративной сети. Принцип BYOD (Принеси Свое Собственное Устройство) является большой проблемой для системных администраторов. Он также вносит дополнительный риск, поскольку личные устройства сотрудников могут быть заражены. На рисунке 3.8 показана атака с потерянными CD-дисками, основанная на социальной инженерии.

Рисунок 3.8

Demyo power strip – это устройство под управлением полноценной ОС на базе Linux с множеством предустановленных инструментов для пентестов. Оно выглядит как обычный разветвитель питания, но имеет на борту Wi-Fi, Ethernet и Bluetooth. Как только устройство подключается к розетке, оно немедленно звонит домой через GSM 3G-модем и устанавливает соединеие. Установив подключение, пентестеры могут использовать устройство как отправную точку для последующего тестирования на проникновение в локальной сети корпорации [15]. Demyo power strip показан на рисунке 3.9.

Рисунок 3.9

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

Тренинги по безопасности

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

Темы, покрываемые тренингами по безопасности, включают:

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

Согласно европейскому агенству сетевой и информационной безопасности, 'Знание рисков и доступных механизмов защиты – первая линия обороны информационных систем и сетей.'

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

Корреляция данных

Корреляция данных – техника, используемая в информационной безопасности для того, чтобы сложить все кусочки мозаики вместе и прийти к значимому выводу. Например, вы видите, что в вашу Linux-систему весь день пытались войти по SSH, и после 200 неудачных попыток последовал один успешный вход. О чем это говорит? Это хороший признак того, что на вашу систему была совершена брутфорс-атака, которая в итоге удачно завершилась. Все технологии лишь помогают обнаружить вторжения, однако находят их отнюдь не технологии, а люди. Устройства и сенсоры обычно хороши для фиксации плохих событий, однако несколько хороших событий могут соединиться в одно плохое. Вы спросите: "Как такое возможно?" Давайте рассмотрим сценарий в котором человек определяет, что произошла компрометация системы.

Скажем, есть компания со множеством сотрудников, которые много путешествуют по миру. Компания хорошо потрудилась, развернув различные системы управления и журналирования. Данная компания также выдает своим сотрудникам RFID-карты, чтобы отслеживать, кто входит в офис и кто его покидает. Все данные собираются и отправляются SIEM (системе управления информацией и событиями), чтобы скоррелировать события и журналы. Одним прекрасным утром в SIEM приходят два вроде бы безобидных события. Первое – из-за границы установлено VPN-соединение пользователя john с офисом компании. Второе – RFID-бэйдж пользователя john был просканирован на входе в офис компании. Оба события сами по себе довольно стандартны и безвредны, но их сочетание выглядит по меньшей мере странно. Как пользователь john мог установить VPN-соединение из-за границы и одновременно физически войти в офис? Возможны два варианта ответов: либо учетные данные VPN скомпрометированы, либо карта сотрудника используется кем-то еще для входа в офис. Рисунок 3.10 показывает, как сочетание двух хороших событий может указывать на плохое событие.

Рисунок 3.10

SIEM

Решения SIEM (Управление информацией безопасности и событиями) – это сочетание двух ранее несопоставимых категорий продуктов: SIM (управление информацией безопасности) и SEM (управление событиями безопасности). Технология SIEM позволяет проводить в реальном времени анализ сигналов тревоги, генерируемых сетевым оборудованием и приложениями. Решения SIEM представляют собой программы, устройства или управляемые сервисы и также используются для журналирования данных безопасности и генерации отчетов о соответствии нормам.

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

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

Возможности SIEM

  • Агрегация данных: решения SIEM/LM (управление журналами) собирают данные из многих источников, включая сеть, механизмы безопасности, сервера, базы данных, приложения, позволяя объединить отслеживаемые данные и помочь избежать пропуска критичных событий
  • Корреляция: ищет общие признаки и соединяет события в содержательные группы. Данная технология позволяет применять множество методов корреляции, чтобы объединить источники и превратить сырые данные в полезную информацию.
  • Оповещения: автоматизированный анализ коррелированных событий и генерация оповещений, сообщающих получателям о текущих проблемах
  • Инструментальная панель: инструменты SIEM/LM собирают данные о событиях и превращают их в информационные диаграммы, помогающие выделить шаблоны или определить активность, не укладывающуюся в стандартный шаблон
  • Анализ соответствия: приложения SIEM могут быть использованы для автоматического сбора данных о соответствии нормам, генерируя отчеты, которые применяются к существующим процессам безопасности, аудита и управления.
  • Сохранение: решения SIEM/SIM используют долгосрочное хранилище данных для облегчения корреляции данных по прошествии длительного времени и предоставления хранения данных, требуемого для анализа соответствия.

Другие подозрительные вещи, происходящие в системе

Какие прочие симптомы указывают на возможную компрометацию системы? Ниже приведены несколько примеров:

  • Файлы журнала полностью отсутствуют.

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

  • Сетевой интерфейс находится в неразборчивом режиме

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

    В сетях IEEE 802 вроде Ethernet, token ring и беспроводных сетях IEEE 802.11, а также FDDI-сетях каждый кадр включает адрес назначения (Media Access Control или MAC-адрес). В разборчивом режиме, когда сетевая карта получает кадр, она обычно отбрасывает его, если он предназначен не для MAC-адреса данной карты и не является широковещательным или мультикастовым кадром. В неразборчивом режиме карта позволяет прохождение любых кадров, таким образом позволяя компьютеру считывать кадры, предназначенные для других машин и сетевых устройств.

    Многие операционные системы для включения неразборчивого режима требуют привилегий суперпользователя. Немаршрутизирующий узел в неразборчивом режиме обычно может лишь отслеживать лишь трафик от других узлов внутри одного и того же широковещательного домена (для Ethernet и IEEE 802.11) или кольца (для token ring и FDDI). Компьютеры, присоединенные к одному сетевому хабу удовлетворяют данному требованию, и именно по этой причине для борьбы с неразборчивым режимом используются коммутаторы. Маршрутизаторы могут отслеживать весь трафик, который они маршрутизируют.

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

    Обнаружение

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

    Примером подобного метода обнаружения может быть отправка эхо-запросов ICMP (попросту - пинг) на некорректный MAC-адрес но правильный IP-адрес. Если сетевой адаптер работает в нормальном режиме, он отбросит данный кадр и IP-стек никогда не увидит его и, тем более, на него не ответит. Если же адаптер находится в неразборчивом режиме, он передаст содержимое кадра на дальнейшую обработку, и протокол IP-стека (для которого MAC-адрес не имеет значения) ответит на него, как и на любой другой пинг. Снифер может предотвратить эту ситуацию путем настройки своего файрвола на блокирование ICMP-трафика [18].

  • Неизменяемые файлы в системе, которые не могут быть удалены. Их можно найти командой lsattr.

    Lsattr – это утилита командной строки для вывода списка атрибутов файловой системы ext2, использующейся в Linux. Также эта команда может отображать атрибуты устройств в операционной системе AIX. Некоторые вредоносные программы устанавливают на свои исполняемые файлы флаг +i, поэтому вы не можете удалить их, даже будучи суперпользователем.

  • Таинственные открытые порты и службы

    Все открытые порты и запущенные службы стоит принимать во внимание. Например, если сервис запущен, но непонятно, что он делает и почему запущен – стоит начать расследование [19].

Заключение

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

Вот надлежащая последовательность анализа:

  1. Выгрузка дампа оперативной памяти и его анализ. Сегодня хакеры становятся все умнее. Они остаются в памяти так долго, как это возможно. Почему? Потому что они знают, что программно-техническая экспертиза выполняется на жестком диске, а если хакер расположится в оперативной памяти, то для анализа эксперту понадобится больше навыков. Некоторые компании просто отключают питание и сеть и проводят программно-техническую экспертизу жесткого диска. Это неправильно, поскольку как только вы отключите питание, половина хакерского добра пропадет.
  2. Выборочный анализ файлов жесткого диска (сначала мы создаем образ жесткого диска и работаем с этой копией). В зависимости от роли машины в сети, полная программно-техническая экспертиза может оказаться излишней. В некоторых случаях достаточно лишь частичного исследования файлов.
  3. Полный анализ жесткого диска, если это необходимо (опять же, мы сначала делаем образ и работаем с копией).

Ссылки

1.Whitelisting vs blacklisting - http://bit.ly/RNxEHO
2.LoggedFS - http://loggedfs.sourceforge.net/
3.File Integrity Monitoring - https://en.wikipedia.org/wiki/File_integrity_monitoring
4.AIDE - http://aide.sourceforge.net/
5.Timestamps - https://en.wikipedia.org/wiki/Timestamp
6.Hidden files - http://www.linfo.org/hidden_file.html
7.0day attacks - https://en.wikipedia.org/wiki/Zero -day_attack
8.SystemImager - http://sourceforge.net/projects/systemimager/
9.Rootkit - https://en.wikipedia.org/wiki/Rootkit
10.Phrack - http://phrack.org/
11.Rootkit hunter - http://rkhunter.sourceforge.net/
12.What is vulnerability - http://bit.ly/PFCWCh
13.Targeted attack - http://bit.ly/MTjLVv
14.Full Packet Capture - https://en.wikipedia.org/wiki/Packet_Capture_Appliance
15.Demyo power strip – http://www.demyo.com
16.Security Awareness - https://en.wikipedia.org/wiki/Security_awareness
17.SIEM - https://en.wikipedia.org/wiki/Siem
18.Promiscuous mode - https://en.wikipedia.org/wiki/Promiscuous_mode
19.Intrusion Detection - http://bit.ly/OCB7UU

Не ждите, пока хакеры вас взломают - подпишитесь на наш канал и станьте неприступной крепостью!

Подписаться