Kurs: Innocent Code

Websikkerhet for utviklere

Heimdall Net Defense

Dette er andre generasjon av kurset "Websikkerhet for utviklere". Kurset er bygget opp rundt boka "Innocent Code", som er forfattet av kursholderen. Boka følger med som kursmateriell.

De fleste programmerere er ikke klar over at deres kode er en viktig bit av sikkerhetsbildet. De siste årene har sikkerhetsmiljøer fokusert stadig sterkere på hvordan vanlige feil i kode kan gjøre en webløsning like åpen som feks. manglende brannmur. Dessverre er ikke utviklerutdannelsen oppdatert på dette feltet.

Målgruppe

Kurset passer for deltakere med noe til mye erfaring med bygging av dynamiske webløsninger basert på ASP, PHP, Perl, JSP, Java Servlets eller liknende teknologier. Kurset retter seg ikke mot spesielle arkitekturer.

Evaluering

Etter kurset skal deltakerne ha forståelse for at vanlige feil og mangler i programkode kan utgjøre en stor trussel for sikkerheten i en webløsning. De skal forstå viktigheten av å fokusere på sikkerhet under hele utviklingsprosessen, og de skal kjenne til vanlige framgangsmåter for innbrudd i webløsninger, og vite hvordan disse kan hindres.

Opplegg

Store deler av kurset vil gjennomføres som forelesning med innspill fra deltakerne. Det legges vekt på eksempler og henvisning til virkelige hendelser. Praktiske øvelser vil bestå i å "cracke" utdrag fra små, feilprogrammerte webtjenester.

Kurset holdes bedriftsinternt, eller eksternt gjennom Watchcom.

Varighet

Kursets varighet er en dag på rundt åtte timer, avhengig av i hvilken grad deltakerne engasjerer seg.

Innhold

Undervisningen legges opp rundt følgende hovedtema:

Bakgrunnsinformasjon
Kort om byggesteinene i typiske webløsninger: HTTP, HTTPS, cookies, sesjoner, osv. Beskriver også sikkerhetsproblemer som kan oppstå hvis byggesteinene ikke brukes riktig.
Undersystemers tolkning av data
Om hvordan data som behandles av programmet noen ganger tolkes som mer enn data. "SQL Injection" beskrives i denne delen.
Håndterig av input
Hva er input til en webløsning? Hvordan valideres input? Om hvordan inputmanipulering kan gi uatorisert tilgang til ressurser.
Håndtering av output
Om hvordan data vi putter inn i en webside kan tolkes som mer enn data av brukernes browsere, og hvordan angripere kan utnytte dette. "Cross-site Scripting" beskrives i denne delen.
Passord og andre hemmeligheter
Om håndtering av brukerpassord, passordknekking, kryptering, og hvordan inntrengere kan få tilgang til serverside-ressurser.
Webtrojanere
Beskriver hvor lett det kan være for en angriper å lure våre brukere til å gjøre noe de ikke vil, kun ved å sende dem en mail.

Det hele rundes av med en samling generelle tips om hvordan man kan øke sikkerheten i en webløsning.

Mer info

For ytterligere informasjon, ta kontakt. Du er også velkommen til å se utvalgte tilbakemeldinger på kurset.


 
"fordi websikkerhet er mer enn brannmur og kryptering"