Åbner i en ny fane
CVE-2026-78676
Kritisk

CVE-2026-78676: Kritisk fejl i GitPython giver kodeudførelse

GitPython før 3.1.59 kan snydes til at indsætte skadelige git-direktiver via config-filer. Opdatér til 3.1.59 eller nyere.

CVSS Score
9.8
Offentliggjort
25/08/2026
Patch-status
Opdatering findes
Exploit
Teoretisk, ingen kendt udnyttelse
Tidsfrist
Opdatér inden for få dage

Hvad er det?

CVE-2026-78676 er en sårbarhed i GitPython, et Python-bibliotek som mange udviklingsværktøjer og CI/CD-pipelines bruger til at læse og skrive i git-repositorier programmatisk. Fejlen ligger i den måde, GitPython gemmer flerlinjede værdier i en git-konfigurationsfil (den fil, der styrer indstillinger for et git-repository). Når GitPython skriver konfigurationen om, kan en værdi med skjulte linjeskift blive omdannet fra en uskadelig, citeret tekststreng til et aktivt direktiv, for eksempel core.hooksPath, som fortæller git, hvor den skal finde script der køres automatisk. Det gør det muligt for en angriber at få eget kode kørt, næste gang en almindelig git-handling udløser hook’en.

Hvem rammer det?

Det rammer virksomheder, der bruger GitPython i egne værktøjer, automatiseringsscript, CI/CD-pipelines (automatiske build- og udrulningsflows) eller interne systemer, som klontr eller behandler git-repositorier fra kilder, I ikke selv kontrollerer fuldt ud. Det gælder alle versioner af GitPython før 3.1.59. Særligt udsatte er systemer, der henter kode fra eksterne bidragydere, kunderepositorier eller open source-projekter og derefter foretager en hvilken som helst konfigurationsændring via GitPython.

Hvad kan ske?

En angriber kan lægge en forberedt konfigurationsfil i et repository, som ser harmløs ud. Så snart jeres system bruger GitPython til at foretage en helt almindelig, urelateret ændring i konfigurationen, kan den skjulte værdi blive aktiveret som et git-hook-direktiv. Næste gang der udføres en git-handling som commit eller checkout, kører angriberens kode med de rettigheder, som jeres byggeserver eller automatiseringsjob har. I praksis kan det give fuld adgang til byggeserveren, kildekode, adgangskoder gemt i pipelinen og adgang videre ind i jeres netværk.

Hvor alvorligt er det?

CVSS-scoren er 9,8 ud af 10, hvilket er kritisk. Sårbarheden kan udnyttes over netværket, kræver ingen login eller rettigheder og ingen handling fra en bruger ud over, at systemet selv foretager en normal konfigurationsskrivning. Konsekvensen rammer fortrolighed, integritet og tilgængelighed fuldt ud, da angriberen kan opnå vilkårlig kodeudførelse. Der er ikke oplyst aktiv udnyttelse i det åbne på offentliggørelsestidspunktet, men fejlen er let at forstå og kræver ingen specialviden at udnytte, når man kender mekanismen.

Hvad gør jeg nu?

Følg punkterne i rækkefølge for at lukke hullet og begrænse skaden.

  1. Opdatér GitPython til version 3.1.59 eller nyere i alle projekter, byggeservere og containerimages, der bruger biblioteket.
  2. Gennemgå jeres kodebase og CI/CD-pipelines for at finde alle steder, hvor GitPython indgår, direkte eller som transitiv afhængighed via andre biblioteker.
  3. Tjek eksisterende git-konfigurationsfiler i repositorier for uventede eller mistænkelige core.hooksPath-værdier eller andre direktiver, I ikke selv har sat.
  4. Begræns, hvilke rettigheder byggeservere og automatiseringsjob har, så en eventuel kodeudførelse ikke automatisk giver adgang til hele netværket.
  5. Undgå indtil videre at lade automatiserede systemer klone eller behandle repositorier fra ukendte eller ubetroede kilder uden manuel gennemgang.
  6. Hvis I ikke selv kan afgøre, om jeres systemer er berørt, eller I finder tegn på kompromittering, bør I hente ekstern sikkerhedshjælp til at gennemgå byggemiljøet.
Tidsfrist

Opdatér inden for få dage

Sådan ser Auroa det

Vi anbefaler, at I opdaterer GitPython til 3.1.59 eller nyere hurtigst muligt, især hvis biblioteket indgår i CI/CD-pipelines eller andre automatiserede flows. Det er kun forsvarligt at vente, hvis I med sikkerhed kan dokumentere, at GitPython ikke indgår nogen steder i jeres systemer. I mellemtiden bør I ikke lade automatiserede systemer behandle repositorier fra kilder, I ikke stoler fuldt ud på.

Tidslinje

25/08/2026
Sårbarheden offentliggjort
CVE-2026-78676 registreres med CVSS-score 9,8 og rettes i GitPython 3.1.59.

Konkrete eksempler

CI-pipeline hos et dansk softwarehus

Et dansk softwarehus lader sin CI-pipeline automatisk klone pull requests fra eksterne bidragydere for at køre tests. En bidragyder lægger en forberedt konfigurationsfil i sit forslag. Da pipelinen bruger GitPython til at opdatere en urelateret indstilling, aktiveres et skjult hook-direktiv, og angriberens kode kører med byggeserverens rettigheder, hvilket giver adgang til virksomhedens interne netværk og kildekode.

Ofte stillede spørgsmål

CVSS-detaljer

Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

CWE-svaghedstyper

CWE-88

Original NVD-beskrivelse (engelsk)

GitPython before 3.1.59 fails to safely re-serialize multi-line git-config values during write operations, corrupting dormant quoted values into injected directives like core.hooksPath. Attackers can craft config files with embedded newlines that become live git directives after any unrelated GitPython config write, enabling arbitrary code execution via hook invocation.

Referencer & kilder

Eksterne kilder

Sværhedsgrad
Kritisk
CVSS Base Score
9,8
Hurtige fakta
CVE-ID
CVE-2026-78676
Offentliggjort
25/08/2026
Sidst opdateret
25/08/2026
Exploit-status
Teoretisk, ingen kendt udnyttelse
Patch-status
Opdatering findes

Brug for hjælp med jeres sikkerhed?

Vi hjælper SMV’er med at omsætte trusler som denne til konkrete handlingsplaner.