1 (3) Kursplan för: Datateknik GR (B), Mjukvarusäkerhet, 7,5 hp Computer Engineering BA (B), Software Security, 7.5 Credits Allmänna data om kursen Kurskod DT167G Ämne/huvudområde Datateknik Nivå Grundnivå Progression (B) Inriktning (namn) Mjukvarusäkerhet Högskolepoäng 7.5 Fördjupning vs. Examen G2F , Kursen ligger på grundnivå och fordrar minst 60 hp kurs(er) på grundnivå som förkunskapskrav. Utbildningsområde Teknik Ansvarig avdelning Avdelningen för data- och systemvetenskap 100% Inrättad Fastställd 2017-01-30 Senast reviderad Giltig fr.o.m 2017-01-01 Syfte Kursen fokuserar på implementering av säker mjukvara och behandlar vanliga säkerhetsbrister samt tekniker för att undvika dessa. Studenten ska utveckla en grundläggande förståelse för säkerhetsproblem och en förmåga att identifiera dessa under mjukvaruutveckling. Tillägnade kunskaper ska kunna tillämpas i praktisk programmering. 2 (3) Lärandemål Efter att ha genomfört kursen skall studenten kunna: - identifiera och beskriva specifika hot och attacker mot säkerheten i ett system och utifrån det kunna föreslå lämpliga motåtgärder. - känna igen vanliga programmeringsfel som kan leda till säkerhetsbrister. - utnyttja vanliga programmeringsfel för att attackera ett system i syfte att testa säkerheten. - välja lämpliga kryptografiska tekniker för att lösa vissa säkerhetsproblem. - tillämpa säkra programmeringstekniker praktiskt. Innehåll - Grundläggande teori och begrepp som autentisering, integritet, sekretess, mjukvarusäkerhet, risk, svagheter, hot, pålitlighet, spårbarhet, detektering med flera. - SQL injection - Cross-Site Scripting - Cross-Site Request Forgery - Cookies - Minnessäkerhet (buffer overflow) - Kryptering Behörighet Datateknik GR (AB) 60 hp varav 7.5 hp Databaser, 15 hp Webbprogrammering (server- och klientsida) innehållande JavaScript samt 30 hp andra programmeringskurser innehållande 15 hp C eller C++. Urvalsregler Urval sker i enlighet med Högskoleförordningen och den lokala antagningsordningen. Undervisning Tidigt i undervisningen ingår en obligatorisk aktivitet, skriftlig inlämningsuppgift. Kursen kan genomföras som campuskurs eller som webbaserad distanskurs utan samlingar. Olika genomföranden ställer olika krav på lärare och student. Vid varje kurstillfälle framgår vilken undervisningsform som kommer att tillämpas. Kursarbetets omfattning uppskattas till ca 200 timmar. 3 (3) Examination 1.0 hp, I101: Skriftlig inlämningsuppgift. Betyg: Godkänd eller Underkänd 6.5 hp, L101: Quizzar och laborationer Sammanvägt betyg för momentet: A, B, C, D, E, Fx och F. A-E är Godkänt, Fx och F är Underkänt. För att få ett godkänt betyg på momentet krävs godkänt på alla quizzar och laborationer. 0.0 hp, L102: Frivillig projektuppgift, för att eventuellt erhålla högre betyg. Betyg: Godkänd eller Underkänd. Ett sammanvägt slutbetyg baseras på alla moment i kursen. Betygskriterier för ämnet finns på www.miun.se/betygskriterier. Betygsskala På kursen ges något av betygen A, B, C, D, E, Fx och F. A - E är Godkänt, Fx och F är underkänt. Litteratur Obligatorisk litteratur Författare/red: Howard, Leblanc et al. Titel: Förlag: 24 Deadly Sins of Software Security: Programming Flaws and How to Fix Them McGraw-Hill 2010 Författare/red: Ross J. Anderson Titel: Security Engineering: A Guide to Building Dependable Distributed Systems Upplaga: 2nd edition Förlag: Wiley Kommentar: Finns tillgänglig på Internet Övrig information Den som inte senast kursvecka tre genomfört Skriftlig inlämningsuppgift, moment I101, kommer att förlora sin plats i och med att Lärosätet då registrerar ett Ȅtidigt avbrottȄǯ