Выпущен Git 2.38.1 с исправлением двух новых уязвимостей
Git 2.38.1 был только что выпущен вместе с обновлениями для более старых версий, включая новые точечные выпуски v2.30.6, v2.31.5, v2.32.4, v2.33.5, v2.34.5, v2.35.5, v2.36.3 и v2. .37.4. Сегодняшний большой набор обновлений Git связан с выявлением еще двух проблем с безопасностью.
Новейшие уязвимости Git — CVE-2022-39253 и CVE-2022-39260. Первый относится к оптимизации клонирования "--local", что приводит к возможным появлениям произвольных файлов в $GIT_DIR при клонировании из вредоносного репозитория. Другая уязвимость связана с тем, что слишком длинные командные строки, передаваемые подкоманде оболочки git, могут в конечном итоге привести к произвольной записи в кучу и удаленному выполнению кода.
Эти два CVE суммированы в объявлении о выпуске Git 2.38.1 как:
CVE-2022-39253:
Полагаясь на оптимизацию клонирования --local, Git разыменовывает символические ссылки в исходном репозитории перед созданием жестких ссылок (или копий) разыменованной ссылки в целевом репозитории. Это может привести к неожиданному поведению, когда произвольные файлы присутствуют в репозитории `$GIT_DIR` при клонировании из вредоносного репозитория.
Git больше не будет разыменовывать символические ссылки с помощью механизма клонирования --local и вместо этого откажется клонировать репозитории, имеющие символические ссылки в каталоге `$GIT_DIR/objects`.
Кроме того, значение `protocol.file.allow` по умолчанию изменено на «user».
CVE-2022-39260:
Чрезмерно длинная командная строка, переданная `git shell`, может привести к переполнению в `split_cmdline()`, что приведет к произвольной записи кучи и удаленному выполнению кода, когда `git shell` открыт, а каталог `$HOME/git-shell-commands`.
`git shell` научили отказываться от интерактивных команд, размер которых превышает 4 МБ. `split_cmdline()` усилен, чтобы отклонять входные данные размером более 2 ГБ.
Новейшие уязвимости Git — CVE-2022-39253 и CVE-2022-39260. Первый относится к оптимизации клонирования "--local", что приводит к возможным появлениям произвольных файлов в $GIT_DIR при клонировании из вредоносного репозитория. Другая уязвимость связана с тем, что слишком длинные командные строки, передаваемые подкоманде оболочки git, могут в конечном итоге привести к произвольной записи в кучу и удаленному выполнению кода.
Эти два CVE суммированы в объявлении о выпуске Git 2.38.1 как:
CVE-2022-39253:
Полагаясь на оптимизацию клонирования --local, Git разыменовывает символические ссылки в исходном репозитории перед созданием жестких ссылок (или копий) разыменованной ссылки в целевом репозитории. Это может привести к неожиданному поведению, когда произвольные файлы присутствуют в репозитории `$GIT_DIR` при клонировании из вредоносного репозитория.
Git больше не будет разыменовывать символические ссылки с помощью механизма клонирования --local и вместо этого откажется клонировать репозитории, имеющие символические ссылки в каталоге `$GIT_DIR/objects`.
Кроме того, значение `protocol.file.allow` по умолчанию изменено на «user».
CVE-2022-39260:
Чрезмерно длинная командная строка, переданная `git shell`, может привести к переполнению в `split_cmdline()`, что приведет к произвольной записи кучи и удаленному выполнению кода, когда `git shell` открыт, а каталог `$HOME/git-shell-commands`.
`git shell` научили отказываться от интерактивных команд, размер которых превышает 4 МБ. `split_cmdline()` усилен, чтобы отклонять входные данные размером более 2 ГБ.
Похожие публикации
Нет комментариев