Логотип
Искусство чтения логов: как из гигабайтов мусора собрать историю взлома

Искусство чтения логов: как из гигабайтов мусора собрать историю взлома

7 октября, 2025

59

Слушай, новичок (или притворяешься, что новичок?), если ты думаешь, что логи — это просто бесконечные строчки текста для галочки перед аудитором, то у меня для тебя плохие новости. Логи — это не мусор, это чёртова Библия киберпреступления, написанная языком TCP/IP, HTTP-запросов и потных ладоней атакующего. Каждая строка — это крошка хлеба, оставленная хакером по дороге к твоим серверам, и твоя задача — собрать их все, чтобы воссоздать историю взлома с точностью криминалиста.

Почему логи — твой лучший друг

Представь: компания взломана, директор орёт, заказчик требует отчёт за вчера, а у тебя на руках только 500 гигабайт сырых логов из файрвола, веб-сервера, Active Directory и чёрт знает откуда ещё. Паника? Нет. Это твой шанс блеснуть. Логи содержат всё: временные метки (timestamp — священный Грааль форензики), IP-адреса, коды ошибок, запросы к файлам, авторизации, отказы в доступе. Всё, что атакующий делал в системе, записано где-то там, в этой каше из символов. Главное — знать, где искать.

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

С чего начать: сортировка мусора

Первое правило клуба анализа логов: не пытайся читать всё подряд. Серьёзно. Ты сойдёшь с ума раньше, чем найдёшь что-то полезное. Логи нужно сортировать, фильтровать и нормализовать — это как промывать золото из песка.

Централизация и нормализация

Собери все логи в одно место — SIEM (Security Information and Event Management) системы для этого и придуманы. Splunk, ELK Stack, CrowdStrike Falcon LogScale — выбирай, что душе угодно. Главное — чтобы данные из разных источников (файрволы, прокси, серверы, endpoints) попадали в единый формат. IP-адреса должны быть IP-адресами, а не «юзер с компа 192.168.какая-то-фигня» — понял?

Нормализация убирает каши из разных форматов логов (Cisco пишет одно, Windows другое) и превращает всё в структурированные данные, где можно искать по полям: source_ip, destination_port, user_agent, timestamp.

Фильтруй шум — метод искусственного игнорирования

Тут включается техника с идиотским названием «artificial ignorance» (искусственное игнорирование) — ты активно игноришь всё, что заведомо безопасно . Твой бухгалтер каждое утро в 9:00 заходит в 1С? Отлично, это фоновый шум. Скрипт делает бэкап каждый час? Тоже в список игнора. Остаётся только то, что не вписывается в паттерн — аномалии, необычные авторизации, запросы к редким путям, неожиданные передачи данных.

Как читать логи: ищем следы атаки

Теперь самое интересное — охота на хакера. Представь, что ты Шерлок Холмс, только вместо трубки у тебя RegEx-запросы, а вместо Ватсона — кофе и бессонница.

Временные метки — твоя путеводная звезда

Первое, что делаешь — выстраиваешь timeline (хронологию событий). Все действия в системе имеют timestamp, и твоя задача — найти первую точку компрометации (initial access). Это может быть успешная попытка входа после серии неудачных (brute force), странный логин в 3 часа ночи, подозрительный файл, загруженный через веб-форму.

Пример: смотришь лог веб-сервера Apache/Nginx — там десятки тысяч GET/POST-запросов. Но один из них — это не просто запрос к странице, а попытка SQL-инъекции: GET /index.php?id=1' OR '1'='1. Бинго. Дальше проверяешь, успешна ли была попытка (код ответа 200), и двигаешься вперёд по timeline.

Корреляция — сшивай разрозненные куски

Атака редко происходит через один источник. Хакер может зайти через VPN, прыгнуть на внутренний сервер, оттуда — на контроллер домена, а данные утащить через другой endpoint. Твоя задача — коррелировать события из разных логов.

Пример корреляции: в логах VPN видишь вход пользователя admin@company.com в 02:45. В логах контроллера домена (Windows Event ID 4624) — авторизация этого же юзера на DC в 02:47. В логах файлового сервера — массовая копирование файлов в 02:50. В логах файрвола — исходящее соединение на подозрительный IP в 03:15. Вуаля, у тебя полная картина атаки.

Паттерны и аномалии

Учись распознавать паттерны атак. Brute force — это сотни неудачных авторизаций за минуту. Lateral movement — это авторизации одного пользователя на разных машинах за короткий промежуток. Exfiltration — это необычно большой объём исходящего трафика.

А ещё лучше — используй machine learning для поиска аномалий. Современные SIEM умеют сами находить отклонения от нормального поведения — юзер вдруг скачал в 100 раз больше данных, чем обычно? Алгоритм зафиксирует.

Инструменты для тех, кто не любит читать вручную

Давай начистоту: вручную читать логи — это мазохизм. Используй инструменты, которые автоматизируют рутину.

Splunk — король SIEM-систем, дорогой, но мощный. Умеет всё: парсинг, корреляцию, визуализацию, алерты. Если у компании есть бюджет — бери его.

ELK Stack (Elasticsearch, Logstash, Kibana) — бесплатная альтернатива, требует настройки, но результат того стоит. Logstash собирает логи, Elasticsearch индексирует, Kibana рисует красивые дашборды.

CrowdStrike Falcon LogScale — новое поколение, без индексирования (это важно!), работает с петабайтами данных в реальном времени, поиск за доли секунды.

Grep, awk, sed — старая школа Unix. Если логи на Linux-сервере и нет SIEM, то эти утилиты — твоя первая линия обороны. Но серьёзно, в 2025 году пора уже использовать что-то современнее.

Реальный кейс: разбор взлома по логам

Представь: компания обнаружила утечку данных клиентов. Директор в панике, полиция на подходе. Тебе дали доступ к логам за последний месяц. Что делаешь?

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

Шаг 2: Строишь timeline. Коррелируешь авторизацию VPN с действиями внутри сети. Видишь, что через 10 минут после входа юзер запросил доступ к базе данных клиентов, хотя раньше никогда этого не делал.

Шаг 3: Ищешь exfiltration. Проверяешь сетевой трафик — аномально большой объём данных ушёл на внешний IP в облаке (AWS, Azure). Копаешь глубже — это S3-bucket, зарегистрированный на левый аккаунт.

Шаг 4: Собираешь доказательства. Экспортируешь все релевантные логи, сохраняешь с хешами (MD5/SHA256), готовишь отчёт для юристов и правоохранителей.

Этика и легалити: не будь идиотом

Последнее, но важное. Логи — это юридически значимые доказательства. Если ты неправильно их собрал, изменил, или потерял цепочку custody (chain of custody), то в суде их могут не принять . Всегда документируй, кто, когда и как получил доступ к логам. Храни оригиналы. Используй write-once носители для архивации.

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

Заключение

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

Теперь иди и практикуйся. Только не на чужих серверах, ладно? 🔍💻

Оставьте заявку