The IR lifecycle
NIST делит реагирование на инциденты на четыре фазы, но именно ту, на которую никто не смотрит во время аварии — Подготовку, — тихо решает исход трёх остальных. Поэтому работа до того, как сработает пейджер, и есть работа, которая тебя спасает.
2:47 ночи. Срабатывает алерт: сервисная учётка читает строки, которых никогда не касалась, и делает это быстро. Дежурный инженер бодр, компетентен и полностью застрял. Кто объявляет инцидент? Где раннбук? У кого есть облачные права, чтобы вытащить логи IAM, и кому вообще разрешено выключить продакшен-ноду? Они теряют сорок минут, обзванивая людей, которые не отвечают, обнаруживают, что страница в вики устарела на год, и смотрят, как атакующий завершает эксфильтрацию, пока команда спорит, «настоящий» ли это инцидент. Ничто из случившегося в 2:47 не было техническим сбоем. Каждая из этих сорока минут потеряна в решении, которое должно было быть принято — и записано — месяцами раньше, спокойным днём, человеком, который сейчас спит.
К концу урока ты будешь знать четыре фазы реагирования на инциденты по NIST, как они питают друг друга, и почему именно та фаза, что идёт до любого инцидента, решает, хорошо или плохо пройдут три остальные.
Модель: четыре фазы, а не прямая линия
Когда люди представляют реагирование на инциденты, они представляют его середину — военную комнату, мостовой созвон, лихорадочный набор на клавиатуре. NIST SP 800-61 (отраслевой эталон, Computer Security Incident Handling Guide) описывает это полезнее — как жизненный цикл из четырёх фаз, которые зациклены, а не сценарий, который прогоняешь один раз сверху вниз:
- Подготовка (Preparation) — всё, что ты строишь до инцидента: команду реагирования и её полномочия, раннбуки, конвейеры логов, инструментарий, сохранённые бэкапы, списки контактов и тренировки, которые делают всё это реальным.
- Обнаружение и анализ (Detection & Analysis) — заметить, что что-то произошло, и понять что: разобрать алерт, подтвердить, что это настоящий инцидент, оценить, как далеко он распространился, и назначить серьёзность.
- Сдерживание, искоренение и восстановление (Containment, Eradication & Recovery) — остановить кровотечение, убрать доступ и артефакты атакующего, затем вернуть сервис в заведомо чистое состояние и убедиться, что оно держится.
- Послеинцидентная активность (Post-Incident Activity) — разбор «извлечённых уроков»: безвинный (blameless) разбор, превращающий пережитое в улучшения.
Важнейшая стрелка — та, что замыкает последнюю фазу обратно к первой. Послеинцидентная активность питает Подготовку. Вывод из одного инцидента — «у нас не было лога чтений сервисной учёткой» — становится задачей Подготовки, которая ускоряет следующую фазу Обнаружения. Программа реагирования, пропускающая этот цикл, переживает один и тот же инцидент каждый квартал; та, что его замыкает, со временем измеримо труднее поддаётся пробою.
Почему Подготовка решает исход
Вот зрелое наблюдение, которое скрывает диаграмма из четырёх квадратов: фазы не равны по рычагу. Во время реального инцидента часы тикают, а твои варианты зафиксированы — ты можешь отвечать только тем доступом, логами, инструментами и полномочиями, которые уже существуют. Нельзя во время пробоя решить начать удерживать логи, нужные, чтобы его оценить. Нельзя выдать себе облачное право изолировать ноду, пока атакующий ею пользуется. Нельзя написать, согласовать и отрепетировать раннбук в 2:47 ночи. Любая способность, к которой ты тянешься под давлением, либо построена в Подготовке, либо её просто нет.
Поэтому зрелые команды измеряют два числа: MTTD (среднее время обнаружения) и MTTR (среднее время реагирования/восстановления). Оба определяются Подготовкой. MTTD мало только если ты уже логировал нужные события с нужным контекстом и имел детекты, наблюдающие за ними, — это работа прошлого юнита, обналиченная здесь. MTTR мало только если раннбук существует, у реагирующего есть постоянные полномочия действовать, а путь восстановления (чистые бэкапы, infrastructure-as-code для пересборки) был протестирован до того дня, когда понадобился. Пробой из вступления потерял сорок минут не на сложной технической проблеме, а на отсутствующей Подготовке: нет ясного командира инцидента, устаревший раннбук, не выданы заранее права. Атака преуспела в зазорах, которые команда так и не закрыла спокойным днём.
▸Почему это работает
Почему NIST помещает практику внутрь Подготовки, а не считает её необязательным лоском? Потому что неотрепетированный план — это гипотеза, а инцидент — ужасное время проверять гипотезы. Команды проводят настольные учения (tabletop) (проговаривают сценарий за столом) и game days (вбрасывают реальный сбой и реагируют вживую) именно чтобы дёшево находить зазоры: список контактов неверен, раннбук опирается на выведенный из эксплуатации инструмент, ни у кого реально нет IAM-роли, которую требует плейбук. Каждый зазор, найденный на учениях, — это тот, который ты не нашёл в 2:47 ночи с атакующим на клавиатуре. План, который ни разу не прогоняли, стоит считать сломанным хотя бы в одном несущем месте.
Обнаружение, Сдерживание и компромиссы внутри них
Средние фазы несут свои зрелые суждения. Обнаружение и анализ — это где ты сопротивляешься двум противоположным провалам: объявлять инцидент на каждый шумный алерт (усталость от алертов, потраченное впустую реагирование) или списывать настоящий как шум. Дисциплина — это триаж: подтвердить, что это истинно-положительное, затем оценить охват (что затронуто, как далеко, с какого момента) до того, как действовать, потому что решения по сдерживанию хороши лишь настолько, насколько ты понимаешь радиус поражения. ATT&CK — это общий словарь, делающий оценку охвата конкретной: называя техники противника (доступ к учётным данным, латеральное движение, эксфильтрация), ты понимаешь, где ещё искать, прежде чем объявить инцидент ограниченным.
Сдерживание прячет самый острый компромисс во всём жизненном цикле: сдерживание против улик. Инстинкт — выдернуть шнур, выключить скомпрометированную машину в тот же миг, как нашёл. Но жёсткое выключение уничтожает энергозависимые улики (память, живые сетевые соединения, рабочее состояние вредоноса) и спугивает атакующего, у которого могут быть другие точки опоры, тобой ещё не найденные. Сетевая изоляция хоста вместо этого сохраняет форензику и может позволить понаблюдать за другими ходами атакующего. И всё же слишком долгое ожидание даёт эксфильтрации продолжаться. Универсально правильного ответа нет — есть лишь суждение, взвешивающее активный ущерб против ценности улик и риска более широкого, необнаруженного присутствия.
Ты находишь один скомпрометированный хост, активно эксфильтрирующий данные, а сигналы, размеченные по ATT&CK, говорят, что атакующий использовал валидные учётные данные и мог двигаться латерально. Выбери лучший первый шаг сдерживания.
У двух команд одинаковый инструментарий и инженеры. Команда A репетирует свой план реагирования ежеквартально настольными учениями и game days; команда B написала план два года назад и положила в архив. Почему команда A реагирует на реальный инцидент драматически быстрее?
Во время послеинцидентного разбора команда выясняет, что пробой оставался необнаруженным несколько дней, потому что чтения базы сервисной учёткой никогда не логировались. В жизненном цикле NIST куда относится фикс?
Расположи фазы реагирования по NIST SP 800-61 в порядке их выполнения, завершив фазой, которая замыкается обратно к первой:
- 1 Подготовка — построить команду, раннбуки, логи и инструменты до того, как что-то случится
- 2 Обнаружение и анализ — подтвердить, что это настоящий инцидент, и оценить радиус поражения
- 3 Сдерживание, искоренение и восстановление — остановить, убрать доступ, вернуть в чистое состояние
- 4 Послеинцидентная активность — безвинный разбор, который питает Подготовку
- 01Назови четыре фазы реагирования на инциденты по NIST SP 800-61, что делает каждая, и объясни петлю обратной связи между ними.
- 02Почему Подготовка — фаза с наибольшим рычагом, и как она проявляется в MTTD и MTTR? Включи компромисс «сдерживание против улик».
NIST SP 800-61 описывает реагирование на инциденты как жизненный цикл из четырёх зацикленных фаз, а не односторонний сценарий: Подготовка (команда, раннбуки, логи, инструменты, бэкапы и репетиции, построенные заранее), Обнаружение и анализ (подтвердить, что это реально, затем оценить радиус поражения до действий), Сдерживание/искоренение/восстановление (остановить кровотечение, убрать доступ, вернуть в чистое состояние) и Послеинцидентная активность (безвинный разбор). Рычаг с наибольшей отдачей — стрелка обратной связи от Послеинцидентной активности обратно в Подготовку: выводы каждого инцидента становятся задачами Подготовки, ускоряющими следующий ответ. Подготовка доминирует, потому что во время инцидента ты можешь использовать лишь тот доступ, логи, полномочия и инструменты, что уже существуют; и MTTD, и MTTR решены задолго до того, как сработал пейджер. Практика — часть Подготовки, а не опция, потому что неотрепетированный план — это гипотеза. А внутри сдерживания живёт самый острый компромисс: жёсткое выключение останавливает один хост, но уничтожает улики и спугивает атакующего с другими точками опоры, тогда как сетевая изоляция сохраняет форензику и обрезает egress разом. В следующий раз, читая зелёный план реагирования, задай зрелый вопрос: запускал ли его кто-нибудь хоть раз — и в день, когда он сработает, будет ли у реагирующего уже доступ и полномочия действовать?
Практика
Начни сверху. Задачи идут от простого к сложному: вспомнить факт, применить к случаю, затем senior-уровень. Открой, попробуй, потом открой ответ.
Что-то непонятно?
Задай вопрос по этому уроку. Вопросы анонимны и попадают напрямую автору — урок станет лучше.