В Git устранена уязвимость, которая может привести к выполнению кода атакующего
Доступны внеплановые обновления Git 2.14.5, 2.15.3, 2.16.5, 2.17.2, 2.18.1 и 2.19.1, в которых устранена уязвимость (CVE-2018–17456), позволяющая атакующему выполнить свой код через подстановку специально оформленного файла .gitmodules в составе проекта, клонируемого с рекурсивным включением субмодулей (проблема проявляется только при выполнении операции «git clone --recurse-submodules»).
Уязвимость вызвана тем, что извлекаемое из файла .gitmodules поле URL без проверки корректности значения передаётся в качестве аргумента в процесс «git clone». Если значение URL начинается с символа »-», то «git clone» обрабатывает его как опцию командной строки. Соответственно, злоумышленник имеет возможность через манипуляцию значением URL организовать выполнение произвольного скрипта в системе разработчика, выполняющего операцию клонирования.
В выпусках 2.17.2, 2.18.1 и 2.19.1 дополнительно добавлена fsck-проверка для выявления вредоносных репозиториев, эксплуатирующих вышеописанную уязвимость. Проверка выполняется на этапе извлечения или помещения данных в репозиторий. Настройка проверки производится через опцию «transfer.fsckObjects» в git-config. Примечательно, что проблемы с безопасностью, эксплуатируемые при помощи параметров файла ».gitmodules», ранее всплывали уже как минимум три раза.
© OpenNet