惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
S
Secure Thoughts
C
Cyber Attacks, Cyber Crime and Cyber Security
SecWiki News
SecWiki News
AWS News Blog
AWS News Blog
P
Proofpoint News Feed
H
Help Net Security
I
InfoQ
T
Tor Project blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Schneier on Security
Schneier on Security
The GitHub Blog
The GitHub Blog
S
Schneier on Security
The Hacker News
The Hacker News
博客园 - Franky
雷峰网
雷峰网
S
Security @ Cisco Blogs
Google Online Security Blog
Google Online Security Blog
Engineering at Meta
Engineering at Meta
G
GRAHAM CLULEY
Security Latest
Security Latest
The Cloudflare Blog
M
MIT News - Artificial intelligence
云风的 BLOG
云风的 BLOG
K
Kaspersky official blog
C
Cisco Blogs
Microsoft Security Blog
Microsoft Security Blog
宝玉的分享
宝玉的分享
Scott Helme
Scott Helme
腾讯CDC
阮一峰的网络日志
阮一峰的网络日志
A
Arctic Wolf
Latest news
Latest news
Last Week in AI
Last Week in AI
The Register - Security
The Register - Security
Google DeepMind News
Google DeepMind News
博客园 - 聂微东
T
Threatpost
G
Google Developers Blog
有赞技术团队
有赞技术团队
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LINUX DO - 热门话题
aimingoo的专栏
aimingoo的专栏
S
Securelist
WordPress大学
WordPress大学
N
Netflix TechBlog - Medium
Y
Y Combinator Blog
T
The Exploit Database - CXSecurity.com
月光博客
月光博客
Recent Announcements
Recent Announcements

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания Автономность как точка невозврата: кто будет субъектом в цифровом будущем Обучение ИИ в «диких» условиях: как рутинные действия превращаются в датасеты Как измерить LLM для задач кибербеза: обзор открытых бенчмарков Где хранить код? Сравнение GitHub, GitLab и Bitbucket Математика объясняет, почему нормальное распределение встречается повсюду Почему ваш FinOps не работает: 12 тезисов от практиков Как подписать проектную документацию УКЭП с использованием бесплатных лицензий Pilot Адаптивное администрирование Sigla Vision Я грузил уран в бочки, а потом 20 лет строил ИТ в атомной отрасли Чем позвонить с Эвереста? История и обзор спутниковой связи. Часть 2 Как языковая модель помогает контролировать качество инструктажей по охране труда в металлургии Как не передать на desktop свой IP в РКН Анатомия SAP Privileges: как устроено управление правами в macOS MoneyDev: Сказка про три главных слова Обновлённый токенизатор видео K-VAE 2.0 от Сбера Как сделать диспетчеризацию дома на 1284 квартиры почти бесплатно Как мы разогнали железную дорогу Мы дали агентам рутину. Теперь надо решить — что делать с освободившимся временем Токсичный контент, промпт-хакинг и защита ИИ — всё о Guardrails для LLM Умный город начинается с точного взгляда: как «Фалькон Тех» меняет пространство к лучшему Навайбкодил приложение для анализа графов Почему Дюну так интересно читать? Упрощаем работу с рутиной или как стать Гендальфом Белым Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1 Какие профессии исчезнут из-за ИИ, а какие появятся? И что с этим делать Как мы построили IT-отдел, где хочется расти: архитектурные встречи, прозрачные метрики и книжные подарки Rufler: Делаем из Claude Code автономный рой через один YAML-конфиг Sing-box и белый список приложений Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise OpenAI строит MLM-пирамиду, а McKinsey и Accenture помогают ей в этом Дом, который не построил Фишер (Часть 2) «Сверхзвуковой математик» против «Вдумчивого логиста»: битва алгоритмов 3D-упаковки Мультимодальные модели – грубый и дорогой инструмент Разговоры ничего не стоят. Код тоже Проверки физических лиц: с кого начнет ФНС Топ-10 бесплатных нейросетей для создания видео в 2026 году Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия Разработка нового статического анализатора: PVS-Studio JavaScript Поиск уязвимостей ПО: базовый минимум или роскошный максимум Почему оценка персонала не работает как инструмент управления Как мы разработали ИИ-ассистента и сократили рутину продуктовой команды на 50% Как я ушел из найма, нажарил косточек и продал на маркетплейсах на 168 млн в год Когда 1С:ERP уже внедрена, а нормального производственного плана всё ещё нет Как я сделал Claude мультимодальным, подключив к нему Qwen Omni Как приглашение на вакансию мечты превращается в атаку Infrastructure as Code: философия и лучшие практики IaC Тестируем Yandex Code Assistant на задаче, в которой нужно хранить секреты nxs-universal-chart v3.0: новое поколение универсального Helm-чарта Callback Injection: Техника, которая отправила Microsoft Defender в глухой нокаут «Все идеи на стол»: митап как способ вывести проект из тупика Сегодня я узнал нечто новое о GPU благодаря багу в своей игре Как заставить LLM ̶ ̶г̶а̶л̶л̶ю̶ ̶ эволюционировать Карта событий как фундамент аналитики: практический кейс для E-commerce Что выбрать для AI: x86, ARM или RISC-V? Дайджест железа за март Роль соматических мутаций в развитии аутоиммунных заболеваний: путь к избирательной терапии Mythos от Anthropic — тревожный сигнал для всех, а не только для банков Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Green-VLA: как мы собрали VLA-модель для реального антропоморфного робота и не потеряли обобщение Финансовая гонка вооружений: почему умные люди добровольно в ней участвуют Эра ИИ-агентов наступила: выбираем лучшего цифрового сотрудника # Практический опыт внедрения WinCC Redundancy на производственном предприятии Сделал MVP за 3 дня, а потом неделю прикручивал оплату. Оно того стоило? Физика против Маска: почему Starship V3 может оказаться ещё одной катастрофой Нефть Венесуэлы: крупнейшие запасы в мире, но не крупнейшая нефтяная держава JPA 4. Переосмысление Hibernate Почему зеркальная фотокамера Nikon D5 десятилетней давности идеально подошла для миссии «Артемида-2» Проект «Уровень-Спутник» или как мы сделали платформу для гидрологов «Замедлиться, чтобы ускориться»: почему ИИ повышает цену ошибок в требованиях и архитектуре Как с нуля поднять трафик IT-компании на 1657% при бюджете 55 тыс. и выжить Pixel-perfect Downsampling — идеальная отрисовка 50 миллионов точек без потерь
Процесс охоты за угрозами
ph_piter (Из · 2026-04-24 · via Все публикации подряд на Хабре

Процесс охоты за угрозами

Время на прочтение8 мин

Охват и читатели9

Привет, Хаброжители! Мы открыли предзаказ на книгу «Охота за киберугрозами» Надема аль-Фардана. Предлагаем ознакомиться с отрывком «Процесс охоты за угрозами».

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

Подготовка

Для подготовки к охоте были предприняты следующие шаги (рис. 3.8).

  1. Информация, предоставленная красной командой, послужила поводом для запуска охоты.

  2. Охотник решил подготовить новый сценарий охоты.

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

  4. В качестве основного источника данных для охоты использовалась Sysmon, события которой собирались на конечных точках.

  5. Sysmon-события были собраны и сохранены в хранилище данных Humio.

  6. Охотник за угрозами получил доступ к этому хранилищу и мог выполнять поиск Sysmon-событий через веб-интерфейс Humio. Скорость выполнения поисковых запросов была приемлемой.

Рис. 3.8. Этап подготовки к охоте за угрозами

Рис. 3.8. Этап подготовки к охоте за угрозами

В рамках этапа подготовки охотник документирует сценарий охоты.

  • Название. Охота на вредоносные процессы, запущенные из Microsoft Office.

  • Идентификатор. Hunt-Play-Win-01.

  • Вводная. Внешняя красная команда, нанятая организацией, смогла обойти средства предотвращения и обнаружения атак. Она подготовила документ Microsoft Word со встроенной вредоносной нагрузкой, вложила его в письмо и разослала пользователям. При открытии файла нагрузка выполнялась автоматически. Содержащийся внутри код обходил существующие средства защиты на компьютерах пользователей под управлением Windows 10 и оставался не замеченным антивирусом. Кроме того, другие средства мониторинга не сгенерировали оповещений для команды центра безопасности (SOC).

  • Гипотеза. Предполагается, что злоумышленник успешно провел атаку с целевой фишинговой рассылкой, заставив пользователей скачать и открыть файл Microsoft Word. При открытии документа выполнялся вредоносный код, что позволило компрометировать конечную систему.

  • Область. Охватывает все конечные точки Microsoft.

  • Прием 1. Создание тщательно подготовленного письма с целевой фишинговой атакой, побуждающего пользователей перейти по встроенной ссылке и скачать вредоносный документ Microsoft Word. Действие соответствует подтехнике MITRE ATT&CK T1566.002 «Фишинг: целевой фишинг со ссылкой».

    • Процедура. Пользователю отправляется письмо со ссылкой для загрузки документа Microsoft Office.

    • Источники данных и события. События Sysmon в Windows.

  • Прием 2. Запуск из Microsoft Office Word командной оболочки Windows (cmd). Действие соответствует подтехнике MITRE ATT&CK T1059.003 «Интерпретаторы командной строки и сценариев: командная оболочка Windows».

    • Процедура. Microsoft Office запускает командную оболочку.

    • Источники данных и события. События Sysmon в Windows.

  • Прием 3. Microsoft Office Word запускает PowerShell или создает PowerShell-скрипт, которые затем выполняются. Действие соответствует подтехнике MITRE ATT&CK T1059.001 «Интерпретаторы командной строки и сценариев: PowerShell».

    • Процедура. Microsoft Office запускает PowerShell или создает файл PowerShell-скрипта с расширением .ps1.

    • Источники данных и события. События программы Sysmon в Windows.

  • Ссылки.

Проведение охоты

Рассмотрим шаги, которые мы предприняли в ходе охоты (рис. 3.9).

  1. Мы начали с поисковых запросов, соответствующих процедурам, определенным на этапе планирования. Некоторые из них не дали результатов.

  2. На основе собранных фактов нам удалось подтвердить гипотезу.

  3. На одном из этапов расследования угроз мы зарегистрировали новый инцидент безопасности и передали его команде реагирования.

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

Рис. 3.9. Этап проведения охоты за угрозами

Рис. 3.9. Этап проведения охоты за угрозами

Коммуникация

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

Рис. 3.10. Этап коммуникации после охоты за угрозами

Рис. 3.10. Этап коммуникации после охоты за угрозами

Завершая нашу первую охоту, стоит задать несколько вопросов.

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

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

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

Ответы на эти вопросы помогут эффективнее планировать и проводить будущие расследования. Их мы еще обсудим в следующих главах.

События Sysmon в Microsoft Windows

Системный монитор (Sysmon) из набора Sysinternals — один из самых информативных источников данных Windows для команд мониторинга защищенности и охотников за угрозами. Этот бесплатный инструмент работает как системная служба и драйвер устройства в Windows, не входит в стандартную установку ОС. После загрузки Sysmon остается активным даже после перезапуска системы, отслеживая и протоколируя системные действия в журнал событий Windows. Важно отметить: Sysmon не анализирует события, а лишь предоставляет детализированные данные для последующей обработки.

Возможности программы Sysmon

Инструмент Sysmon поддерживает важные функции мониторинга системы.

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

  • Извлекает хеш файлов образа процесса, поддерживая алгоритмы SHA1 (по умолчанию), MD5, SHA256 и IMPHASH.

  • Помогает сопоставлять события, даже если Windows повторно использует идентификаторы процессов, добавляя GUID процесса к событиям ProcessCreate.

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

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

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

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

В табл. 3.1 приведены типы Sysmon-событий и их идентификаторы.

Таблица 3.1. Типы событий Sysmon в Windows

Тип Sysmon-события

ID Sysmon-события

Изменение состояния службы Sysmon

0

Создание процесса (ProcessCreate)

1

Время создания файла (FileCreateTime)

2

Сетевое подключение (NetworkConnect)

3

Изменение состояния службы Sysmon (Service State Change)

4

Завершение процесса (ProcessTerminate)

5

Загрузка драйвера (DriverLoad)

6

Загрузка образа (ImageLoad)

7

Создание потока в другом процессе (CreateRemoteThread)

8

Прямой доступ на чтение (RawAccessRead)

9

Доступ к процессу (ProcessAccess)

10

Создание файла (FileCreate)

11

Добавление или удаление объекта реестра (RegistryEvent — Object create and delete)

12

Установка значения реестра (RegistryEvent Value Set)

13

Переименование объекта реестра (RegistryEvent — Key and Value Rename)

14

Создание файлового потока (FileCreateStreamHash)

15

Изменение конфигурации Sysmon (ServiceConfigurationChange)

16

Создание именованного канала (PipeEvent — Pipe Created)

17

Подключение к именованному каналу (PipeEvent Pipe Connected)

18

Фильтр события WMI (WMI Event Filter)

19

Получатель события WMI (WMI Event Consumer)

20

Связь WMI Consumer с Filter (WMI Event ConsumerToFilter)

21

DNS-запрос (DNS Query)

22

Удаление файла (File Delete)

23

Захват буфера обмена (Clipboard Capture)

24

Подмена процесса (Process Tampering)

25

Обнаружено удаление файла (File Delete Detected)

26

Обнаружение и блокировка создания исполняемых файлов (File Block Executable)

27

Обнаружение и блокировка затирания данных (File Block Shredding)

28

Обнаружение создания нового исполняемого файла (File Executable Detected)

29

Ошибка (Error)

255

Таблица 3.1 охватывает широкий спектр событий, которые регистрирует Sysmon, и именно поэтому она считается одним из лучших источников данных для охоты за угрозами. Но у работы этого ПО есть и своя цена. Далее будет приведен пример Sysmon-события типа 1 — создание процесса. Sysmon-события протоколируются в XML-формате и занимают довольно много дискового пространства, поэтому при сборе через SIEM-системы возрастает нагрузка на ресурсы памяти и увеличиваются лицензионные отчисления, которые часто рассчитываются исходя из объема собираемых данных. Одно событие занимает около 2 Кбайт. В зависимости от активности системы и выбранной конфигурации сервер с установленной Sysmon способен генерировать очень большие объемы данных с такими сведениями.

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

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

СОВЕТ Хороший шаблон для создания собственного файла конфигурации Sysmon можно найти в репозитории пользователя SwiftOnSecurity (https://mng.bz/4pBj). Он постоянно поддерживает образец в актуальном состоянии и снабдил его подробными комментариями, которые объясняют каждый тип Sysmon-события и логику включения/исключения конкретных записей. Еще один полезный ресурс — репозиторий https://github.com/olafhartong/sysmon-modular, хранящий множество фильтров для настройки сбора событий Sysmon.

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

ПРИМЕЧАНИЕ В этой книге в процессе охоты за угрозами мы используем файлы конфигурации Sysmon, основанные на шаблоне пользователя SwiftOnSecurity, упомянутом в совете выше.

Поиск событий Sysmon

При поиске событий Sysmon поисковые запросы лучше создавать, ориентируясь на релевантные поля. Например, события типа 11 (FileCreate) содержат поля Image и TargetFilename, тогда как в типах 1 (ProcessCreate) или 3 (NetworkConnect) их нет.

В процессе охоты обычно комбинируют функции поиска: по полям и полнотекстового. В расследовании угроз, которое мы рассматривали в этой главе, мы выполняли поиск по полям — например, по CommandLine в Sysmon-событиях типа 1. Мы также применяли полнотекстовый поиск, при котором анализируется содержимое исходного события и ищутся совпадения со строкой. Так, мы проверяли все события Sysmon на наличие упоминаний файла www.ps1. Охотникам за угрозами, работающим в средах с Sysmon, важно хорошо разбираться в типах событий, а также том, какие поля в них доступны.

Упражнения

Во время охоты за угрозами удалось обнаружить инцидент в системе безопасности, заключающийся в установлении исходящих соединений для загрузки файлов с расширением .dll (www1.dll, www2.dll, www3.dll, www4.dll и www5.dll).

  1. Найдите Sysmon-события, относящиеся к сетевым соединениям.

  2. Определите процесс, который инициировал исходящие сетевые соединения, найденные в пункте 1.

  3. Определите целевые IP-адреса и порты этих соединений.

  4. Обновите временну́ю шкалу с учетом полученных данных.

Скачайте файл с событиями из репозитория главы 3 на GitHub (https://mng.bz/QVxv) и загрузите их в используемое вами хранилище данных. Sysmon-события сохранены в формате JSON, поэтому их легко анализировать с помощью таких инструментов, как Splunk, Elasticsearch или Humio.

СОВЕТ Ищите Sysmon-события с EventID 3.


Оформить предзаказ на книгу «Охота за киберугрозами» со скидкой 35% можно на нашем сайте по промокоду - Предзаказ