Разработчики проекта Git рассказали об обнаружении уязвимости, которую можно использовать для выполнения вредоносного кода после команды git clone
. Она представляет опасность для операционных систем семейства Unix (в том числе macOS и Linux), среды Cygwin, а также ОС Linux в слое совместимости Windows Subsystem for Linux. ОС Windows уязвимости не подвержена. Несмотря на это, сотрудники Microsoft порекомендовали всем пользователям обновить Git до версий 2.14.5, 2.15.3, 2.16.5, 2.17.2, 2.18.1 и 2.19.1.
Уязвимость Git
Злоумышленнику достаточно создать файл .gitmodules и клонировать его внутри проекта с рекурсивным включением подмодулей. При выполнении команды git clone --recurse-submodules
поле URL передаётся без проверки в подпроцесс git clone
. Он интерпретирует символ «-» как опцию командной строки, если с него начинается значение URL.
Помимо устранения уязвимости, разработчики добавили в обновления 2.17.2, 2.18.1 и 2.19.1 fsck-проверку с помощью transfer.fsckObjects в git-config. Она выявляет вредоносный репозиторий на этапе извлечения или помещения в него данных.
Microsoft старается оперативно устранять уязвимости, но в середине сентября 2018 года энтузиасты из The Zero Day Initiative (ZDI) рассказали о бреши в механизме баз данных Microsoft Jet. Она была обнаружена в начале мая 2018 года и позволяла использовать эксплойт для выполнения произвольного кода.
via блог Microsoft DevOps Source: LKML