Ga naar hoofdinhoud
← Terug naar blog

Twee IAM-producten, twee kritieke lekken: SAML-federatie onder druk

AI Security

De kern

Twee veelgebruikte identity-and-access-management-producten kregen binnen een week een kritiek advies. OpenAM laat vóór versie 16.1.4 ongeauthenticeerde aanvallers een gefingeerde SAML-assertion accepteren en zo een sessie overnemen als elke toegewezen gebruiker, inclusief beheerders. Keycloak laat een geauthenticeerde aanvaller met clientbeheer-rechten een kwaadaardig JavaScript-beleid uploaden dat server-side wordt uitgevoerd. Beide lekken treffen dezelfde zwakke plek: de federatie-laag die bepaalt wie toegang krijgt tot elke aangesloten applicatie.

OpenAM: gefingeerde assertions op de SAML-verificatie

CVE-2026-123550 (CVSS 9,8, gepubliceerd 8 november 2026) zit in de SAML v2.0-serviceprovider van OpenAM vóór versie 16.1.4. De serviceprovider accepteert ongetekende assertions op de ECP-binding (PAOS) en de HTTP-Artifact-binding wanneer WantAssertionsSigned op false staat.

De aanval is direct. Een ongeauthenticeerde remote aanvaller dient een gefingeerde assertion in en verkrijgt daarmee een sessie als elke toegewezen gebruiker, inclusief administrators. Omdat het om single sign-on gaat, werkt die sessie vervolgens door naar elke afhankelijke applicatie die op dezelfde IdP vertrouwt. De bypass vereist geen exotische voorwaarde: een configuratie-optie die in de praktijk vaak op false staat, opent de deur.

De kernles is dat de integriteit van de assertion de hele vertrouwensketen draagt. Wie een SAML-assertion accepteert zonder die cryptografisch te verifiëren, verifieert in feite niets: de inhoud van de assertion is dan een bewering van de aanvaller, geen bewijs van de IdP.

Keycloak: server-side JavaScript-injectie via clientbeheer

CVE-2026-120984 (CVSS 9,1, gepubliceerd 7 november 2026) zit in het clientbeheer van Keycloak. Wanneer een client wordt aangemaakt of geïmporteerd met autorisatieservices ingeschakeld, wist het systeem een intern sessie-attribuut uit het setup-proces niet goed. Een geauthenticeerde aanvaller met clientbeheer-rechten kan daardoor beveiligingscontroles omzeilen en een kwaadaardig JavaScript-beleid uploaden, dat op de server wordt uitgevoerd wanneer een autorisatieverzoek binnenkomt.

Het gevolg is remote code execution op de Keycloak-server, met mogelijke compromittering van het hele systeem. De CVSS-vector (PR:H, S:C) laat zien dat er weliswaar hoge privileges nodig zijn, maar dat de impact over de hele scope doorslaat. Het patroon is hetzelfde als bij OpenAM: een interne staat die niet goed wordt opgeruimd, wordt een privilege-escalatie naar uitvoering op de server.

Wat dit betekent voor federatieve identiteit

Deze twee adviezen zijn niet losse incidenten maar twee kanten van dezelfde architectuurles. Federatieve identiteit (SSO via SAML of OIDC) concentreert vertrouwen in één component: de identity provider. Dat is precies waarom één lek in die component niet één applicatie raakt, maar elke applicatie die erop vertrouwt.

Voor de Nederlandse publieke sector is dat geen abstractie. Federatieve toegang is de ruggengraat van overheids-SSO en sectorale identiteitsinfrastructuur; een compromittering van de IdP is daarmee een compromittering van de toegangspoort tot een hele keten van diensten. Twee verdedigingslijnen volgen direct uit deze adviezen:

  1. Assertion-integriteit als niet-onderhandelbare eis. Een SAML-serviceprovider die assertions accepteert zonder handtekeningverificatie, is een open deur. WantAssertionsSigned moet aan staan, en de uitzondering op ECP/HTTP-Artifact-bindingen moet expliciet en bewust zijn, niet een default.
  2. Clientbeheer als hoogbevoorrecht oppervlak. Keycloak laat zien dat "geauthenticeerde gebruiker met clientbeheer-rechten" al genoeg is voor server-side uitvoering. Clientbeheer is daarmee een privileged operatie die apart moet worden gemonitord, gelimiteerd en geauditeerd, niet een administratieve bijzaak.

Wie een IdP beheert, beheert de poort naar alles. Deze twee adviezen onderstrepen dat die poort twee zwakke plekken kent die met dezelfde discipline moeten worden gedicht: verifieer wat je vertrouwt, en behandel wat de server uitvoert als hoogbevoorrecht.

Wat de adviezen niet zeggen

De beperkingen van de bronnen zelf bepalen de reikwijdte. Beide adviezen beschrijven de technische voorwaarde, niet hoe breed die in productie voorkomt. Voor OpenAM is niet gerapporteerd hoe vaak WantAssertionsSigned in de praktijk op false staat; de kwetsbaarheid is er, maar de blootstelling is een afzonderlijke vraag. Voor Keycloak geldt hetzelfde: de bug vereist clientbeheer-rechten, en het advies kwantificeert niet hoeveel deployments zulke rechten aan onvoldoende vertrouwde actoren geven. Wie de ernst van deze adviezen wil wegen, moet naast de CVSS-score ook de eigen configuratie kennen.

Zie ook

Bronnen

AI & Security Intelligence

Wekelijkse nieuwsbrief met AI updates, security alerts en compliance inzichten, direct in uw inbox.

Security & AI Operating Model

Advisory met executiekracht

Van BIO2 en NIS2 tot EU AI Act, embedded in uw operating model, niet als extern project. Maandelijks opzegbaar, met assessments als bewijsvoering.