CVE-2026-78676
Kritisk

CVE-2026-78676: Kritisk GitPython-sårbarhed

Kritisk fejl i GitPython giver angribere mulighed for at køre vilkårlig kode via manipulerede git-konfigurationsfiler.

CVSS Score
9.8
Offentliggjort
25/08/2026
Patch-status
available
Exploit
poc_public
Tidsfrist
Opdatér inden for 48 timer

Hvad er det?

GitPython er et populært Python-bibliotek, som mange udviklingsværktøjer og automatiseringsplatforme bruger til at arbejde med git-repositories (versionsstyringssystemer). En kritisk fejl i versioner før 3.1.59 betyder, at biblioteket ikke håndterer flerlinjet indhold i git-konfigurationsfiler korrekt, når det skriver til dem. En angriber kan forberede en konfigurationsfil med skjulte kommandoer, der er gemt i et tilsyneladende ufarligt felt. Næste gang GitPython skriver noget andet til filen — hvad som helst — aktiveres de skjulte kommandoer automatisk og udføres som rigtige instruktioner til git. Det kan ske helt uden at nogen lægger mærke til det.

Hvem rammer det?

Sårbarheden rammer virksomheder og teams, der:

  • Bruger udviklingsværktøjer, CI/CD-pipelines (automatiserede byg- og leveringssystemer) eller scripts, der er bygget oven på GitPython
  • Kører platforme til kodereview, deployment eller projektautomatisering, der internt benytter git-integration via Python
  • Tillader brugere eller eksterne parter at bidrage med filer til et git-repository, som behandles af GitPython

Selv hvis I ikke selv programmerer i Python, kan et eksternt SaaS-værktøj eller en intern platform i jeres tekniske infrastruktur være berørt.

Hvad kan ske?

Hvis en angriber udnytter fejlen, kan vedkommende få GitPython til at udføre vilkårlig kode på den server eller computer, der kører biblioteket. I praksis betyder det:

  • Fuldstændig systemkontrol: Angriberen kan køre egne programmer med de samme rettigheder som jeres udviklingsplatform
  • Datatyveri: Adgang til kildekode, hemmeligheder, API-nøgler og andre følsomme data i jeres repositories
  • Forsyningskædeangreb: Angriberen kan manipulere jeres kode, inden den deployes til produktion, og dermed ramme jeres kunder
  • Ransomware eller sabotage: Servere kan krypteres eller data slettes

Hvor alvorligt er det?

Fejlen er vurderet til CVSS-score 9,8 ud af 10 — det er den næsthøjeste mulige score og klassificeres som kritisk. Den er særligt farlig, fordi:

  • Angrebet kan udføres over nettet uden login (ingen konto eller særlige rettigheder kræves)
  • Det kræver ingen handling fra brugeren — det sker automatisk i baggrunden
  • Kompleksiteten er lav, hvilket betyder at angrebet ikke kræver avancerede evner hos angriberen
  • Konsekvenserne rammer fortrolighed, integritet og tilgængelighed på én gang

CWE-88 betegner en fejlkategori kaldet ‘argument injection’ — altså at uønskede kommandoer smugles ind og udføres som legitime instruktioner.

Hvad gør jeg nu?

Hvis I bruger GitPython direkte eller har systemer, der gør det, skal I handle hurtigt. Her er hvad du konkret gør:

  1. Find ud af om I er berørt: Spørg jeres udviklere eller IT-leverandør om jeres systemer bruger Python-biblioteket GitPython, og hvilken version der er installeret. Kør kommandoen pip show gitpython for at se versionen.
  2. Opdatér til GitPython 3.1.59 eller nyere: Det gøres med kommandoen pip install --upgrade gitpython. Denne version indeholder den rettelse, der lukker sårbarheden.
  3. Gennemgå jeres git-konfigurationsfiler: Bed jeres udviklere om at kontrollere eksisterende .git/config-filer for ukendte eller mistænkelige linjer, særligt felter som core.hooksPath.
  4. Begræns hvem der kan bidrage filer til jeres repositories: Sørg for, at kun betroede parter kan uploade eller ændre filer i jeres git-repositories, mens opdateringen rulles ud.
  5. Kontakt jeres IT-partner eller softwareleverandør: Hvis I bruger tredjeparts platforme, der integrerer med git, så spørg leverandøren om de er opdateret.
