Практическая подготовка в пентест-лабораториях. Часть 4

9822524f808b467cac636f48bf9d9628.png

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

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

Форензика


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

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

Реагирование


Правильно составленный план помогает в стрессовой ситуации (конечно, бывают разные ситуации, и действия оператора должны быть адекватны) не задумываться и выполнять стандартный набор ответных мер. Атаковать злоумышленника в ответ Вы не можете — противозаконно. Собирать информацию об атакующем — можно. Но если вы собираете информацию с целью последующего предоставления этих данных в суде — то необходимо соблюдать «chain-of-custody» (цепь доказательств) — невызывающая сомнений логическая цепочка рассуждений и выводов относительно какого-то факта.

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

На этом этапе необходимо попытаться зафиксировать все действия злоумышленника, не давая ему понять что он обнаружен. Например, злоумышленник может доставить в атакуемую систему вредоносный файл и мониторить сервисы типа virustotal.com, malwr.com и т.д. на предмет появления этого семпла там — значит скорее всего его атака или действия были обнаружены и введены меры противодействия.

Пример


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

Существуют и гораздо более изощренные атаки, которые могут быть зафиксированы уже постфактум, например в виде нелегитимного исходящего соединения с одной из машин внутри инфраструктуры во внешнюю среду. В данном случае злоумышленниками с помощью специализированных средств может быть организована т.н. полезная нагрузка, позволяющая организовать удаленное подключение к хосту злоумышленника для выполнения каких-либо действий. Это делается для затруднения определения атаки, обхода Firewall или NAT. Злоумышленник создает meterpreter-сессию, которая находится в оперативной памяти и никак не проявляет себя на жестком диске атакуемой системы. Meterpreter – это нагрузка, задуманная в контексте Metasploit Framework как гибкая, расширяемая, полнофункциональная и унифицированная основа для пост-эксплуатации, как альтернатива классическим шеллкодам. Для обхода антивирусной системы защиты используются средства типа Veil-Evasion для затруднения определения вредоносного кода. После проведения атаки на какой-либо процесс используется технология dll-injection. Сначала исполняется шеллкод на подгрузку meterpreter в виде dll’ки, потом размещение этого процесса в адресном пространстве и запуск на исполнение в виде нового потока. Далее может быть выполнено еще несколько этапов многоступенчатой нагрузки, например атака Kerberos Golden Ticket для компрометации контроллера домена.

Извлечение данных


Таким образом, все цифровые доказательства атаки находятся в оперативной памяти (кроме дампа трафика соединения с хостом злоумышленника) атакованной системы и достаточно сложны для извлечения. Чтобы правильно сделать полный образ оперативной памяти используются различные платы расширения или, например, порт FireWire. Так же в теории можно физически изъять память с сохранением данных путем быстрой заморозки. Существует вариант «горячей» перезагрузки в live дистрибутив, например, Ubuntu CyberPack. Но при этом часть памяти будет перезаписана собственно данными live ОС (чуть больше 100 Мб). Если же речь идет о виртуальных машинах (а сейчас виртуализация достаточно популярна), то почти все из них позволяют снять образ с живой работающей системы (правда иногда для этого виртуальная машина должна быть изначально запущена с опцией отладки).

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

Для анализа можно использовать Volatility Framework, который содержит много плагинов (нацеленных в основном на Windows системы). С помощью плагина dlllist можно получить список загруженных DLL, а плагином dlldump можно выгрузить из памяти содержимое конкретной DLL для анализа. Полный список плагинов доступен по ссылке.

Цифровые доказательства


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

  1. Допустимость. Это по сути доказательство того, что эти факты вы получили законным путем (например, не атакуя злоумышленников для получения доказательств).
  2. Достоверность. Факты, которые вы озвучиваете должны иметь прямое отношение к делу.
  3. Полнота.
  4. Надежность.


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

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

© Habrahabr.ru