Профиль: Аноним (вход | регистрация) неRU opennet.me  
OpenNET

[ новости /+++ | форум | теги |    ]

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

12.11.2026 11:43 (MSK)

Опубликованы корректирующие выпуски распределённой системы управления исходным кодом 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.


  1. Главная ссылка к новости (https://github.blog/open-sourc...)
  2. OpenNews: Выпуск системы управления исходными текстами Git 2.56
  3. OpenNews: Уязвимости в Git, позволяющие перезаписать файлы или выполнить свой код
  4. OpenNews: Пять уязвимостей в Git, среди которых одна критическая и две опасные
  5. OpenNews: Обновление Git с устранением уязвимостей
  6. OpenNews: Уязвимости в Git, допускающие выполнение кода при обращении к внешнему репозиторию
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/66669-git
Ключевые слова: git



Обсуждение (3) RSS
  • 1, q (ok), 12:46, 12/11/2026 [ответить]  
  • +2 +/–
    Шел сишник по буферу. Видит - буфер уже закончился. Вышел за его пределы и CVE-шнулся.
     
     
  • 2, Аноним (2), 12:54, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Странно что статические анализаторы не используют. Они подобные ошибки и до ИИ отлавливали.
     

  • 3, Аноним (3), 13:03, 12/11/2026 [ответить]  
  • +/–
    так и запишем: репы больше 4 гигов - не качаем
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    XSQUARE
    Inferno Solutions
    Hosting by Hoster.ru
    Хоcтинг: