Уязвимость GitLab позволяла захватывать пользовательские домены

Уязвимость GitLab позволяла захватывать пользовательские домены

Уязвимость GitLab позволяла захватывать пользовательские домены

Исследователю в области безопасности удалось захватить сотни доменов GitLab всего за несколько секунд. Это стало возможным из-за того, как компания обрабатывала верифицирование домена. На данный момент эта проблема устранена.

GitLab позволяет разработчикам взаимодействовать с исходным кодом и разработкой проектов, также предоставляя возможность размещать собственный контент и проекты с пользовательским доменным именем.

Однако 5 февраля стало известно, что никакой проверки не выполняется в момент, когда пользователь добавляет домен к своим учетным записям GitLab. Домен может быть захвачен за тот короткий период, когда пользовательский домен будет указывать на недавно удаленный или невостребованный репозиторий GitLab.

Эдвин Фудиль (Edwin Foudil), известный под онлайн-псевдонимом EdOverflow, являющийся основателем фирмы, занимающейся вопросами безопасности Penultimate, использовал отчет об ошибке от 1-го ферваля, который содержал код proof-of-concept, в котором перечислены уязвимые пользовательские домены, указывающие на GitLab.

Поскольку GitLab позволяет указывать неограниченное количество доменов для одного репозитория, Фудиль написал короткий скрипт, который помог ему захватить неограниченное количество доменов.

«Это позволило мне захватить 700 доменов и поддоменов за одну минуту», — утверждает специалист.

Этого было достаточно для того, чтобы разработчики GitLab обратили внимание на эту проблему, устранив ее впоследствии.

Контроллер памяти AMD научили обходить аппаратную изоляцию

Исследователь Кристофер Домас опубликовал PoC-проект skitter-creek-bath-salts, демонстрирующий обход аппаратной защиты памяти на процессорах AMD Family 16h. Техника манипулирует настройками контроллера DRAM и позволяет обращаться к областям, которые должны быть недоступны даже операционной системе, ядру и коду с привилегиями ring 0.

Обычно программные и аппаратные механизмы контролируют доступ по физическим адресам.

Но последнюю точку в маршруте ставит контроллер памяти: он переводит адрес в конкретные координаты DRAM — канал, ранг, банк, строку и столбец.

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

 

Чтобы система не рухнула, PoC отключает прерывания, подготавливает кеш и таблицы трансляции, ненадолго меняет схему адресации, читает или записывает нужные данные, а затем возвращает исходные настройки.

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

Исследователь продемонстрировал потенциальный доступ к памяти AMD Platform Security Processor, включая данные fTPM, защищённой области System Management Mode, состояниям процессора C6 и хранилищу микрокода. Последний сценарий допускает не только извлечение копии патча, но и её возможное изменение перед восстановлением состояния ядра.

PoC проверяли только на AMD Family 16h. Данных об аналогичной уязвимости в новых AMD, Intel, ARM или RISC-V нет.

RSS: Новости на портале Anti-Malware.ru