Иногда полезно разгребать закладки в браузере и избранные посты, которые откладывались до появления энтузиазма. Проведем обзор опубликованных блогпостов, докладов и исследовательских материалов, которые вряд ли станут «исследованиями года», но несут в себе новые техники. Кто знает, какая из них может вдруг выстрелить и полностью поменять ландшафт угроз?
Материал подготовлен для авторской колонки в журнале “Хакер”.
Техники фаззинга и динамического анализа ПО
Здесь я собрал исследования в направлении динамического анализа ПО и, в частности, фаззинга, которому мы в прошлом посвятили отдельный выпуск.
Фаззим ClamAV семплами малвари
Fuzzing ClamAV with real malware samples
Интересный подход к поиску багов в антивирусном движке с использованием реальных семплов зловредов в качестве корпуса для фаззинга. Фаззить антивирус вредоносами — это как проверять работоспособность системы противовоздушной обороны реальными ракетами.
Автор выбрал опенсорсный движок ClamAV, который также используется в коммерческих решениях. В качестве первоначального набора тест‑кейсов (корпуса) используется база семплов vx-underground.
В материале автор проходит полный цикл фаззинга: от подготовки цели до анализа результатов. Тем, кто хочет перейти от теории к практике, достаточно повторить описанные этапы.
Как заработать фаззингом 200 тысяч долларов за выходные
Earn $200K by fuzzing for a weekend: Part 1
За круглой суммой в заголовке прячется еще одно подтверждение того, что memory-safe не означает отсутствие уязвимостей. На примере виртуальной машины, написанной на Rust, автор продемонстрировал эффективность поиска багов Rust-приложений, применив известные техники фаззинга к известному таргету.
В материале уделено внимание подготовке тестовых оракулов (test oracles) — механизмов определения ожидаемого и аномального поведений таргета в процессе тестирования.
SFUZZ — высокопроизводительный фаззер на основе кастомного JIT-движка
SFUZZ: High Performance Coverage-guided Greybox Fuzzer with Custom JIT Engine
SFUZZ — это новый фаззер для тестирования методом серого ящика, основанный на эмуляции. Он использует кастомный JIT-компилятор для повышения производительности. Автор утверждает, что его инструмент работает быстрее, чем AFL++, и подтверждает это сравнительными тестами.
Главный недостаток SFUZZ, который не позволит ему заменить AFL++, в том, что он фаззит бинарники только для RISC-V. Сейчас для этой архитектуры не так много интересных таргетов, хотя это может и измениться.
Использование символьного выполнения для выявления вредоносного кода
Using a Practical Symbolic Engine to Detect Evasive Forms of Malware/Ransomware (PDF)
На конференции Black Hat 2022 показали интересную технику выявления вредоносного ПО и, в частности, экземпляров рансомвари. Авторы предлагают обойти ограничения методов динамического анализа ПО, которые плохо справляются с обфусцированными или модифицированными вредоносами, и применить движок символьного выполнения.
Символьное выполнение — это метод анализа бинарного кода, когда входные данные для целевой программы заменяют символами. В итоге анализатор будет использовать символьное выражение (формулу) вместо конкретных значений.
С помощью этого метода в программах ищут ошибки, но авторы исследования решили применить его для определения экземпляров вымогателей. Выбрав три ключевых признака семплов рансомвари (перечисление файлов, операция над файлами, шифрование), исследователи воспользовались техникой символьного выполнения для детекта. Результаты: детект 95,60% рансомвари, 0% ложных срабатываний.
Новые техники вредоносного ПО
Symbiote в подробностях: анализ новой угрозы для Linux, которую почти невозможно обнаружить
Symbiote Deep-Dive: Analysis of a New, Nearly-Impossible-to-Detect Linux Threat
Здесь разбирается новый образец вредоносного ПО, который применяет eBPF и LD_PRELOAD
для сокрытия. Для защиты от инспектирования трафика бэкдор использует интересную технику внедрения дополнительного кода в загружаемые в ядро BPF-программы, что позволяет скрыть сетевую активность от анализаторов, запускаемых на той же системе позднее.
Когда администратор запускает какой‑то анализатор пакетов на зараженной машине, в ядро внедряется байт‑код BPF, определяющий, какие пакеты анализатор должен захватить. Это позволяет бэкдору манипулировать анализом трафика и скрывать сетевую активность.
Agenda — новая рансомварь на Go, меняющая тактики
New Golang Ransomware Agenda Customizes Attacks
Обнаружен новый экземпляр рансомвари, написанный на Golang. Примечательно, что Go и Rust становятся популярными у разработчиков малвари. Кросс‑платформенные языки программирования позволяют злодеям охватить больше архитектур и операционных систем и скомпрометировать больше разнообразных корпоративных сред.
Кроме того, подобную малварь трудно анализировать, потому что компилятор Go статически подключает необходимые библиотеки в бинарном файле. Итоговый бинарь получается настолько большим, что многие анализаторы и реверс‑инженеры просто поперхнутся.
Омерзительная восьмерка: техники, тактики и процедуры (TTPs) группировок шифровальщиков
Опубликован отчет с результатами анализа APT-группировок, которые используют трояны‑вымогатели в своих операциях. Материал интересен для всех, кто выстраивает систему защиты от ransomware в инфраструктуре.
Ряд особенностей, отмеченных в отчете, можно использовать для детекта рансомвари:
- Методы попадания в инфраструктуру у всех общие: человеческий фактор (фишинг), открытые сервисы (например, RDP) и множественные уязвимости (причем известные).
- В процессе запуска все вредоносы используют командные и скриптовые интерпретаторы.
- Для закрепления образцы всех семейств используют техники манипуляции учетными записями.
- Для обхода средств защиты чаще всего используются стандартные средства ОС.
- Обнаружение ресурсов: все без исключения семейства используют техники обнаружения новых ресурсов (сетевых шар, хостов, файлов, процессов и так далее).
- Коммуникация с серверами управления: все образцы используют уровень приложений для коммуникации с C2, а некоторые пытаются красть данные по этому же каналу.
- Нарушение целостности данных: удаление бэкапов, выключение системных функций восстановления данных, остановка бизнес‑приложений.
Аналитикам SOC на заметку: последние три особенности позволяют построить стратегию целенаправленного детекта рансомвари в зараженной инфраструктуре.
Кстати, вымогателей, нацеленных на инфраструктуру с Docker и Kubernetes, пока еще не так много. Возможно, это объясняется особенностями подхода «неизменяемой инфраструктуры» (immutable infrastructure): после попадания в контейнерную среду у малвари оказывается не так много интересных мест для шифрования или горизонтального перемещения. Клиентские рабочие станции и окружение, построенное на Windows, куда вкуснее.
Вероятно, в следующем квартале этого года стоит готовиться к появлению новых исследований, связанных с новыми техниками атак на облачную инфраструктуру.