CVE-2026-84200: Kritisk fejl i Kyverno policy-undtagelser
Fejl i Kyverno (CVE-2026-84200) lader en angriber med begrænset klyngeadgang omgå sikkerhedspolitikker. Opdatér til v1.13.0.
Hvad er det?
CVE-2026-84200 er en fejl i Kyverno, et værktøj der håndhæver sikkerhedspolitikker i Kubernetes-klynger (samlinger af servere, der kører containere). Kyverno kan sættes til at blokere farlige konfigurationer, for eksempel at containere får adgang til værtsmaskinens filsystem via såkaldte hostPath-volumener. Administratorer kan lave undtagelser fra en politik, kaldet PolicyExceptions, til specifikke ressourcer. Fejlen betyder, at hvis der findes to undtagelser til samme politik, vinder den mindst restriktive. En angriber kan derfor navngive en ressource, så den matcher et mønster i den mindst strenge undtagelse, for eksempel et navn der indeholder ‘ingress’, og på den måde omgå en politik, der ellers skulle blokere den.
Hvem rammer det?
Det rammer organisationer, der kører Kubernetes-klynger med Kyverno version v1.9.0 til og med v1.12.7 installeret som politikmotor, og som bruger PolicyExceptions til at undtage udvalgte ressourcer fra politikker i enforce-tilstand (håndhævende tilstand). Det gælder både virksomheder med egen drift af Kubernetes og kommuner, der hoster fagsystemer i container-platforme.
Hvad kan ske?
En bruger eller tjeneste med begrænset adgang til klyngen, for eksempel en udvikler med adgang til et navnerum eller en kompromitteret CI/CD-pipeline, kan oprette en ressource med et navn, der udnytter fejlen. Dermed kan vedkommende omgå en politik, der skulle blokere hostPath-volumener, og få en container til at læse eller skrive direkte på værtsmaskinens filsystem. I praksis kan det føre til, at angriberen bryder ud af containeren og får adgang til hele værtsserveren og andre containere på samme node.
Hvor alvorligt er det?
CVSS-score er 9,0 ud af 10, kritisk. Angrebet kræver adgang til samme netværkssegment som klyngen (adjacent network), altså ikke direkte fra internettet, og angriberen skal have lave rettigheder i klyngen i forvejen, for eksempel adgang til at oprette ressourcer i et navnerum. Der kræves ingen handling fra en bruger, og angrebet kan udføres uden interaktion. Konsekvensen rammer fortrolighed, integritet og tilgængelighed fuldt ud, fordi angrebet kan sprede sig ud over den ressource, der oprindeligt blev udnyttet. Der er ikke oplysninger om, at fejlen aktivt udnyttes i angreb.
Hvad gør jeg nu?
Sådan lukker I hullet og begrænser risikoen, mens I opdaterer:
- Opdatér Kyverno til version v1.13.0 eller nyere. Det lukker fejlen.
- Gennemgå jeres PolicyExceptions og fjern eller stram dem, der er bredt formuleret, indtil opdateringen er gennemført.
- Kontrollér, om der findes ressourcer i klyngen med navne, der matcher mønstre i eksisterende undtagelser, som ikke burde være undtaget.
- Begræns, hvem der kan oprette ressourcer i navnerum, hvor følsomme politikker gælder, for eksempel politikker mod hostPath-volumener.
- Gennemgå logs for admission-controlleren for uventede godkendelser af ressourcer, der normalt ville være blokeret.
- Har I ikke selv kapacitet til at vurdere jeres Kyverno-opsætning og PolicyExceptions, bør I hente hjælp udefra til gennemgangen.
Opdatér inden for 14 dage
Vi anbefaler, at I opdaterer Kyverno til v1.13.0 hurtigst muligt, og at I i mellemtiden gennemgår jeres PolicyExceptions for brede eller overlappende mønstre. Fordi angrebet kræver adgang til klyngens netværk og eksisterende rettigheder, er det ikke akut som en internetvendt sårbarhed, men bør prioriteres i den kommende opdateringsrunde. Det er kun i orden at vente, hvis jeres klynge er isoleret fra alle uden driftsansvar, og I har verificeret, at ingen eksterne parter kan oprette ressourcer i klyngen.
Tidslinje
Konkrete eksempler
Udvikler omgår hostPath-blokering
En dansk it-virksomhed kører en Kubernetes-klynge med Kyverno, der blokerer hostPath-volumener for at forhindre containere i at tilgå værtsserverens filsystem. En udvikler med adgang til at oprette ressourcer i et testnavnerum opdager, at der findes en bred PolicyException med mønsteret ‘*ingress*’. Ved at navngive sin ressource, så den matcher mønsteret, omgår udvikleren utilsigtet eller bevidst blokeringen og får adgang til værtsserverens filsystem, hvilket giver mulighed for at læse følsomme data fra andre containere på samme node.
Ofte stillede spørgsmål
Er vi ramt af CVE-2026-84200?
I er ramt, hvis I kører Kyverno version v1.9.0 til v1.12.7 i en Kubernetes-klynge og bruger PolicyExceptions til at undtage ressourcer fra politikker. Tjek versionen med kommandoen for jeres Kyverno-installation eller i jeres helm-values.
Hvordan tjekker vi, om vi bruger PolicyExceptions?
Kør en oversigt over jeres Kubernetes-ressourcer af typen PolicyException i alle navnerum. Findes der to eller flere undtagelser til samme politik, bør de gennemgås for overlappende navnemønstre.
Kan vi vente med at opdatere til den næste planlagte vedligeholdelse?
Det afhænger af, hvor åben jeres klynge er internt. Har flere teams eller eksterne leverandører adgang til at oprette ressourcer i klyngen, bør I ikke vente. Er klyngen strengt isoleret og kun tilgængelig for driftsteamet, kan I lægge opdateringen ind i næste planlagte vindue, dog senest inden for 14 dage.
Skal vi anmelde hændelsen til nogen?
Der er kun anmeldelsespligt, hvis fejlen faktisk er blevet udnyttet og har medført et sikkerhedsbrud med tab af data eller kontrol over systemer. Er der ikke tegn på udnyttelse, er dette en almindelig opdatering, der ikke kræver anmeldelse.
Påvirker opdateringen vores eksisterende politikker?
Opdateringen retter selve håndteringen af undtagelser, men ændrer ikke jeres politikker i sig selv. Vi anbefaler alligevel at teste opdateringen i et testmiljø først, da rettelser i håndhævelseslogik kan påvirke, hvilke ressourcer der bliver blokeret eller tilladt.
Hvad hvis vi ikke selv driver Kubernetes, men bruger en leverandør?
Kontakt jeres leverandør eller driftsleverandør og spørg, om de bruger Kyverno, og i givet fald hvilken version. Bed dem bekræfte, at opdateringen til v1.13.0 er planlagt eller gennemført.
CVSS-detaljer
CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
CWE-svaghedstyper
Original NVD-beskrivelse (engelsk)
Kyverno versions v1.9.0 through v1.12.7 contain a policy exception handling flaw. When a policy in enforce mode is combined with two PolicyExceptions, the less restrictive exception takes precedence, allowing an attacker to bypass the policy by crafting a resource name that matches the second exception’s name pattern (e.g., ‘*ingress*’). This can be used to circumvent policies such as one blocking hostPath volumes. Fixed in v1.13.0.
Referencer & kilder
Eksterne kilder
Brug for hjælp med jeres sikkerhed?
Vi hjælper SMV’er med at omsætte trusler som denne til konkrete handlingsplaner.