Avaldatud on Git'i hajutatud allikakontrollisĂŒsteemi tugiversioonid 2.39.1, 2.38.3, 2.37.5, 2.36.4, 2.35.6, 2.34.6, 2.33.6, 2.32.5, 2.31.6 ja 2.30.7, milles on kĂ”rvaldatud kaks haavatavust, mis vĂ”imaldavad kĂ€itada oma koodi kasutaja sĂŒsteemis, kui kasutada kĂ€sku 'git archive' ja töötada usaldamatute vĂ€liste hoidlate kallal. Haavatavused tulenevad vigadest kommiti vormindamise koodis ja failide '.gitattributes' analĂŒĂŒsimises, mis vĂ”ivad mĂ”jutada mĂ€lus asuvat kuplit ning lugeda juhuslikke andmeid mĂ€lust.
MĂ”lemad haavatavused tuvastati Git'i koodibaasi turbeauditi kĂ€igus, mille viis lĂ€bi X41 ettevĂ”te OSTIF (Open Source Technology Improvement Fund) tellimusel, mille eesmĂ€rk on avatud projektide kaitse tugevdamine. Lisaks kahele allpool kĂ€sitletavale kriitilisele probleemile tuvastati auditi kĂ€igus ka ĂŒks ohtlik haavatavus, ĂŒks mÔÔdukalt ohtlik haavatavus ja neli mitteohtlikku probleemi. Samuti tehti 27 soovitust koodibaasi turvalisuse parandamiseks.
- CVE-2022-41903: tĂ€isarvu ĂŒlevool, mis ilmneb kommittiteabe vormindamise koodis, kui töödeldakse suuri nihkevÀÀrtusi tĂ€itevate operaatorite, nagu '%<(«', '%(«', '%>>(« ja '%><( )». TĂ€isarvu ĂŒlevool esineb funktsioonis format_and_pad_commit() int tĂŒĂŒpi kasutamise tĂ”ttu size_t muutuja jaoks, mis osaleb memcpy() kutsumisel koopiatava ploki nihke suuruse mÀÀramisel.
Haavatavus ilmneb nii otsese kutse korral spetsiaalselt kujundatud vormindamisparameetritega (nĂ€iteks kĂ€ivitades 'git log --format=âŠ'), kui ka kaudse vormindamise rakendamise korral kĂ€sku 'git archive' tĂ€ide viiva hoidla, mis on rĂŒndaja kontrolli all. Teisel juhul mÀÀratakse vormindamismodifikaatorid parameetri export-subst kaudu failis '.gitattributes', mille rĂŒndaja saab oma hoidlas paigutada. Probleem vĂ”ib kasutada juhuslike mĂ€lupiirkondade lugemiseks ja kirjutamiseks, mis viib pahatahtliku koodi kĂ€ivitamiseni usaldamatute hoidlate kallal.
- CVE-2022-23521: tĂ€isarvude ĂŒletamised failide â.gitattributesâ sisu analĂŒĂŒsimisel, mis ilmnevad, kui töödelda vĂ€ga suurt arvu failiteemade malli vĂ”i suure hulga atribuute ĂŒhe malli puhul, samuti vĂ€ga suurte atribuutide nimede analĂŒĂŒsimisel. Probleemi saab kasutada juhuslike mĂ€lualade lugemiseks ja kirjutamiseks ning see vĂ”ib viia pahatahtliku koodi tĂ€itmisele töötamisel kontrollimata registriga, kus rĂŒndaja saab paigutada spetsiaalselt vormistatud faili .gitattributes ja tagada selle sisenemise indeksisse.
Pakettide vĂ€rskenduste avaldamist jaotustes saab jĂ€lgida jĂ€rgmiste lehtede kaudu: Debian, Ubuntu, Gentoo, RHEL, SUSE, Arch, FreeBSD, NetBSD. RĂŒnnaku ohu vĂ€hendamiseks, kui vĂ€rskendust ei saa Ă”igeaegselt installida, soovitatakse hoiduda usaldamatutest registritest ja âgit archiveâ kĂ€su kasutamisest. On oluline meeles pidada, et âgit archiveâ kĂ€sk vĂ”ib töötada ka kaudselt, nĂ€iteks git daemon'i kaudu. âGit archiveâ kĂ€ivitamise keelamiseks git daemon'is tuleb muuta seadistust daemon.uploadArch kĂ€suga âgit config âglobal daemon.uploadArch falseâ.
Lisaks vĂ”ib vĂ€lja tuua veel ĂŒhe haavatavuse (CVE-2022-41953) tootes Git for Windows, mis vĂ”imaldab koodi tĂ€itmist usaldamatute vĂ€liste registrite kloonimisel graafilise liidese kaudu. Probleem tuleneb sellest, et Git GUI Windows jaoks kĂ€ivitab automaatselt teatud post-protsessimise kĂ€sud, nagu Ă”igekirjakontrolli programm spell-check, pĂ€rast âcheckoutâ operatsiooni, kuna failide otsinguteed spell-check'ile hĂ”lmavad ka kloonitud tööpuu (rĂŒnnak piirdub spell-check'i lisamisega registri tööpuusse).
Allikas: opennet.ru
