Обновление Git с устранением ещё одной уязвимости

Git CVE-2020-11008 Новости

Опубликованы корректирующие выпуски распределённой системы управления исходными текстами Git 2.26.2, 2.25.4, 2.24.3, 2.23.3, 2.22.4, 2.21.3, 2.20.4, 2.19.5, 2.18.4 и 2.17.5, в которых устранена уязвимость (CVE-2020-11008), напоминающая проблему, устранённую на прошлой неделе. Новая уязвимость также затрагивает обработчики “credential.helper” и эксплуатируется при передаче специально оформленного URL, содержащего символ новой строки, пустой хост или не указанную схему запроса. При обработке подобного URL credential.helper отправляет информацию об учётных данных, не соответствующих запрошенному протоколу или хосту, к которому осуществляется обращение.

В отличие от прошлой проблемы при эксплуатации новой уязвимости атакующий не может напрямую контролировать хост, от которого будут переданы чужие учётные данные. То, какие учётные данные утекут зависит от особенностей обработки отсутствующего параметра “host” в credential.helper. Суть проблемы в том, что пустые поля в URL интерпретируются многими обработчиками credential.helper как инструкции для применения к текущему обращению любых учётных данных. Таким образом credential.helper может отправить на указанный в URL сервер атакующего учётные данные, сохранённые для другого сервера.

Проблема проявляется при выполнении таких операций, как “git clone” и “git fetch”, но наиболее опасна при обработке субмодулей – при выполнении “git submodule update” автоматически обрабатываются URL, заданные в файле .gitmodules из репозитория. В качестве обходного пути блокирования проблемы рекомендуется не использовать credential.helper при обращении к публичным репозиториям и не применять “git clone” в режиме “–recurse-submodules” с непроверенными репозиториями.

Предложенное в новых выпусках Git исправление запрещает вызов credential.helper для URL, содержащих непредставимые значения (например, при указании трёх слэшей вместо двух – “http:///host” или без схемы протокола – “http::ftp.example.com/”). Проблема затрагивает обработчики store (встроенное хранилище учётных данных Git), cache (встроенный кэш введённых учётных данных) и osxkeychain (хранилище для macOS). Обработчик Git Credential Manager (хранилище для Windows) уязвимости не подвержен. Проследить за выпуском обновлений пакетов в дистрибутивах можно на страницах DebianUbuntuRHELSUSE/openSUSEFedoraArchALTFreeBSD.

Publisher
Оцените автора
AsaDagar
Добавить комментарий