Informasjons- og programvaresikkerhet (DAT250)

Faget skal gi en introduksjon til informasjonssikkerhet samt grunnleggende kunnskap om programvaresikkerhet. Programvaresikkerhet er hvordan å utvikle programvare som fortsetter å oppføre seg som forventet selv om den utsettes for angrep i form av villede handlinger utenfra. Dette betyr at egenskaper som konfidensialitet og integritet ivaretas, ikke bare tilgjengelighet. Kurset vil presentere vanlige feil og mottiltak, og beskrive programvareaktiviteter som bidrar til bedre programvaresikkerhet.


Dette er emnebeskrivelsen for studieåret 2024-2025. Merk at det kan komme endringer.

Fakta

Emnekode

DAT250

Versjon

1

Vekting (stp)

10

Semester undervisningsstart

Høst

Antall semestre

1

Vurderingssemester

Høst

Undervisningsspråk

Engelsk

Innhold

Programvaresikkerhet er hvordan å utvikle programvare som fortsetter å oppføre seg som forventet selv om den utsettes for angrep i form av villede handlinger utenfra. Dette betyr at egenskaper som konfidensialitet og integritet ivaretas, ikke bare tilgjengelighet.

Tema som dekkes omfatter:

  • Introduksjon til informasjonssikkerhet
  • Autentisering
  • Aksesskontroll
  • GDPR og personvern
  • Typiske angrep
  • OWASP top 10

    • Sårbarheter i programvare
  • Dependency checking
  • Trusselmodellering

    • STRIDE
  • Programvareaktiviteter for sikkerhet - BSIMM
  • Privacy by design (innebygget personvern)
  • Smidig programvaresikkerhet
  • Protection Poker
  • Statisk analyse for sikkerhet
  • OWASP testing guide
  • Risikobasert sikkerhetstesting
  • Penetreringstesting

    • Kali Linux
    • Red Team
    • Bug bounties
  • Kryptografi i programvare

    • Nøkkelhåndtering
  • Web sikkerhet

Læringsutbytte

Kunnskap:

  • Kunne grunnleggende informasjonssikkerhetskonsepter
  • Kjenne til de vanligste angrepsmåtene mot programvare
  • Kunne de vanligste teknikkene for trusselmodellering

Ferdigheter:

  • Beherske grunnleggende adgangskontroll-mekanismer, inkludert rollebasert aksesskontroll
  • Beherske teknikker for å unngå de vanligste angrepene på programvare
  • Beherske statisk sikkerhetsanalyse av programvare
  • Beherske grunnleggende teknikker for sikkerhetstesting av programvare, inkludert penetreringstesting

Generell kompetanse:

  • Skal kunne utvikle programvare som i størst mulig grad ikke inneholder sikkerhetsfeil og sårbarheter, gjennom å utføre bestemte programvareutviklingsaktiviteter.

Forkunnskapskrav

Et av følgende alternativer:
DAT110 Grunnleggende programmering
DAT120 Grunnleggende programmering
Det er nødvendig med grunnleggende programmeringskunnskaper for å løse obligatoriske oppgaver.

Anbefalte forkunnskaper

DAT310 Webprogrammering

Eksamen / vurdering

Vurderingsform Vekting Varighet Karakter Hjelpemiddel
Skriftlig eksamen 1/1 4 Timer Bokstavkarakterer Ingen hjelpemidler tillatt

Digital eksamen.

Vilkår for å gå opp til eksamen/vurdering

Innleveringer

Fagperson(er)

Emneansvarlig:

Martin Gilje Jaatun

Ansvarlig laboratorieøvelser:

Ferhat Özgur Catak

Instituttleder:

Tom Ryen

Arbeidsformer

2 timer forelesning per uke + 4 timer forelesning annen hver uke.

2 timer øvingsveiledning hver uke.

Åpent for

Datateknologi - bachelor i ingeniørfag
Enkeltemner ved Det teknisk-naturvitenskaplige fakultet
Utveksling ved Det teknisk- naturvitenskapelige fakultet

Emneevaluering

Det skal være en tidligdialog mellom emneansvarlig, studenttillitsvalgt og studentene. Formålet er tilbakemelding fra studentene for endringer og justering i emnet inneværende semester.I tillegg skal det gjennomføres en digital emneevaluering minimum hvert tredje år. Den har som formål å innhente studentenes erfaringer med emnet.

Litteratur

Pensumlisten finner du i Leganto