go-git — это расширяемая библиотека реализации git, написанная на чистом Go. До версий 5.19.2 и 6.0.0-alpha.5 операции рабочего дерева (включая извлечение, статус и добавление) разрешают символические ссылки внутри рабочего дерева, не ограничивая разрешение границей рабочего дерева, поэтому вредоносно созданный репозиторий, содержащий символическую ссылку, может привести к тому, что go-git будет читать или записывать файлы за пределами предполагаемого рабочего каталога, когда репозиторий клонируется и используются его операции с рабочим деревом. Версии 5.19.2 и 6.0.0-альфа.5.
Показать оригинальное описание (EN)
go-git is an extensible git implementation library written in pure Go. Prior to 5.19.2 and 6.0.0-alpha.5, worktree operations (including checkout, status, and add) resolve symbolic links inside the working tree without confining resolution to the worktree boundary, so a maliciously crafted repository containing a symlink can cause go-git to read from or write to files outside the intended working directory when the repository is cloned and its worktree operations are used. Versions 5.19.2 and 6.0.0-alpha.5.
Характеристики атаки
Последствия
Строка CVSS v3.1