breadcrumbDescription
Sikkerhed: Kræv bekræftelsesnøgle for kodeudveksling (PKCE)
Denne sikkerhedsindstilling kræver et kryptografisk håndtryk på tværs af alle kompatible OAuth 2.
Kontrolnavn
Eksterne klientapps: Sikkerhed: Kræv bekræftelsesnøgle for kodeudveksling (PKCE)
Anbefalet konfiguration
Kræv udvidelsen PKCE (Proof Key for Code Exchange) for understøttede autorisationsforløb.
Kontroller oversigt
Denne sikkerhedsindstilling kræver et kryptografisk håndtryk på tværs af alle kompatible OAuth 2.0-tildelingstyper, hvor klienten sender en hashmærket kodeudfordring under den indledende anmodning og en almindelig tekstkodeverifikator under tokenudvekslingen for at binde anmodningen til den specifikke klientforekomst.
Sikkerhedsrisiko, hvis den ikke er konfigureret
Uden at PKCE håndhæves på tværs af alle understøttede forløb, kan en opfanget autorisationskode eller en mellemliggende legitimationsoplysning udveksles med et adgangstoken af en ondsindet aktør, da autorisationsserveren mangler en teknisk mekanisme til at bekræfte identiteten af den oprindelige opkalder.
Trusselscenarier
En angriber registrerer en gyldig autorisationskode eller opfangelige legitimationsoplysninger fra et vellykket login – via browsers historik, systemlogfiler eller tilpasset URI-skemaoptagelse – og får programmeringsmæssigt et gyldigt sessionstoken, før den legitime klient kan fuldføre håndtrykket.
Estimeret CVSS-scoringsinterval
Høj (7,0-8,9).
Overvejelser i forbindelse med risikopåvirkning
Hvis PKCE ikke håndhæves på tværs af alle gældende forløb, er der mulighed for omfattende sessionsovertagelse og uautoriseret dataadgang, især målrettet mod integrationer, hvor en statisk klienthemmelighed enten ikke bruges eller er blevet kompromitteret.
Højere risiko når
Risikoen er højere for offentlige klienter, f.eks. oprindelige mobilapplikationer og enkeltsidede webapplikationer (SPA'er), da disse platforme ikke kan lagre en klienthemmelighed sikkert og ofte fungerer i miljøer, hvor trafikomdirigering kan observeres.
Lav risiko når
Scenariet er lavere risiko, hvis organisationen udelukkende bruger fortrolige klienter på sikre back-end-servere, der allerede håndhæver en obligatorisk klienthemmelighed og fungerer inden for en strengt isoleret netværksperimeter.
Overvejelser i forbindelse med forretning og integration
Aktivering af dette krav på tværs af alle understøttede forløb kræver, at alle integrerede klientapplikationer understøtter S256-transformationsmetoden og administrerer entydige strenge med høj entropi for hver transaktion.
Anbefalet rettelse
Gå til OAuth-indstillinger for den eksterne klientapp, og marker afkrydsningsfeltet Kræv bevisnøgle for kodeudveksling (PKCE) for alle understøttede autorisationsforløb.
Vejledning til sikkerhedstilstandsgennemgang
Sikkerhedstilstandscheck identificerer PKCE som en obligatorisk arkitektonisk standard for alle moderne identitets- og autorisationsforløb, så hver tokenudveksling er kryptografisk bundet til den specifikke klientforekomst for at forhindre indsættelse og aflytning af legitimationsoplysninger.

