В системе классификации уязвимостей BDU обнаружена критическая уязвимость под номером 2025-14328 в утилите командной строки interactive-git-checkout. Данная уязвимость связана с недостаточной проверкой вводимых данных в функции exec() и позволяет злоумышленникам выполнять произвольные команды на уязвимых системах. Идентификатор CVE для данной уязвимости - CVE-2025-59046.
Детали уязвимости
Уязвимость затрагивает все версии interactive-git-checkout до 1.1.4 включительно. Этот инструмент разработан вендором ninofiliu и относится к категории прикладного программного обеспечения информационных систем. Тип ошибки классифицируется как CWE-77 - непринятие мер по чистке данных на управляющем уровне, что также известно как внедрение в команду.
Критический уровень опасности подтверждается оценками CVSS. Базовая оценка CVSS 2.0 составляет максимальные 10 баллов с вектором AV:N/AC:L/Au:N/C:C/I:C/A:C. По шкале CVSS 3.1 уязвимость получает 9.8 баллов при векторе AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. Такие высокие оценки обусловлены тем, что уязвимость может эксплуатироваться удаленно без аутентификации и приводит к полному компрометированию системы.
Основная проблема заключается в недостаточной валидации входных данных при использовании функции exec(). Злоумышленник может внедрить специально сформированные команды через параметры утилиты. В результате происходит выполнение произвольных команд с привилегиями пользователя, запустившего interactive-git-checkout. Это создает серьезную угрозу безопасности, поскольку позволяет получить полный контроль над системой.
Эксперты по безопасности отмечают, что в открытом доступе уже существуют рабочие эксплойты. Способ эксплуатации классифицируется как инъекция. При этом статус уязвимости и информация о способах устранения в настоящее время уточняются разработчиками.
В качестве временных компенсирующих мер специалисты рекомендуют несколько подходов. Во-первых, следует использовать системы обнаружения и предотвращения вторжений для мониторинга попыток эксплуатации уязвимости. Во-вторых, организация удаленного доступа через VPN может ограничить потенциальных атакующих. Также эффективным решением становится использование замкнутой программной среды при работе с файлами из недоверенных источников.
Дополнительной защитной мерой является минимизация пользовательских привилегий. При работе с утилитой следует использовать учетные записи с минимально необходимыми правами. Кроме того, рекомендуется реализовать строгую валидацию имен веток с помощью регулярных выражений, чтобы предотвратить внедрение вредоносных команд.
Разработчики уже начали работу над устранением проблемы. Соответствующие коммиты можно отслеживать в репозитории проекта на GitHub. В частности, коммит 8dd832dd302af287a61611f4f85e157cd1c6bb41 содержит начальные исправления. Также создан security advisory GHSA-4wcm-7hjf-6xw5 с подробным описанием проблемы.
Пользователям interactive-git-checkout рекомендуется немедленно принять защитные меры. Необходимо ограничить использование утилиты до выхода официального исправления. Особую осторожность следует проявлять при работе с ветками из непроверенных источников. Регулярный мониторинг системных логов поможет своевременно обнаружить попытки эксплуатации уязвимости.
Данный случай демонстрирует важность тщательной проверки входных данных в командных утилитах. Разработчикам следует уделять особое внимание санитизации пользовательского ввода, особенно при использовании функций выполнения системных команд. Безопасность должна быть integral частью процесса разработки, а не добавляться постфактум.
Ситуация продолжает развиваться, и эксперты ожидают появления дополнительной информации от разработчиков. Пользователям рекомендуется следить за обновлениями в официальном репозитории проекта. Своевременное применение патчей поможет предотвратить потенциальные инциденты безопасности.
Ссылки
- https://bdu.fstec.ru/vul/2025-14328
- https://www.cve.org/CVERecord?id=CVE-2025-59046
- https://github.com/ninofiliu/interactive-git-checkout/commit/8dd832dd302af287a61611f4f85e157cd1c6bb41
- https://github.com/ninofiliu/interactive-git-checkout/security/advisories/GHSA-4wcm-7hjf-6xw5