AWS Security Academy · Lektion

External ID og den forvirrede stedfortræder

Forhindr tredjeparter i at blive narret til at misbruge adgang.

Lektion 3 af 413 trin

External ID og den forvirrede stedfortræder er en gratis AWS Security Academy-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i AWS Security Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. AWS Security Academy-kurset indeholder 4 lektioner i alt.

Et subtilt tillidsproblem

Når du lader en tredjepart antage en rolle på din konto, kan der opstå en sikkerhedsrisiko kaldet problemet med den forvirrede stedfortræder. Det eksterne ID er den enkle, men afgørende kontrol, der forhindrer dette. Mønstret optræder på eksamen, når en SaaS-leverandør skal have adgang til din AWS-konto.

Hvad er en forvirret stedfortræder?

En forvirret stedfortræder er en betroet enhed (stedfortræderen), der narres til at bruge sin myndighed på vegne af en angriber. I AWS har en tredjepartstjeneste tilladelse til at antage roller på mange kundekonti. En angriber kan narre tjenesten til at antage din rolle, hvis intet knytter anmodningen til den legitime kunderelation.

Leverandørscenariet

Forestil dig en overvågningsbaseret SaaS-tjeneste, der antager en rolle på hver kundekonto. SaaS-tjenesten bruger den samme AWS-identitet for alle. Hvis en angriber, der også er kunde, gætter din rolle-ARN, kan vedkommende måske overtale SaaS-tjenesten til at antage din rolle, fordi SaaS-tjenesten er den betroede principal. Konto-ID'et alene er ikke nok til at forhindre dette.

Indfør det eksterne ID

Det eksterne ID er en unik, hemmelig værdi, som leverandøren tildeler jeres relation. Du indsætter det som en betingelse i rollens tillidspolitik, og leverandøren skal angive nøjagtig den samme værdi ved kaldet til AssumeRole. Da angriberen ikke kender dit eksterne ID, kan vedkommende ikke narre leverandøren til at antage din rolle.

Tillidspolitik med eksternt ID

Denne tillidspolitik kræver det tilsvarende eksterne ID. AssumeRole lykkes kun, når leverandøren sender den identiske værdi, hvilket besejrer angrebet med den forvirrede stedfortræder.

"Condition": {
  "StringEquals": {
    "sts:ExternalId": "unique-customer-12345"
  }
}

Hvem angiver det eksterne ID?

Det afgørende er, at leverandøren genererer og kontrollerer det eksterne ID – ikke kunden. Det forhindrer kunder i at samarbejde om at genbruge den samme værdi. AWS' vejledning er tydelig: Som tredjepart skal du tildele hver kunde et unikt eksternt ID og kræve det ved hver antagelse.

Det er ikke en hemmelig adgangskode

Det eksterne ID er ikke beregnet til at være hemmeligt som en adgangskode; det kan fremgå af opsætningsvejledninger. Dets sikkerhedsværdi kommer af, at det er unikt for hver kunde og kontrolleres af leverandøren, så en angriber ikke kan få stedfortræderen til at bruge den forkerte kundes værdi. Betragt det som et token mod identitetsefterligning, ikke som en legitimationsoplysning.

Kombination med mindst mulige tilladelser

Det eksterne ID styrer hvem der kan antage rollen, men du skal stadig afgrænse hvad rollen kan gøre med stramme tilladelsespolitikker. Selv en korrekt godkendt leverandør bør kun få de minimale nødvendige tilladelser. Kombiner eksternt ID, en specifik principal og mindst mulige tilladelser for sikker adgang for tredjeparter.

Ud over leverandører

Mønstret med den forvirrede stedfortræder gælder også AWS-tjenester, der handler på dine vegne. Tillid mellem tjenester bruger ofte betingelsesnøgler som aws:SourceArn og aws:SourceAccount i ressourcepolitikker for at sikre, at den kaldende tjeneste handler for din ressource – den samme defensive idé i en anden indpakning.

Find signalet i eksamensspørgsmålet

Når et spørgsmål beskriver en tredjepart eller SaaS-tjeneste, der antager en rolle på tværs af konti, omfatter det sikre svar næsten altid et eksternt ID i tillidspolitikken. Hvis scenariet handler om kommunikation mellem tjenester, skal du i stedet se efter betingelser med aws:SourceArn/aws:SourceAccount. Når du genkender signalet, finder du direkte frem til den rigtige kontrol.

Sæt det hele sammen

Problemet med den forvirrede stedfortræder gør det muligt for en angriber at narre en betroet tredjepart til at misbruge sin adgang. Det eksterne ID, som er unikt for hver kunde og kontrolleres af leverandøren, forhindrer dette ved at kræve en tilsvarende værdi ved AssumeRole. For AWS-tjenester skal du bruge aws:SourceArn og aws:SourceAccount. Kombiner altid disse med mindst mulige tilladelser.

Hurtigt tjek

Test din forståelse af begrebet forvirret stedfortræder.

Opsummering

Problemet med den forvirrede stedfortræder opstår, når en betroet tredjepart narres til at misbruge sin adgang på tværs af konti. Det eksterne ID, som er unikt for hver kunde og kontrolleres af leverandøren, forhindrer dette via en betingelse i tillidspolitikken for sts:ExternalId. Til tillid mellem AWS-tjenester skal du bruge aws:SourceArn og aws:SourceAccount, altid sammen med mindst mulige tilladelser.

Gratis at komme i gang

Lær AWS Security Academy med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
30
Lektioner
120

Ofte stillede spørgsmål

Er lektionen “External ID og den forvirrede stedfortræder” gratis?

Ja — hele teksten til “External ID og den forvirrede stedfortræder” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af AWS Security Academy-kurset, skal du opgradere til CoddyKit PRO. AWS Security Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “External ID og den forvirrede stedfortræder”?

Forhindr tredjeparter i at blive narret til at misbruge adgang. Du øver dig i AWS Security Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på AWS Security Academy?

Der kræves ingen tidligere erfaring. AWS Security Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.

Hvor lang tid tager lektionen “External ID og den forvirrede stedfortræder”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne AWS Security Academy-lektion?

Ja. Alle AWS Security Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Sådan udsteder STS midlertidige legitimationsoplysninger
  2. AssumeRole og sessionens levetid
  3. External ID og den forvirrede stedfortræder
  4. Sessionspolitikker og tagbaseret afgrænsning
← Tilbage til AWS Security Academy