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

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

Разработчики Git Project на днях сообщили о критической уязвимости в клиенте командной строки, Git Desktop и Atom. Эта брешь способна позволить вредоносным репозиториям удаленно выполнять команды на уязвимой машине. Проблеме был присвоен идентификатор CVE-2018-17456.

Эта уязвимость схожа с CVE-2017-1000117, которая допускает инъекцию кода. Обе эти бреши позволяют злонамеренным репозиториям создать файл .gitmodules, который будет содержать URL-адрес, начинающийся с тире.

Используя тире, атакующий может задействовать параметр -recurse-submodules, в этом случае командная строка интерпретирует URL как команду. Это может привести к удаленному выполнению кода на компьютере.

«При использовании ‘git clone --recurse-submodules’ Git парсит файл .gitmodules, передавая поле URL в качестве аргумента. Это происходит из-за использования тире в начале адреса. Благодаря этой технике киберпреступник может запустить скрипт», — объясняет специалист.

Эксперт привел пример вредоносного файла .gitmodules, его содержимое мы публикуем ниже:

[submodule "test"]
path = test
url = ssh://-oProxyCommand=touch VULNERABLE/[email protected]:/timwr/test.git

Разработчики исправили проблему с выходом версий Git v2.19.1, GitHub Desktop 1.4.2, Github Desktop 1.4.3-beta0, Atom 1.31.2 и Atom 1.32.0-beta3.

Всем пользователям настоятельно рекомендуется обновить свои версии вышеозначенных приложений.