Tidsfrist

Opdatér inden for 48 timer

Sådan ser Auroa det

Auroa anbefaler, at I behandler denne sårbarhed som kritisk og opdaterer GitPython til version 3.1.59 eller nyere inden for 48 timer. Fejlens lave kompleksitet og det faktum, at den ikke kræver login, gør den særligt attraktiv for angribere. Hvis I ikke selv har tekniske ressourcer til at håndtere opdateringen, så kontakt jeres IT-partner med det samme og vis dem dette dokument. Overvej desuden at gennemgå logfiler fra jeres udviklingsplatforme for usædvanlig aktivitet de seneste uger.

Tidslinje

25/08/2026
CVE-2026-78676 offentliggjort
National Vulnerability Database (NVD) offentliggør sårbarheden med en CVSS-score på 9,8 (kritisk). GitPython-projektet udgiver samtidig version 3.1.59 med en rettelse.
25/08/2026
Patch tilgængeligt
GitPython 3.1.59 udgives og er tilgængeligt via pip. Opdateringen lukker den fejlagtige serialisering af flerlinjet indhold i git-konfigurationsfiler.
26/08/2026
Proof-of-concept forventet offentliggjort
Baseret på sårbarhedens lave kompleksitet og høje synlighed forventes offentlige eksempler på udnyttelse at dukke op inden for 24-72 timer efter offentliggørelse, hvilket er normalt for kritiske CVE'er af denne type.
27/08/2026
Aktiv udnyttelse mulig
Med lav angrebskompleksitet og ingen krav om autentifikation forventes sårbarheden at blive aktivt forsøgt udnyttet af trusselsaktører inden for få dage efter offentliggørelse.

Konkrete eksempler

Ondsindet pull request i åbent projekt

En angriber sender et pull request (et forslag til kodeændring) til jeres repository, der indeholder en tilsyneladende harmløs tekstfil med skjulte linjeskift i git-konfigurationsdata. Når en udvikler på jeres team accepterer ændringen og GitPython efterfølgende skriver en anden konfigurationsændring — for eksempel opdatering af en remote-adresse — aktiveres de skjulte instruktioner. Git begynder nu at køre angriberens scripts automatisk ved hvert commit eller push, uden at nogen opdager det.

Kompromitteret CI/CD-pipeline

En angriber med adgang til ét repository i jeres CI/CD-system (bygge- og leveringsautomatisering) placerer en manipuleret .git/config-fil. Næste gang jeres automatiserede byggesystem kører og bruger GitPython til at håndtere konfigurationen, aktiveres de injekterede direktiver. Angriberen får dermed kørsel af vilkårlig kode på byggeserveren og kan stjæle API-nøgler, hemmeligheder eller manipulere den kode der sendes ud til jeres kunder.

Forsyningskædeangreb via tredjeparts afhængighed

Et tredjepartsbibliotek I bruger i jeres Python-projekt har selv en afhængighed af en sårbar version af GitPython. En angriber udnytter dette indirekte ved at levere en manipuleret konfigurationsfil via en delt pakke eller et delt repository. Uden at I eller bibliotekets vedligeholder er klar over det, udføres angriberens kode på alle de systemer, der bruger biblioteket — inklusiv jeres.

Ofte stillede spørgsmål

Ramte produkter

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

Officielle advisories

Patches

Eksterne kilder

Sværhedsgrad
Kritisk
CVSS Base Score
9.8
Visning
Hurtige fakta
CVE-ID
CVE-2026-78676
Offentliggjort
25/08/2026
Sidst opdateret
25/08/2026
Exploit-status
poc_public
Patch-status
available
Tidsfrist
Opdatér inden for 48 timer

Brug for hjælp med jeres sikkerhed?

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