Programvaresikkerhet
2016-2017
-
IMT3501
- 10sp
Anbefalt forkunnskap
- IMT1082 - Objekt-orientert programmering
- IMT2021 - Algoritmiske metoder
- IMT2282 - Operativsystemer
Forventet læringsutbytte
Kunnskaper
- Etter endt emne har studentene grunnleggende kunnskap om hvordan programvarer kan både skapes og vedlikeholdes med tanke på sikkerhet, dvs. avvik fra forventet funksjonalitet grunnet interaksjon med en fiende.
- De forstår typiske angrepsmønstre, bla. buffer overflows, format string problemer, command injection, og cross-site scripting.
- 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.
Emnets temaer
Se engelsk versjon:
- Software Assurance
- Secure Software Development Lifecycle
- Coding Practices and Rules
- Source Code Analysis
- Security Testing
- Attack Patterns
Pedagogiske metoder
Forelesninger
Lab.øvelser
Obligatoriske oppgaver
Vurderingsformer
Skriftlig eksamen, 3 timer
Karakterskala
Bokstavkarakterer, A (best) - F (ikke bestått)
Sensorordning
Sensureres av intern sensor, ekstern sensor benyttes periodisk (hvert fjerde år, neste gang i studieåret 2017/2018)
Utsatt eksamen (tidl. kontinuasjon)
Utsatt eksamen/kontinuasjon i august for skriftlig eksamen.
Tillatte hjelpemidler (gjelder kun skriftlig eksamen)
Ordbok
Obligatoriske arbeidskrav
Minst seks (6) obligatoriske øvelser må innleveres og være godkjent.
Læremidler
- Dowd, M., McDonald, J., and Schuh, J. (2006). The Art of Software Security Assessment: Identifying and Preventing Software Vulnerabilities. ISBN 0-321-44442-6. Library 005.8 Dow
Chess, B., & West, J. (2007). Secure programming with static analysis. Pearson Education.
http://www.amazon.com/Secure-Programming-Static-Analysis-Brian/dp/0321424778
Støttelitteratur
- Hoglund, G. and McGraw, G. (2004). Exploiting Software: How to Break Code. ISBN 0-201-78695-8. Library 005.8 Hog
- McGraw, G. (2006). Software Security: Building Security in. ISBN 0-321-35670-5. Library 005.8 McG
Erstatter
IMT3381 Applikasjonssikkerhet, IMT3571 Datasystemsikkerhet