Создатели Git исправили две критические уязвимости, которые позволяли выполнять произвольный код после успешного использования ошибок переполнения буфера кучи.
Кроме того, была исправлена третья уязвимость только для Windows, влияющая на графический интерфейс Git, связанная с ненадежным путем поиска, который позволял злоумышленникам, не прошедшим проверку подлинности, выполнять ненадежный код.
Первые две уязвимости (CVE-2022-41903 В механизме формирования коммитов и CVE-2022-23521 в парсере .gitattributes) были исправлены во всех версиях, начиная с 2.30.7.
Третья проблема, обозначенная как CVE-2022-41953, все еще ожидает исправления, но, как сообщается, пользователи могут снизить риски, не используя графический интерфейс Git для клонирования репозиториев и избегая клонирования из ненадежных источников.
Все три проблемы были обнаружены экспертами X41 и GitLab внутри компании. Аудит Щелкните исходный код, спонсируемый OSTIF.
«Наиболее серьезная обнаруженная проблема позволяет злоумышленнику инициировать повреждение информации в памяти кучи во время операций клонирования или извлечения, что может привести к выполнению произвольного кода. Еще одна критическая проблема позволяет выполнять код во время операции архивирования, отмечают эксперты X41». Кроме того, было выявлено огромное количество проблем с целыми числами, которые могут привести к ситуациям отказа в обслуживании, чтению за пределами границ и плохой обработке взаимоблокировок, возникающих при обработке больших объемов ввода».
Самый эффективный способ защититься от всех обнаруженных проблем — обновить git до последней версии (2.39.1).