Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Сегодня мы с тобой пройдемся по последним трендам в ИБ, посмотрим, какие новые идеи занимают умы специалистов по безопасности (в том числе моей команды) и какие публикации на эту тему можно почитать. Об авторе
Денис Макрушин — выпускник факультета информационной безопасности НИЯУ МИФИ и там же продолжает делиться опытом со студентами своей альма‑матер. Также Денис выступает научным руководителем для студентов разных ведущих кафедр и факультетов страны в области информационной безопасности и защиты информации.
Начну с исследования, которое провела наша команда Advanced Research Team. Мы обнаружили интересную особенность в WinDbg, штатном средстве отладки Windows. Эта особенность дает возможность запускать произвольный вредоносный код на хосте разработчика и подменять библиотеки.
Не самый известный факт, но формат отладочных символов PDB позволяет разработчикам снабжать исполняемые файлы не только кодовыми символами и структурами, но и информацией о местонахождении соответствующего исходного кода. Механизм носит название SrcSrv, и из‑за некорректной обработки его настроек атакующий может переопределить путь к расширениям WinDbg и проводить атаку DLL Hijacking для подключения произвольных DLL, в том числе DLL, расположенных на удаленном SMB-сервере.
Поверхность атаки:
В Microsoft подтвердили наличие уязвимости и подготовили исправление в версии WinDbg 10.0.22621.0 и выше, а также в Windows SDK 11.
Отчет доступен на английском языке. Также мы разработали утилиту, которая проверяет файлы дампов и ищет в них ссылки на файлы PDB.
Repository hijacking (или Repo Jacking) — атака на репозиторий, которая позволяет получить полный контроль над исходными кодами. В результате атакующий может выполнить произвольный код в том контексте, где подключается атакованный репозиторий.
Если разработчик в своем коде напрямую подключает сторонний код из чужого репозитория и если автор этого репозитория удалил, перенес или продал свой аккаунт, то любой может повторно зарегистрировать этот аккаунт и поместить в нем вредоносный код. Тогда все приложения, которые подключают код из этого репозитория, окажутся вредоносными.
Описание атаки Repo Jacking
Легкая победа для того, кто стремится к массовому заражению зависимостей. Именно поэтому исследователи нашей команды ART сделали следующее:
corrupted_links
. corrupted_links
проверили на возможность провести атаку account takeover (захват аккаунта). В результате получили статистику по репозиториям GitHub, которые злоумышленник уже сейчас может захватить и использовать для распространения вредоносного кода в цепочке поставок. И опубликовали результаты исследования, вместе с методикой и инструментами.
Я люблю и иногда практикую фаззинг для поиска дефектов в ПО. Если сегодня взять какой‑нибудь непопулярный таргет, подготовить стенд и запустить тесты, то к концу праздничной недели можно найти пачку интересных уязвимостей.
В дополнение к уже известным техникам добавилось свежее исследование, которое нужно будет обязательно воспроизвести: «BinGo: Identifying Security Patches in Binary Code with Graph Representation Learning».
Это крайне занимательный метод поиска security-патчей в бинарном коде приложений. Актуален он для тех случаев, когда владелец приложения скрыто исправляет какие‑нибудь уязвимости в своем коде без регистрации CVE или без упоминания в ченжлоге. Метод BinGo позволяет выявлять n-day-уязвимости.
Техника основана на представлении бинарного файла в виде Code Property Graph — промежуточном представлении кода, изначально разработанном для анализа его безопасности. CPG включает в себя абстрактное синтаксическое дерево, граф потока управления и зависимости данных.
Особенность этого метода заключается в новой модели обнаружения связанных с безопасностью исправлений, которая сравнивает бинарные файлы до и после изменений. И использует для этого сиамскую нейросеть, которая позволяет выявить сходство или различие между бинарями.
Уровень обнаружения security-патчей среди прочих модификаций бинарного кода — 80,77%. Отлично! Осталось подобрать интересные таргеты.
Идея: а что, если использовать этот метод для выявления умышленно оставленных закладок в бинарниках? Если мы выдвигаем гипотезу о том, что это возможно, то для ее проверки нам понадобится:
Возможно, ты читал мою статью «Как провести свое первое security-исследование». Мне кажется, проверка выдвинутой выше гипотезы будет отличной темой для такого исследования!
Те, кто использовал опенсорсный инструмент Empire для пентеста и редтиминга, знают о его богатых возможностях, которые пригождаются при постэксплуатации.
Источник: xakep.ru