В Git устранили две критических уязвимости удаленного исполнения кода

В Git устранили две критических уязвимости удаленного исполнения кода

В Git устранили две критических уязвимости удаленного исполнения кода

Аудит исходных кодов Git, проведенный экспертами GitLab и германской ИБ-компании X41 D-SEC, выявил две ошибки переполнения буфера в куче, которые можно использовать для выполнения произвольного кода. Чтобы устранить уязвимости, оцененные в 9,8 балла CVSS, участники проекта выпустили обновления с патчами в ветках с 2.30 по 2.39.

Согласно сообщению X41, из найденных проблем наиболее опасна CVE-2022-23521 — порча памяти при выполнении команды clone или pull. Другая критическая уязвимость, CVE-2022-41903, проявляется при выполнении операции архивирования. Исследователи также обнаружили одну уязвимость высокой степени опасности, одну — средней и четыре — низкой опасности.

В бюллетенях, опубликованных на GitHub, поясняется, что в появлении CVE-2022-23521 повинен парсер.gitattributes. При разборе таких файлов возникают множественные ошибки целочисленного переполнения, которые могут повлечь чтение или запись произвольных данных в куче.

Уязвимость CVE-2022-41903, согласно бюллетеню, кроется в механизме форматирования коммитов. Целочисленное переполнение, возникающее при обработке паддинг-операторов — таких как %<(, %>( и т. п., грозит записью произвольных данных в куче.

Уязвимость высокой степени опасности (CVE-2022-41953, 8,6 балла CVSS) актуальна лишь для Windows-версий Git 2.39.0 и ниже. Она вызвана некорректной реализацией GUI-скрипта и проявляется как ненадежный путь к исполняемому файлу при клонировании репозиториев. В итоге открылась возможность удаленно выполнить код из недоверенного источника.

Обновления с патчами доступны с 17 января, пользователям настоятельно рекомендуется совершить апгрейд, установив новейшую сборку — 2.39.1. Тем, у кого пока нет такой возможности, советуют принять меры против эксплойта:

  • воздержаться от использования команды git archive в недоверенных репозиториях, а также команд git log –format с известными операторами;
  • при работе с недоверенными репозиториями отключить возможность выполнения команд git archive с помощью Git-демона (командой git config --global daemon.uploadArch false);
  • не использовать Git GUI на Windows при клонировании недоверенных репозиториев.
Подпишитесь на новости

Claude Code удалил 116 ГБ и сообщил, что файлы выглядят нормально

Пользователь Windows сообщил, что Claude Code при уборке временных файлов удалил около 116 ГБ данных из его домашней директории. Затем агент заверил, что остановил команду и все выглядит целым. По описанию инцидента, удаление продолжалось еще примерно 50 минут.

В отчете на GitHub пользователь рассказывает, что работал над анализом для соревнования Kaggle.

Основная сессия запустила субагента, который решил очистить собственные временные файлы, но сформировал лишнюю команду рекурсивного удаления.

Целью стала домашняя директория, указанная коротким именем Windows формата 8.3. Автор предполагает, что защитная проверка могла не распознать такой вариант пути. Точный механизм отказа защиты и режим разрешений остаются неизвестными.

Через 120 секунд задача автоматически перешла в фон. Агент запросил остановку и получил сообщение об успехе, однако, судя по описанным изменениям файловой системы, удаление продолжалось. Вероятное объяснение — дочерний процесс пережил остановку задачи.

Проверка тоже оказалась поверхностной: агент посмотрел на названия папок верхнего уровня, которые могли сохраняться, пока их содержимое исчезало.

Пользователь сообщил о потере проектов за несколько месяцев, инструментов разработки, SSH-ключей и учетных данных. В корзине удаленные файлы не оказались. Обращение помечено как ошибка высокого приоритета с потерей данных.

Особенно неприятна в этой истории уверенность агента. Наличие папки еще не означает наличие файлов.

RSS: Новости на портале Anti-Malware.ru