В 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», ранее всплывали уже как минимум три раза.

Добавить комментарий

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.