Git for Cygwinin haavoittuvuus, jonka avulla voit järjestää koodin suorittamisen

Gitissä (CVE-2021-29468) on tunnistettu kriittinen haavoittuvuus, joka näkyy vain luotaessa Cygwin-ympäristöä (kirjasto, joka emuloi perus Linux-sovellusliittymää Windowsissa ja joukko tavallisia Linux-ohjelmia Windowsille). Haavoittuvuus mahdollistaa hyökkääjäkoodin suorittamisen haettaessa tietoja ("git checkout") hyökkääjän hallitsemasta tietovarastosta. Ongelma on korjattu Cygwinin git 2.31.1-2 -paketissa. Git-pääprojektissa ongelmaa ei ole vielä korjattu (on epätodennäköistä, että joku rakentaa gittiä Cygwinille omin käsin valmiin paketin käyttämisen sijaan).

Haavoittuvuus johtuu siitä, että Cygwin käsittelee ympäristöä Unix-tyyppisenä järjestelmänä Windowsin sijaan, mikä ei aiheuta rajoituksia \-merkin käytölle polussa, kun taas Cygwinissä, kuten Windowsissa, tämä merkki voi olla käytetään erottamaan hakemistoja. Tämän seurauksena luomalla erityisesti muokattu arkisto, joka sisältää symbolisia linkkejä ja kenoviivalla varustettuja tiedostoja, on mahdollista ylikirjoittaa mielivaltaiset tiedostot ladattaessa tätä arkistoa Cygwiniin (samanlainen haavoittuvuus korjattiin Git for Windowsissa vuonna 2019). Saavuttamalla mahdollisuuden korvata tiedostoja, hyökkääjä voi ohittaa gitissä olevat hook-kutsut ja saada mielivaltaisen koodin suorittamaan järjestelmässä.

Lähde: opennet.ru

Lisää kommentti