Уязвимости в Git, приводящая к утечке и перезаписи данных

Discussion in 'Мировые новости. Обсуждения.' started by Suicide, 15 Feb 2023.

  1. Suicide

    Suicide Super Moderator
    Staff Member

    Joined:
    24 Apr 2009
    Messages:
    2,482
    Likes Received:
    7,062
    Reputations:
    693
    Опубликованы корректирующие выпуски распределённой системы управления исходными текстами Git 2.38.4, 2.37.6, 2.36.5, 2.35.7, 2.34.7, 2.33.7, 2.32.6, 2.31.7 и 2.30.8, в которых устранены две уязвимости, затрагивающие оптимизации при локальном клонировании и команду "git apply". Проследить за выпуском обновлений пакетов в дистрибутивах можно на страницах Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD. Если установить обновление не представляется возможным, в качестве обходных мер рекомендуется избегать выполнения операции "git clone" с опцией "--recurse-submodules" с репозиториями, не заслуживающими доверия, а также не использовать команды "git apply" и "git am" с непроверенным кодом.

    • Уязвимость CVE-2023-22490 позволяет атакующему, контролирующему содержимое клонируемого репозитория, получить доступ к конфиденциальным данным на системе пользователя. Появлению уязвимости способствуют две недоработки:
      Первая недоработка, позволяет при работе со специально оформленным репозиторием добиться применения локальных оптимизаций клонирования даже при использовании транспорта, взаимодействующего со внешними системами.

      Вторая недоработка, допускает размещение символической ссылки вместо каталога $GIT_DIR/objects по аналогии с уязвимостью CVE-2022-39253, в исправлении которой блокировалось размещение символических ссылок в каталоге $GIT_DIR/objects, но не проверялся факт того, что сам каталог $GIT_DIR/objects может быть символической ссылкой.

      В режиме локального клонирования git переносит $GIT_DIR/objects в целевой каталог, выполняя разыменование символических ссылок, что приводит к тому, что в целевой каталог копируются непосредственно файлы, на которые указывают ссылки. Переключение на применение локальных оптимизаций клонирования для нелокального транспорта позволяет эксплуатировать уязвимость при работе с внешними репозиториями (например, рекурсивное включение субмодулей командой "git clone --recurse-submodules" может привести к клонированию вредоносного репозитория, упакованного в форме субмодуля в другом репозитории).

    • Уязвимость CVE-2023-23946 позволяет перезаписать содержимое файлов вне рабочего каталога через передачу специально оформленного ввода в команду "git apply". Например, атака может быть совершена при обработке в "git apply" подготовленных злоумышленником патчей. Для блокирования создания патчами файлов вне рабочей копии, "git apply" блокирует обработку патчей, пытающихся записать файл с использованием символических ссылок. Но эту защиту оказалось можно обойти, создав символическую ссылку в первую очередь.
     
    _________________________
    seostock likes this.
Loading...