Контакты
Подписка 2021
МЕНЮ
Контакты
Подписка

Уязвимость в Git LFS позволяет скомпрометировать Windows-системы

06/11/20

git lfs

Исследователь безопасности Давид Голунски (Dawid Golunski) обнаружил критическую уязвимость (CVE-2020-27955) в Git Large File Storage (Git LFS) — расширении Git с открытым исходным кодом для управления версиями больших файлов. Ее эксплуатация позволяет злоумышленнику удаленно выполнить код, если он обманом заставит пользователя системы под управлением Windows копировать вредоносный репозиторий с помощью уязвимого инструмента Git.

Проблему можно использовать в различных популярных клиентах Git с конфигурациями по умолчанию — GitHub CLI, GitHub Desktop, SmartGit, SourceTree, GitKraken, Visual Studio Code и пр.

«Web-приложения/размещенные репозитории, работающие на системе Windows, которые позволяют импортировать свои репозитории с URL-адреса, также могут быть подвержены данной уязвимости», — отметил эксперт.

Git LFS не указывает полный путь к двоичному git-файлу при выполнении нового процесса git через конкретную функцию exec.Command().

«Поскольку реализация exec.Command() на системах Windows включает текущий каталог, злоумышленники могут создать бэкдор во вредоносном репозитории, просто добавив исполняемый файл с именем git.bat, git.exe, git.cmd или любым другим расширением, которое используется на системе жертвы. В результате вредоносный двоичный файл git, установленный таким образом, будет выполняться вместо исходного двоичного git-файла, расположенного по доверенному пути», — пояснил Голунски.

Голунски выпустил PoC-код для эксплуатации данной уязвимости, а также видео-демонстрацию эксплоита в действии на различных клиентах Git.

Уязвимость затрагивает версии Git LFS 2.12 или старше. По словам специалистов Git LFS, для этой проблемы нет другого решения, кроме как избегать ненадежных репозиториев.

Темы:WindowsУгрозыGitHub

Хотите участвовать?

Выберите вариант!

КАЛЕНДАРЬ МЕРОПРИЯТИЙ 2021
ПОСЕТИТЬ МЕРОПРИЯТИЯ
ВЫСТУПИТЬ НА КОНФЕРЕНЦИЯХ
СТАТЬ АВТОРОМ

Еще темы...