Уязвимост в Git за Cygwin, позволяваща изпълнение на код

В Git е открито критично уязвимост (CVE-2021-29468), която се проявява само при компилиране за околната среда Cygwin (библиотека за емилиране на базов Linux API в Windows и набор от стандартни linux програми за Windows). Уязвимостта позволява изпълнението на зловреден код при извлечение на данни (“git checkout”) от репозитория, контролиран от атакуващия. Проблемът е решен в пакета git 2.31.1-2 за Cygwin. В основния проект Git проблемът все още не е отстранен (малко вероятно е някой да компилира git за Cygwin самостоятелно, вместо да използва готов пакет).

Уязвимостта е причинена от обработката на околната среда Cygwin като Unix-подобна система, а не Windows, което води до липса на ограничения при използването на символа ‘\’ в пътя, докато в Cygwin, както и в Windows, този символ може да се използва за разделяне на директории. В резултат на това, чрез създаването на специално модифициран репозиторий, съдържащ символични връзки и файлове със символа обратен слеш, може да се постигне презапис на произволни файлове при зареждане на този репозиторий в Cygwin (в Git за Windows аналогична уязвимост беше отстранена през 2019 година). Получавайки възможност за презапис на файлове, атакуващият може да преопредели hook-виканията в git и да постигне изпълнение на произволен код в системата.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster