Kwesbaarheid in Git vir Cygwin wat jou toelaat om kode-uitvoering te organiseer

'n Kritieke kwesbaarheid is geïdentifiseer in Git (CVE-2021-29468), wat slegs verskyn wanneer dit vir die Cygwin-omgewing gebou word ('n biblioteek om die basiese Linux API op Windows na te boots en 'n stel standaard Linux-programme vir Windows). Die kwesbaarheid laat aanvallerkode toe om uitgevoer te word wanneer data (“git checkout”) vanaf 'n bewaarplek wat deur die aanvaller beheer word, herwin word. Die probleem is opgelos in die git 2.31.1-2-pakket vir Cygwin. In die hoof Git-projek is die probleem nog nie reggestel nie (dit is onwaarskynlik dat iemand met hul eie hande git vir Cygwin bou, eerder as om 'n klaargemaakte pakket te gebruik).

Die kwesbaarheid word veroorsaak deur Cygwin se verwerking van die omgewing as 'n Unix-agtige stelsel eerder as Windows, wat lei tot geen beperkings op die gebruik van die '\' karakter in die pad nie, terwyl in Cygwin, soos in Windows, hierdie karakter kan wees gebruik om gidse te skei. As gevolg hiervan, deur 'n spesiaal gewysigde bewaarplek te skep wat simboliese skakels en lêers met 'n skuinsstreepkarakter bevat, is dit moontlik om arbitrêre lêers te oorskryf wanneer hierdie bewaarplek in Cygwin gelaai word ('n soortgelyke kwesbaarheid is in Git vir Windows in 2019 reggestel). Deur die vermoë te verkry om lêers te oorskryf, kan 'n aanvaller haak-oproepe in git ignoreer en veroorsaak dat arbitrêre kode op die stelsel uitgevoer word.

Bron: opennet.ru

Voeg 'n opmerking