[ON] Уязвимость в Git, допускающая выполнение кода при клонировании из вредоносного Git-репозитория

Обсуждение новостей, соответствующих тематике форума

Модератор: Модераторы разделов

Аватара пользователя
rssbot
Бот
Сообщения: 6000
ОС: gnu/linux

[ON] Уязвимость в Git, допускающая выполнение кода при клонировании из вредоносного Git-репозитория

Сообщение rssbot »

Опубликованы корректирующие выпуски распределённой системы управления исходным кодом Git 2.56.1, 2.55.1, 2.54.1, 2.53.1, 2.52.1, 2.51.3 и 2.50.2, в которых устранено 6 уязвимостей. Наиболее опасная уязвимость (CVE-2026-111760) позволяет добиться выполнения кода при применении команды "git clone" в режиме "--recurse-submodules" с репозиториями, подконтрольными атакующему.


Проблема вызвана тем, что длина записи с именем в индексе вычисляется с использованием 64-разрядного целого типа size_t, а хранится в 32-разрядном поле ce_namelen. При передаче очень длинного имени вида ".gitA/AAA...." возникает усечение значения и атакующий может добиться сохранения длины равной 4 байтам. В итоге, при проверке значения используются фактические данные, а при выполнении операции записи - усечённая версия ".git", что позволяет атакующему заменить файл ".git" в субмодуле на символическую ссылку, указывающую на каталог с настройками и хуками.


Другие уязвимости:
  • CVE-2026-113408 - выход за пределы каталога refs/ через передачу в качестве ветки HEAD символической ссылки со значением "refs/heads/../../../TARGET" при клонировании пустого репозитория по протоколу Git v2. При последующем выполнении "git commit" будет создан файл TARGET в корне репозитория, что можно использовать для перезаписи файлов в репозитории.
  • CVE-2026-114467 - переполнение стека при удалении GPG-подписей, которое потенциально может привести к выполнению произвольного кода. Проблема вызвана тем, что функция remove_signature() хранит позиции подписей в фиксированном массиве, рассчитанном максимум на две подписи. При слиянии тега с тремя и более подписями данные сохраняются вне массива.
  • CVE-2026-114469 - при проверке ограничений на размер бинарных патчей учитывались данные до распаковки сжатых данных, что приводило к чтению содержимого из области вне границ буфера.
  • CVE-2026-105437 - повреждение памяти при выполнении больших операций слияния из-за накопления размера результата в поле с типом int. В конфигурации GitLab с сервисом Gitaly уязвимость может быть эксплуатирована для выполнения кода (проблема блокирована в GitLab 19.5.4).
  • CVE-2026-114466 - чтение и создание произвольных файлов в ФС через команду "git fast-import" из-за не попадание некоторых новых возможностей fast-import под ограничения, добавленные для устранения старой уязвимости CVE-2019-1348.
















Источник: https://www.opennet.ru/opennews/art.shtml?num=66669
(opennet.ru, мини-новости)
Спасибо сказали: