Ĝisdatigo de Git kun 8 vundeblecoj fiksitaj

Eldonita korektaj eldonoj de la distribua fontkontrolsistemo 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 kaj 2.14.62.24.1 .XNUMX, kiu riparis vundeblecojn, kiuj permesis al atakanto reverki arbitrajn vojojn en la dosiersistemo, organizi foran kodan ekzekuton aŭ anstataŭigi dosierojn en la dosierujo ".git/". Plej multaj problemoj identigitaj de dungitoj
Microsoft Security Response Center, kvin el la ok vundeblecoj estas specifaj por la Vindoza platformo.

  • CVE-2019-1348 - streaming-komando "trajto eksportmarkoj=vojo"permesas al skribi etikedojn al arbitraj dosierujoj, kiuj povas esti uzataj por anstataŭigi arbitrajn vojojn en la dosiersistemo dum farado de "git-rapid-import" operacio kun nekontrolitaj enigdatenoj.
  • CVE-2019-1350 - malĝusta eskapo de komandliniaj argumentoj povus gvidi al fora ekzekuto de atakanta kodo dum rekursiva klonado uzante la ssh:// URL. Precipe, eskapi argumentojn finiĝantajn per malantaŭa oblikvo (ekzemple, "testo \") estis traktitaj malĝuste. En ĉi tiu kazo, dum enkadrigo de argumento per duoblaj citiloj, la lasta citaĵo estis eskapata, kio ebligis organizi la anstataŭigon de viaj opcioj sur la komandlinio.
  • CVE-2019-1349 — kiam rekursie klonado de submoduloj ("klono —recurse-submodules") en la Vindoza medio sub certaj kondiĉoj ĝi povus esti ekigi la uzon de la sama git-dosierujo dufoje (.git, git~1, git~2 kaj git~N estas rekonitaj kiel unu dosierujo en NTFS, sed ĉi tiu situacio estis nur testita por git~1), kiu povus esti uzata por organizi skribante al la dosierujo ". git". Por organizi la ekzekuton de sia kodo, atakanto, ekzemple, povas anstataŭigi sian skripton per la post-kontrola prizorganto en la dosiero .git/config.
  • CVE-2019-1351 — la pritraktilo por leteraj disko-nomoj en Vindozo-vojoj dum tradukado de padoj kiel "C:\" estis desegnita nur por anstataŭigi unuliterajn latinajn identigilojn, sed ne konsideris la eblecon krei virtualajn diskojn asignitajn per "subst letter:path" . Tiaj vojoj estis traktataj ne kiel absolutaj, sed kiel relativaj vojoj, kio ebligis, dum klonado de malica deponejo, organizi rekordon en arbitra dosierujo ekster la labordosierujo-arbo (ekzemple, kiam oni uzas nombrojn aŭ unikodaj signoj en la disko). nomo - "1:\kio\la\hex.txt" aŭ "ä:\tschibät.sch").
  • CVE-2019-1352 — kiam vi laboras en la Vindoza platformo, la uzo de alternativaj datumfluoj en NTFS, kreitaj aldonante la atributon ":stream-name:stream-type" al la dosiernomo, permesite anstataŭigu dosierojn en la dosierujo ".git/" dum klonado de malica deponejo. Ekzemple, la nomo ".git::$INDEX_ALLOCATION" en NTFS estis traktita kiel valida ligilo al la dosierujo ".git".
  • CVE-2019-1353 — kiam vi uzas Git en medio WSL (Vindoza Subsistemo por Linukso) kiam vi aliras la labordosierujon ne uzata protekto kontraŭ nommanipulado en NTFS (atakoj per FAT-nomtradukado estis eblaj, ekzemple, ".git" povus esti alirebla per la dosierujo "git~1").
  • CVE-2019-1354 -
    ŝanco skribas al la dosierujo ".git/" sur la Vindoza platformo dum klonado de malicaj deponejoj enhavantaj dosierojn kun malantaŭa oblikvo en la nomo (ekzemple "a\b"), kiu estas akceptebla en Unikso/Linukso, sed estas akceptita kiel parto de la vojo sur Vindozo.

  • CVE-2019-1387 — nesufiĉa kontrolo de submodulnomoj povus esti uzata por organizi celitajn atakojn, kiuj, se rekursie klonitaj, povus eble povus gvidi por ekzekuti la kodon de la atakanto. Git ne malhelpis la kreadon de submodula dosierujo ene de la dosierujo de alia submodulo, kiu en la plej multaj kazoj nur kondukus al konfuzo, sed ne eble malhelpis la enhavon de alia modulo esti anstataŭita dum la rekursiva klonadprocezo (ekzemple, la submodulaj dosierujoj). "hippo" kaj "hippo/hokoj" estas metitaj kiel " .git/modules/hippo/" kaj ".git/modules/hippo/hooks/", kaj la hook-dosierujo en hipopo povas esti aparte uzata por gastigi ekigitajn hokojn.

Vindozaj uzantoj estas konsilitaj tuj ĝisdatigi sian version de Git, kaj sindeteni de klonado de nekontrolitaj deponejoj ĝis la ĝisdatigo. Se ankoraŭ ne eblas urĝe ĝisdatigi la Git-version, tiam por redukti la riskon de atako, oni rekomendas ne ruli "git clone —recurse-submodules" kaj "git submodule update" kun nekontrolitaj deponejoj, ne uzi "git". fast-import" kun nekontrolitaj enigfluoj, kaj ne kloni deponejojn al NTFS-bazitaj sekcioj.

Por plia sekureco, novaj eldonoj ankaŭ malpermesas la uzon de konstrukcioj de la formo "submodule.{name}.update=!command" en .gitmodules. Por distribuoj, vi povas spuri la liberigon de pakaj ĝisdatigoj sur la paĝoj Debian,ubuntu, RELO, SUSE/malfermuSUSE, Fedora, Arko, ALT, FreeBSD.

fonto: opennet.ru

Aldoni komenton