Содержание статьи
- Поиск секретов и уязвимостей dangling DNS в больших данных
- Прощай, CSRF! Поиск и эксплуатация уязвимостей client-side path traversal
- Технологии AutoFix: исправление 2/3 багов с первой попытки
- Инструмент для поиска проблем в GitHub Actions CI/CD
- Ежегодные антифишинг-тренинги неэффективны
- Алгоритмы автономного поиска уязвимостей
- Необычные домены ловят необычные DNS-запросы
- База симуляций атак и правил для их обнаружения
- Правила для выявления атак небезопасной распаковки архивов
- Глюк-пакеты: как названия пакетов, придуманные ИИ, становятся угрозой
- Веб-ханипот, чтобы изучить атакующего
- LLM может автономно проводить целевой фишинг
- Один символ, который ломает код
- Атака на Dependabot: внедрение вредоносного кода через GitHub-бота
- Больше перспективных исследований!
Поиск секретов и уязвимостей dangling DNS в больших данных
Когда мы используем традиционные методы поиска уязвимостей, то ограничиваемся исследованием конкретной цели: платформы, приложения, веб‑ресурса, сегмента сети. Но есть подход, который отличается от классического: не останавливаться на конкретной цели, а выбрать определенную уязвимость и заняться ее поиском в больших данных.
С переходом инфраструктуры в облака второй метод может дать интересные результаты. Например, если на большом пуле IP-адресов крупных облачных провайдеров вроде Google и AWS поискать «висячие» DNS-записи (dangling DNS), которые указывают на несуществующий ресурс и доступны для захвата, то можно обнаружить много возможностей для атак subdomain takeover.

Более 78 тысяч «висячих» DNS-записей, которые указывают на 66 тысяч уникальных доменов верхнего уровня. Среди владельцев этих доменов есть крупные компании и бренды, а значит, злоумышленник может разместить на этих доменах свой ресурс, который будет эксплуатировать доверие пользователей.

Аналогичный подход можно применить и к поиску секретов в файлах. Если взять источник вроде VirusTotal и с помощью YARA-правил поискать в нем файлы с ключами и паролями, можно обнаружить более 15 тысяч секретов. Среди них 2500 ключей для подключения к инфраструктуре OpenAI, 3000 — для AWS и Google Cloud.
Основные принципы этого подхода:
- начинать исследование с уязвимости и ее особенностей, а не с цели;
- использовать все доступные источники данных, включая нетривиальные;
- данные, по которым ведется поиск, должны иметь связь с заданным классом уязвимостей;
- процесс поиска по большим данным должен быть масштабируемым.
Применяй этот подход, чтобы освежить свои исследования.
Прощай, CSRF! Поиск и эксплуатация уязвимостей client-side path traversal
Из нетривиальных уязвимостей, о которых давно известно, но которые пока еще мало кто целенаправленно ищет, можно выделить категорию client-side path traversal (CSPT).
Исследователи хорошо знают проблемы, связанные с обходом каталога. Уязвимость path traversal позволяет использовать строки вида ../../../../.. для доступа к данным за пределами целевого каталога. В отличие от уязвимости на стороне сервера, CSPT дает атакующему возможность заставить жертву делать запросы к интересным конечным точкам API. И эта возможность — первое условие для реализации атаки.
Второе условие: наличие интересного эндпоинта, к которому можно обратиться и осуществить какое‑либо действие. Напоминает сценарий CSRF? Да. При этом у CSPT есть особенность: существующие механизмы защиты от CSRF-атак (например, токены) оказываются неэффективными для решения этого класса проблем.
После детального изучения этой уязвимости рекомендую изучить тестовый стенд для экспериментов и инструменты для автоматизации поиска.
Технологии AutoFix: исправление 2/3 багов с первой попытки
Вендоры крупных платформ разработки и стартапы с разной степенью успеха создают технологию AutoFix. В ее основе — LLM, которые анализируют уязвимость и ее контекст, а затем предлагают вариант исправления. Насколько хорошо у них это получается, можно судить по текущим результатам:
- наиболее зрелые модели LLM способны исправить примерно 2/3 всех обнаруженных уязвимостей с первой попытки, но подсказки со стороны пользователя позволяют улучшить этот результат;
- у коммерческих и открытых моделей схожие показатели производительности при разной стоимости эксплуатации.

То есть использовать AutoFix можно, но внедрять исправленный код в прод без дополнительной верификации нужно аккуратнее. Например, исправление проблемы, связанной со слабым шифрованием или использованием небезопасных протоколов, может привести к сбоям в работе приложения.
Есть и другие ограничения:
- Сложности с зависимостями и импортами: модели часто не могут правильно обработать сложные зависимости и импорты в кодовой базе. Например, когда LLM предлагает переписать код для использования методов безопасной сериализации, но не предлагает импортировать библиотеку для этой задачи.
- LLM могут предлагать новые зависимости для проекта, которые проносят свои уязвимости.
- Недостаточный контекст: модели часто предлагают исправления, которые не соответствуют шаблонам проектирования или общей архитектуре проекта.
С учетом этих ограничений разработчики технологий AutoFix запрашивают подсказки у пользователей, а также стараются расширить контекст. Пользователь может указать предпочтительные библиотеки (например, для логирования, алгоритмов шифрования и генерации случайных чисел). Повысить точность ответов помогает и механизм повторных попыток. LLM генерирует несколько исправлений для одной и той же уязвимости и таким образом увеличивает шансы на получение правильного варианта.
Инструмент для поиска проблем в GitHub Actions CI/CD
Мы уже изучили сценарии атак, в которых можно закрепиться в GitHub Actions, выполнить произвольный код и извлечь секреты. Ознакомились с рекомендациями от OWASP по защите процессов CI/CD. Поняли, что значительная часть этих рекомендаций отдается на откуп разработчику. Но все же нашли инструмент, который поможет ему выявить значительную часть уязвимостей.
Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»
