Skip to content

🛒 Øvelse 11 – Udarbejd system- og sikkerhedsmål til webapplikation

ℹ️ Information

I denne øvelse skal I udarbejde systemmål og sikkerhedsmål til en webapplikation.

Applikationen findes her: .NET reference webshop (eShopOnWeb).

Brug git til at klone repositoryet, og start applikationen ved at følge instruktionerne i readme-afsnittet Running the sample using Docker.

⚠️ OBS! Husk at være i repo-mappen, inden I kører docker compose-kommandoerne.


🎯 Fokus

  • Udarbejd systemmål repræsenteret som brugstilfælde.
  • Udled relevante sikkerhedsmål med udgangspunkt i systemmålene.
  • Hold et korrekt abstraktionsniveau:
    • Brugstilfælde beskriver systemets forretningsmæssige formål.
    • Misbrugstilfælde beskriver, hvordan disse formål eller tilhørende aktiver kan kompromitteres.
    • Undgå tekniske detaljer i både brugstilfælde og misbrugstilfælde.
    • Anvend CIA-modellen som hjælp til at identificere relevante sikkerhedsmål.

📌 Vigtig afklaring: Identificere vs. udarbejde brugstilfælde og misbrugstilfælde

  • Identificere betyder, at I finder og noterer relevante brugstilfælde eller misbrugstilfælde, typisk som korte titler eller overskrifter, og placerer dem på brugstilfældediagrammet.
    Se eksemplet i Introduktion til software sikkerhed – Del 3.

  • Udarbejde betyder, at I beskriver et brugstilfælde eller misbrugstilfælde mere udførligt.

For et brugstilfælde kan det eksempelvis være: - aktør - forudsætninger - forløb - forventet resultat

For et misbrugstilfælde kan det eksempelvis være: - trusselsaktør - tilknyttet brugstilfælde - forudsætninger - forløb - konsekvens

Se eksemplet i Introduktion til software sikkerhed – Del 3.

Ved at skelne mellem identificering og udarbejdelse undgår I at beskrive alle brugstilfælde og misbrugstilfælde detaljeret fra begyndelsen. Først skabes overblik, hvorefter relevante tilfælde kan udarbejdes mere udførligt.


⚠️ Husk abstraktionsniveauet!

Både brugstilfælde og misbrugstilfælde skal beskrives på et forretningsmæssigt abstraktionsniveau.

Undgå derfor tekniske detaljer om eksempelvis:

  • implementering
  • systemarkitektur
  • protokoller
  • databaser
  • konkrete sårbarheder
  • specifikke angrebsteknikker

På dette tidspunkt er formålet at forstå:

  • Hvad skal systemet kunne?
  • Hvad kan gå galt for systemets forretningsmæssige mål og aktiver?

Hvordan et misbrug teknisk kan realiseres, undersøges senere gennem trusselsmodellering.


⚠️ Vigtigt om abstraktionsniveau i misbrugstilfælde

Når I beskriver misbrugstilfælde, skal I fokusere på, hvordan systemmål eller tilhørende aktiver kan kompromitteres af en trusselsaktør.

I skal endnu ikke beskrive den konkrete tekniske metode, som trusselsaktøren anvender.

Korrekt abstraktionsniveau – forretnings-/systemniveau:

  • "En trusselsaktør kan ændre en anden kundes ordredata."
  • "En trusselsaktør kan få adgang til en anden kundes ordre- og kundeoplysninger."
  • "En trusselsaktør kan forhindre kunder i at afgive ordrer."

CIA-modellen kan bruges til at identificere, hvad der kompromitteres:

  • Confidentiality (fortrolighed) – uvedkommende får adgang til information.
  • Integrity (integritet) – information eller funktionalitet ændres på en uautoriseret måde.
  • Availability (tilgængelighed) – systemets funktionalitet eller information bliver utilgængelig.

Forkert abstraktionsniveau – teknisk trussel eller angrebsteknik:

  • "En trusselsaktør udfører SQL-injektion for at hente data."
  • "En trusselsaktør gennemfører et DDoS-angreb."
  • "En trusselsaktør manipulerer en JWT."
  • "En trusselsaktør udnytter en sårbar API."

Disse beskriver tekniske måder, hvorpå et misbrug kan realiseres. Det undersøger vi først senere i trusselsmodelleringen.


📝 Instruktioner

Øvelsen danner udgangspunkt for de efterfølgende øvelser med risikovurdering og trusselsmodellering.

  1. 🚀 Start applikationen og besøg hjemmesiden.

  2. 🗒️ Identificer mindst 3 brugstilfælde, og noter dem som titler på et brugstilfældediagram.
    Bemærk: Her handler det om at identificere brugstilfældene – ikke om at udarbejde udførlige beskrivelser endnu.

  3. 🕵️‍♂️ Brainstorm og identificer mindst 3 relevante misbrugstilfælde med udgangspunkt i brugstilfældediagrammet.
    Brug CIA-modellen som hjælp til at undersøge, hvordan systemmål og aktiver kan kompromitteres. Bemærk: Her handler det stadig primært om identificering.

  4. ✍️ Udarbejd minimum 1 brugstilfælde mere udførligt – gerne flere.

  5. 🔐 Udvælg minimum 1 relevant misbrugstilfælde, som er knyttet til et af de udarbejdede brugstilfælde, og udarbejd det mere udførligt.

Hvis I har tid, må I gerne udarbejde flere.


💭 Refleksionsspørgsmål

  1. Hvorfor er det vigtigt at beskrive systemmål og sikkerhedsmål på et forretningsmæssigt abstraktionsniveau frem for at starte med tekniske løsninger eller angrebsteknikker?

  2. Hvordan hjalp CIA-modellen jer med at identificere relevante misbrugstilfælde? Var nogle af CIA-kategorierne mere relevante end andre for jeres brugstilfælde?

  3. Hvordan kan et brugstilfælde hjælpe jer med at identificere de aktiver, der er relevante for sikkerhedsarbejdet?

  4. Hvad er forskellen på et misbrugstilfælde og en teknisk trussel? Hvorfor er det vigtigt at holde de to niveauer adskilt?

  5. Hvordan kan brugstilfælde og misbrugstilfælde skabe et fælles sprog mellem udviklere, domæneeksperter og andre interessenter?


✅ Selvevaluering – du har forstået system- og sikkerhedsmål, når du...

Du har forstået den grundlæggende tilgang i denne øvelse, når du kan:

  • forklare forskellen mellem et systemmål og et sikkerhedsmål
  • forklare, hvorfor systemmål kan repræsenteres som brugstilfælde
  • forklare, hvorfor sikkerhedsmål kan repræsenteres som misbrugstilfælde
  • identificere en relevant aktør og beskrive, hvad aktøren forsøger at opnå med systemet
  • identificere relevante aktiver med udgangspunkt i et brugstilfælde
  • anvende CIA-modellen som hjælp til at identificere relevante misbrugstilfælde
  • identificere en trusselsaktør og beskrive, hvad trusselsaktøren kan opnå gennem et misbrugstilfælde
  • beskrive brugstilfælde og misbrugstilfælde på et forretningsmæssigt abstraktionsniveau
  • forklare forskellen mellem et misbrugstilfælde og en teknisk trussel eller angrebsteknik
  • forklare, hvorfor de identificerede misbrugstilfælde senere kan anvendes som udgangspunkt for risikovurdering

💡 Hvis I kan beskrive hvad systemet skal kunne, hvad der kan gå galt, og hvilke aktiver der påvirkes – uden at begynde at diskutere den tekniske angrebsmetode – er I godt på vej.


Last update: 2026-09-17 12:13:54