Git-opdatering med 8 sårbarheder rettet

Udgivet korrigerende udgivelser af det distribuerede kildekontrolsystem 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 og 2.14.62.24.1 XNUMX, som fikserede sårbarheder, der gjorde det muligt for en angriber at omskrive vilkårlige stier i filsystemet, organisere fjernudførelse af kode eller overskrive filer i ".git/"-mappen. De fleste problemer identificeret af medarbejderne
Microsoft Security Response Center, fem af de otte sårbarheder er specifikke for Windows-platformen.

  • CVE-2019-1348 - streaming kommando "feature export-marks=path"Det gør det muligt skriv etiketter til vilkårlige mapper, som kan bruges til at overskrive vilkårlige stier i filsystemet, når du udfører en "git fast-import"-operation med umarkerede inputdata.
  • CVE-2019-1350 - forkert escape af kommandolinjeargumenter kunne føre til fjernudførelse af angriberkode under rekursiv kloning ved hjælp af ssh:// URL. Især blev escape-argumenter, der ender med en omvendt skråstreg (f.eks. "test \"), håndteret forkert. I dette tilfælde, når du indrammede et argument med dobbelte anførselstegn, blev det sidste citat escaped, hvilket gjorde det muligt at organisere erstatningen af ​​dine muligheder på kommandolinjen.
  • CVE-2019-1349 — ved rekursiv kloning af undermoduler ("clone —recurse-submodules") i Windows-miljøet under visse betingelser det kunne være udløser brugen af ​​den samme git-mappe to gange (.git, git~1, git~2 og git~N genkendes som én mappe i NTFS, men denne situation blev kun testet for git~1), som kunne bruges til at organisere skriver til mappen ". git". For at organisere udførelsen af ​​sin kode kan en angriber f.eks. erstatte sit script gennem post-checkout-handleren i .git/config-filen.
  • CVE-2019-1351 — handleren for bogstavsdrevnavne i Windows-stier ved oversættelse af stier som "C:\" var kun designet til at erstatte latinske identifikatorer med et bogstav, men tog ikke højde for muligheden for at oprette virtuelle drev tildelt via "subst letter:path" . Sådanne stier blev ikke behandlet som absolutte, men som relative stier, hvilket gjorde det muligt, ved kloning af et ondsindet depot, at organisere en post i en vilkårlig mappe uden for arbejdskatalogtræet (for eksempel ved brug af tal eller unicode-tegn på disken navn - "1:\what\the\ hex.txt" eller "ä:\tschibät.sch").
  • CVE-2019-1352 — når du arbejder på Windows-platformen, brugen af ​​alternative datastrømme i NTFS, oprettet ved at tilføje attributten ":stream-name:stream-type" til filnavnet, tilladt overskriv filer i mappen ".git/" ved kloning af et ondsindet lager. For eksempel blev navnet ".git::$INDEX_ALLOCATION" i NTFS behandlet som et gyldigt link til ".git"-mappen.
  • CVE-2019-1353 — når du bruger Git i et WSL (Windows Subsystem for Linux) miljø, når du får adgang til arbejdsmappen anvendes ikke beskyttelse mod navnemanipulation i NTFS (angreb gennem FAT-navneoversættelse var mulige, for eksempel kunne ".git" tilgås gennem "git~1"-mappen).
  • CVE-2019-1354
    lejlighed skriver til mappen ".git/" på Windows-platformen ved kloning af ondsindede depoter, der indeholder filer med en omvendt skråstreg i navnet (f.eks. "a\b"), hvilket er acceptabelt på Unix/Linux, men accepteres som en del af stien på Windows.

  • CVE-2019-1387 — utilstrækkelig kontrol af undermodulnavne kan bruges til at organisere målrettede angreb, som, hvis de klones rekursivt, potentielt kan kunne føre for at udføre angriberens kode. Git forhindrede ikke oprettelsen af ​​et undermodulbibliotek i et andet undermoduls bibliotek, hvilket i de fleste tilfælde kun ville føre til forvirring, men forhindrede potentielt ikke, at indholdet af et andet modul blev overskrevet under den rekursive kloningsproces (f.eks. undermodulbibliotekerne "hippo" og "hippo/hooks" er placeret som ".git/modules/hippo/" og ".git/modules/hippo/hooks/", og hooks-mappen i hippo kan bruges separat til at være vært for triggede hooks.

Windows-brugere rådes til straks at opdatere deres version af Git og afstå fra at klone ubekræftede lagre indtil opdateringen. Hvis det endnu ikke er muligt hurtigt at opdatere Git-versionen, så for at reducere risikoen for angreb, anbefales det ikke at køre "git clone —recurse-submodules" og "git submodule update" med umarkerede repositories, ikke at bruge "git fast-import" med ukontrollerede inputstrømme og ikke til at klone lagre til NTFS-baserede partitioner.

For at øge sikkerheden forbyder nye udgivelser også brugen af ​​konstruktioner af formen "submodule.{name}.update=!command" i .gitmodules. For distributioner kan du spore udgivelsen af ​​pakkeopdateringer på siderne Debian,Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, ALT, FreeBSD.

Kilde: opennet.ru

Tilføj en kommentar