Git update mei 8 kwetsberens fêst

Publisearre korrektive releases fan it ferspraat boarne kontrôle systeem Git 2.24.1, 2.23.1, 2.22.2, 2.21.1, 2.20.2, 2.19.3, 2.18.2, 2.17.3, 2.16.6, 2.15.4 en 2.14.62.24.1 XNUMX, dy't kwetsberens fêststelde wêrtroch in oanfaller willekeurige paden yn it bestânsysteem oerskriuwe koe, útfiering fan koade op ôfstân organisearje, of bestannen oerskriuwe yn 'e map ".git/". De measte problemen identifisearre troch meiwurkers
Microsoft Security Response Center, fiif fan 'e acht kwetsberens binne spesifyk foar it Windows-platfoarm.

  • CVE-2019-1348 - streaming kommando "funksje eksport-marks = paad"stiet ta skriuw labels nei willekeurige mappen, dy't kinne wurde brûkt om willekeurige paden yn it bestânsysteem te oerskriuwen by it útfieren fan in "git fast-ymport" operaasje mei net kontrolearre ynfiergegevens.
  • CVE-2019-1350 - ferkearde ûntsnapping fan kommandorigelarguminten liede kinne om útfiering op ôfstân fan oanfallerkoade by rekursive klonen mei de ssh:// URL. Benammen ûntsnappingsarguminten dy't einigje op in backslash (bygelyks "test \") waard ferkeard behannele. Yn dit gefal, by it framen fan in argumint mei dûbele quotes, waard it lêste quote ûntkommen, wat it mooglik makke om de ferfanging fan jo opsjes op 'e kommandorigel te organisearjen.
  • CVE-2019-1349 - by it rekursyf klonearjen fan submodules ("clone -recurse-submodules") yn 'e Windows-omjouwing ûnder bepaalde betingsten it soe kinne trigger it gebrûk fan deselde git-map twa kear (.git, git~1, git~2 en git~N wurde erkend as ien map yn NTFS, mar dizze situaasje waard allinich hifke foar git~1), dy't koe wurde brûkt om te organisearjen skriuwen nei de map ". git". Om de útfiering fan syn koade te organisearjen, kin in oanfaller bygelyks syn skript ferfange troch de post-checkout-hantler yn it .git/config-bestân.
  • CVE-2019-1351 - de handler foar nammen fan letterstasjons yn Windows-paden by it oersetten fan paden lykas "C:\" waard allinich ûntworpen om Latynske identifiers fan ien letter te ferfangen, mar hâldde gjin rekken mei de mooglikheid fan it meitsjen fan firtuele driuwfearren tawiisd fia "subst letter:path" . Sokke paden waarden net as absolút, mar as relative paden behannele, wat it mooglik makke om, by it klonen fan in kwea-aardich repository, in record te organisearjen yn in willekeurige map bûten de wurkmapbeam (bygelyks by it brûken fan sifers of unicode-tekens op 'e skiif namme - "1:\wat\de\hex.txt" of "ä:\tschibät.sch").
  • CVE-2019-1352 - by it wurkjen op it Windows-platfoarm, it brûken fan alternative gegevensstreamen yn NTFS, makke troch it tafoegjen fan it attribút ":stream-name:stream-type" oan 'e bestânsnamme, tastien bestannen oerskriuwe yn 'e map ".git/" by it klonen fan in kwea-aardich repository. Bygelyks, de namme ".git::$INDEX_ALLOCATION" yn NTFS waard behannele as in jildige keppeling nei de ".git" map.
  • CVE-2019-1353 - as jo Git brûke yn in WSL (Windows Subsystem foar Linux) omjouwing by tagong ta de wurkmap net brûkt beskerming tsjin nammemanipulaasje yn NTFS (oanfallen fia FAT namme-oersetting wiene mooglik, bygelyks ".git" koe tagong wurde fia de map "git~1").
  • CVE-2019-1354 -
    kâns skriuwt nei de map ".git/" op it Windows-platfoarm by it klonen fan kweade repositories dy't bestannen befetsje mei in backslash yn 'e namme (bygelyks "a\b"), wat akseptabel is op Unix/Linux, mar wurdt akseptearre as ûnderdiel fan it paad op Windows.

  • CVE-2019-1387 - ûnfoldwaande kontrôle fan submodulenammen koe wurde brûkt om doelgerichte oanfallen te organisearjen, dy't, as rekursyf klone, mooglik kinne liede kinne om de koade fan 'e oanfaller út te fieren. Git foarkaam net it oanmeitsjen fan in submodule-map binnen de map fan in oare submodule, wat yn 'e measte gefallen allinnich ta betizing liede soe, mar foarkaam net mooglik dat de ynhâld fan in oare module oerskreaun waard tidens it rekursive klonproses (bygelyks de submodule-mappen "hippo" en "hippo/hooks" wurde pleatst as " .git/modules/hippo/" en ".git/modules/hippo/hooks/", en de heakmap yn hippo kin apart brûkt wurde foar it hostjen fan triggered hooks.

Windows-brûkers wurde advisearre om har ferzje fan Git daliks te aktualisearjen, en ûnthâlde fan it klonen fan net ferifiearre repositories oant de fernijing. As it noch net mooglik is om de Git-ferzje driuwend te aktualisearjen, dan is it oan te rieden om "git clone -recurse-submodules" en "git submodule update" net út te fieren mei net kontroleare repositories om it risiko fan oanfal te ferminderjen, net te brûken "git" fast-ymport" mei net kontroleare ynfierstreamen, en net om repositories te klonen nei NTFS-basearre partysjes.

Foar ekstra feiligens ferbiede nije releases ek it brûken fan konstruksjes fan 'e foarm "submodule.{name}.update=!command" yn .gitmodules. Foar distribúsjes kinne jo de frijlitting fan pakketfernijings op 'e siden folgje Debian,ubuntu, RHEL, SUSE/openSUSE, Fedora, Bôge, ALT, FreeBSD.

Boarne: opennet.ru

Add a comment