Профиль: Аноним (вход | регистрация) не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



Обсуждение (40) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, q (ok), 12:46, 12/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +23 +/–
    Шел сишник по буферу. Видит - буфер уже закончился. Вышел за его пределы и CVE-шнулся.
     
     
  • 2.2, Аноним (2), 12:54, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +6 +/–
    Странно что статические анализаторы не используют. Они подобные ошибки и до ИИ отлавливали.
     
     
  • 3.5, Аноним (5), 13:17, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    Используют, не отлавливают. Чтобы отлавливало, нужен ещё какой-нибудь фаззер.
     
  • 3.18, Аноним (18), 14:19, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Странно что статические анализаторы не используют. Они подобные ошибки и до ИИ
    > отлавливали.

    А зачем? Ииии тааааак сойдет!

    Но вообще пользуются.
    И стат анализаторами, и фаззингом, и асанами/убсанами.
    Только толку, это жалкие попытки исправить разными костылями то, что defective by design.

     
  • 2.6, Аноним (5), 13:18, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Нет так.

    Шел сишник по буферу. Видит - буфер уже закончился. И пошёл дальше.

     
  • 2.12, Аноним (12), 13:36, 12/11/2026 Скрыто ботом-модератором     [к модератору]
  • –2 +/–
     
  • 2.37, Аноним (37), 17:00, 12/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     

  • 1.3, Аноним (3), 13:03, 12/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    так и запишем: репы больше 4 гигов - не качаем
     
  • 1.4, Аноним (4), 13:17, 12/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/–
    аффтар, тебе норм? Git 2.56.1 опубликован уж сколько недель как, тогда как 2.55.1, 2.54.1, 2.53.1, 2.52.1, 2.51.3 и 2.50.2 вышли неделю назад
     
     
  • 2.10, Энтомолог_русолог (ok), 13:34, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    А CVE только опубликовали. Это нормальная практика, что CVE публикуют ПОСЛЕ обновлений
     
  • 2.11, Аноним (11), 13:35, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Я усматриваю в этом злой умысел https://gitweb.gentoo.org/repo/gentoo.git/log/dev-vcs/git
     
     
  • 3.14, Аноним (11), 13:39, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    ps https://repology.org/project/git/versions
     
  • 2.40, Аноним (40), 17:10, 12/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     

  • 1.7, Аноним (7), 13:24, 12/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    Я еще когда в детстве писал игровой движок, уже сразу понял, что доверять системе в плане ресолвинга путей не следует - надо мутить свою виртуальную файловую систему с блэкджеком и девками. А эти до сих пор делают все по принципу костылей, так что периодически выясняется, что где-то какого-то костыля не хватает.
     
     
  • 2.13, Аноним (13), 13:39, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • –3 +/–
    Проблема гораздо глубже на пользовательской стороне вовсе не должны быть никаких файлов всё по запросу и только после официальной проверки по паспорту.
     

  • 1.8, Аноним (13), 13:33, 12/11/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/–
     
  • 1.9, Аноним (9), 13:34, 12/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    > При слиянии тега с тремя и более подписями данные сохраняются вне массива.
    > приводило к чтению содержимого из области вне границ буфера

    ЛОЛ, сишники просто не могу не писЯть мимо буфера!


    > повреждение памяти при выполнении больших операций слияния
    > из-за накопления размера результата в поле с типом int

    А что так абстрактно написали?
    Там Heap buffer overflow, все как вы любите!

     
  • 1.15, Аноним (15), 14:06, 12/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    Не совсем по теме, но у всех последнее время дико тупит гитхаб? Какой-то лютый треш просто. Все, за что берется мелкософт, по ходу, превращается в г...
     
     
  • 2.20, Аноним (11), 14:32, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Поменяй айпи на американский. Не только гитхаб тупит, они все тупят, потому что нужно выделить ресурсы чатботам. А люди обойдутся, это не для них придумали системы контроля версий.
     
     
  • 3.24, Аноним (15), 14:56, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Понял, благодарю тебя, незнакомец!
     
  • 2.31, Ivan_83 (ok), 16:09, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Нет, работает чуть медленее локальной гитеи.
     

  • 1.16, Аноним (16), 14:10, 12/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    > из вредоносного Git-репозитория

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

     
     
  • 2.19, Аноним (18), 14:22, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > И никого не смущает, что во вредоносном репозитарии может быть вредоносный исходник,
    > который ты... что собираешься сделать?

    Напр. просто посмотреть что там наделали.
    А оно выполняет произвольный код. Не это ожидалось, не так ли?


     
     
  • 3.23, Аноним (13), 14:43, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Пистолет тоже просто вышвыривает металлический брусок и это так и ожидалось. Но пистолет ты просто так достать не сможешь. Подумай на досуге почему так происходит.  
     
     
  • 4.32, Ivan_83 (ok), 16:10, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Это вы его достать не сможете, потому что думаете не правильно.
     
     
  • 5.36, Аноним (36), 16:44, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    А ты можешь что ли? Или у тебя табельное?
     
     
  • 6.38, Ivan_83 (ok), 17:03, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Я это могу сделать это легально и это займёт не слишком много времени и денег. Я бы сказал что сильно проще чем сдать на водятельские права это занимает.

    Не легальный способ предполагает что идущий на это понимает и принимает риски, там их тоже далеко не один...

     
  • 4.39, Аноним (37), 17:10, 12/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     

  • 1.21, Ivan_83 (ok), 14:33, 12/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/–
    Опять с критикой понабежали дети у которых из опыта программирования полтора рабочих хэлловрота, да и те страшно самому смотреть.

    Вот как наберётесь опыта длительной эксплуатации сложных систем (не обязательно ПО), так и приходите.
    Такие мелочи как тут вообще фигня полная для таких систем.

     
     
  • 2.22, Аноним (13), 14:41, 12/11/2026 Скрыто ботом-модератором     [к модератору]
  • +3 +/–
     
  • 2.25, User (??), 14:59, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Да-да, вот прожуешь три тонны сена - тогда стейк и критикуй!
     
  • 2.26, Аноним (26), 15:08, 12/11/2026 Скрыто ботом-модератором     [к модератору]
  • +1 +/–
     
  • 2.28, Аноним (28), 15:28, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > Ivan_83
    > из опыта программирования полтора рабочих хэлловрота

    Но ты ведь буквально себя сейчас описал.

    Это первентивный наклад самому себе в штаны, или что?

     
     
  • 3.33, Ivan_83 (ok), 16:16, 12/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     

  • 1.27, Аноним (27), 15:11, 12/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/–
    ХАХАХА!

    Вот что бывает, когда пишешь код, работающий с внешными данными на недойазычке из 70х.

    "C" in CVE stands for C language.

     
     
  • 2.35, Аноним (35), 16:40, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    ну ты же уже написал ос на нормальном, ссылка то где?
     

  • 1.29, Аноним (28), 15:39, 12/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    > Проблема вызвана тем, что длина записи с именем в индексе вычисляется с использованием 64-разрядного целого типа size_t, а хранится в 32-разрядном поле ce_namelen. При передаче очень длинного имени вида ".gitA/AAA...."

    Что за туфту я только что прочитал? То есть нужно всего лишь сделать имя длиной более 2^32, то есть более 4 ГБ?

     
     
  • 2.30, Ivan_83 (ok), 16:08, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Похоже что так, но обезъянки умеют только кричать: CVE-CVE-CVE!!! осилить что проблема уровня никогда не случится они не могут :)
     
     
  • 3.41, Жертва (?), 17:19, 12/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    https://www.openwall.com/lists/oss-security/2020/05/19/8

    TLDR: In 2005, three vulnerabilities were discovered in qmail but were
    never fixed because they were believed to be unexploitable in a default
    installation. We recently re-discovered these vulnerabilities and were
    able to exploit one of them remotely in a default installation.

     

  • 1.34, Аноним (-), 16:23, 12/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    > При слиянии тега с тремя и более подписями данные сохраняются
    > вне массива.

    А, ну понятно. Если попытаться изобразить фигуру "фантомас в очках на аэроплане" - можно поскользнуться на банановой шкурке и разбить себе лицо...

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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