IIKG2001
Software Security
Vår
Gjøvik
Engelsk
Om emnet
Faglig innhold
- Sårbarheter i programvarer, taksonomier, CWE, OWASP Top 10
- Sårbarheter i webapplikasjoner
- Angriperens perspektiv på programvarer, CAPEC, angrepsvektorer
- Sikker/defensiv programmering, trusselanalyse, forbudte funksjoner
- Implementering av aksesskontroll, Windows sikkerhet
- Sertifisering av produkter
- Kildekodeanalyse, leveringskjeden i programvareutvikling, avhengigheter, kodeinspeksjon, dataflytanalyse, mønstre, verktøy, automatisering
- Sikkerhetstesting, fravær/tilstedeværelse av sårbarheter, strukturert testing, abuse cases, penetrasjonstesting, fuzzing
- Sikker utviklingssyklus, prinsipper, praksis, aktiviteter, integrasjon, leveranse og integritet av programvarer
- Vedlikehold av programvare, greenfield/brownfield, avhengigheter fra tredjeparter, risikoanalyse, oppdateringer
Læringsmål
Kunnskaper
- Studentene har grunnleggende kunnskap om hvordan programvare kan lages og vedlikeholdes med tanke på sikkerhet.
- De forstår typiske angrepsmønstre og tiltak for å forhindre disse.
- Studentene har oversikt over eksisterende teknologier, typer av verktøy, og metodene som brukes i programvareutvikling i dag.
Ferdigheter
- Studentene kan anvende kunnskapen på problemstillinger i næringsliv og forskningssammenheng.
- De er i stand til å identifisere potensielle trusler og sårbarheter tidlig i et programs livsløp og anvender tiltak som forhindrer eller reduserer sårbarheter i programvarer.
Generell kompetanse
- Studentene klarer å formidle sine analyser og forslag til andre utviklere, foresatte og kunder.
- Gjennom anvendelse av angrepsmetoder og gjennom analyse av konsekvenser studentene utvikler en bevissthet om ansvarlig bruk og utforming av informasjonsteknologi.
Læringsformer og aktiviteter
- Forelesninger: en del på campus, en del digital strømming
- Lab.øvelser
- Obligatoriske oppgaver
- Hjemmelesing
- Gruppearbeid (oppmuntret, ikke obligatorisk)
- Lab om Bærekraft
Obligatoriske arbeidskrav: Alle obligatoriske øvelser må være godkjent.