Ta kontakt

Kursplan

I. Introduksjon til sikker koding og webapplikasjonssikkerhet

1. Det moderne trusselsbildet for webapplikasjoner

  • Vanlige angrepsvektorer for webapplikasjoner
  • Sikkerhetsrisikoer i moderne ASP.NET-applikasjoner
  • Den sikre kodingens rolle i programvareutvikling
  • Innføring til OWASP-stiftelsen og dens ressurser

2. Prinsipper for sikker programvareutvikling

  • Sikkerhet designet inn (Security by design)
  • Forsvar i dybden (Defense in depth)
  • Minst mulig tilgang (Least privilege)
  • Feilende sikkert (Fail securely)
  • Sikre standardinnstillinger (Secure defaults)
  • Grunnleggende trusselvurdering

II. Sikker utviklingslivssyklus (SDL)

1. Livssyklussen for sikker programvareutvikling

  • Sikkerhet gjennom hele utviklingslivssyklusen
  • Sikkerhetskrav
  • Sikker arkitektur og design
  • Praksis for sikker koding
  • Sikkerhetstesting og validering
  • Sikker distribusjon og vedlikehold

2. Risikovurdering og trusselvurdering

  • Identifisering av aktiva og trusler
  • Analyse av angripsflate
  • Introduksjon til STRIDE-modellen
  • Prioritering av sikkerhetsrisikoer

III. OWASP Top 10 for ASP.NET-applikasjoner

1. Forståelse av OWASP Top 10

  • Svikt i tilgangskontroll (Broken Access Control)
  • Kryptografiske feil (Cryptographic Failures)
  • Injeksjon (Injection)
  • Usikre designtvalg (Insecure Design)
  • Sikkerhetsfeilkonfigurasjon (Security Misconfiguration)
  • Sårbar og utdaterte komponenter (Vulnerable and Outdated Components)
  • Feil ved identifikasjon og autentisering (Identification and Authentication Failures)
  • Svikt i programvare- og dataintegritet (Software and Data Integrity Failures)
  • Svikt i sikkerhetslogging og overvåking (Security Logging and Monitoring Failures)
  • Falsk forespørsel på server-siden (SSRF) (Server-Side Request Forgery)

2. Anvendelse av OWASPs anbefalinger

  • Metoder for sikker koding
  • Forebyggende tiltak
  • Praksis for sikker konfigurasjon
  • Eksempler og demonstrasjoner fra virkeligheten

IV. Sikkerhet ved autentisering og autorisering

1. Grunnleggende om autentisering

  • Autentiseringsmekanismer i ASP.NET
  • Passordsikkerhet
  • Flerfaktorautentisering
  • Sesjonsadministrasjon
  • Håndtering av identitet (Identity management)

2. Autorisering og tilgangskontroll

  • Autorisering basert på roller
  • Autorisering basert på krav (Claims-based authorization)
  • Autorisering basert på politikker
  • Forebygging av privilegieøkning
  • Beskyttelse av sensitive ressurser

V. Forebygging av injeksjonsangrep

1. Sårbarheter for injeksjon

  • SQL-injeksjon
  • Kommandoinjeksjon
  • LDAP-injeksjon
  • XML-injeksjon
  • Oversikt over NoSQL-injeksjon

2. Metoder for sikker koding

  • Parametriserte spørringer
  • Innvalidering
  • Utgangskodning (Output encoding)
  • Sikkerhetsaspekter ved ORM (Object-Relational Mapping)
  • Sikre rutiner for databasetilgang

VI. Forebygging av Cross-Site Scripting (XSS)

1. Forståelse av XSS

  • Gemt XSS (Stored XSS)
  • Reflektert XSS (Reflected XSS)
  • DOM-basert XSS
  • Angrepsscenarier

2. Forebygging av XSS

  • Utgangskodning (Output encoding)
  • Innvalidering
  • Innholdssikkerhetspolicy (CSP) (Content Security Policy)
  • Sikker håndtering av HTML og JavaScript
  • ASP.NET-sikkerhetsfunksjoner for å forebygge XSS

VII. Forebygging av Cross-Site Request Forgery (CSRF)

1. Forståelse av CSRF

  • Hvordan CSRF-angrep fungerer
  • Vanlige angripsscenarier
  • Beslutningsmessig påvirkning (Business impact)

2. Beskyttelse mot CSRF

  • Tokens for å hindre falske forespørsler (Anti-forgery tokens)
  • SameSite-cookie
  • Sikker sesjonsadministrasjon
  • Mekanismer i ASP.NET for å hindre falske forespørsler

VIII. Sikker konfigurasjon av ASP.NET-applikasjoner

1. Sikkerhetsfunksjoner i ASP.NET

  • Sikkerhet for konfigurasjon
  • Sikre HTTP-overskrifter
  • Konfigurasjon av HTTPS og TLS
  • Håndtering av hemmeligheter (Secrets management)
  • Sikker feilhåndtering

2. Beskyttelse av sensitive data

  • Databeskyttelses-API-er
  • Sikker lagring av legitimasjon
  • Gr unnleggende kryptering
  • Nøkkelhåndtering

IX. Innvalidering og sikker datahåndtering

1. Validering av brukerinput

  • Hvittliste versus svartliste
  • Serverside validering
  • Vurderinger ved klient-side validering
  • Sikkerhet ved filopplastning

2. Sikker databehandling

  • Sikkerhet ved serialisering
  • Risikoer ved deserialisering
  • Dataintegritet
  • Sikre rutiner for logging

X. Penetration testing og sikkerhetsverifisering

1. Metodikk for penetration testing

  • Planlegging av sikkerhetsvurderinger
  • Identifisering av sårbarheter
  • Konsepter for utnyttelse (Exploitation)
  • Rapportering av funn

2. Teknikker for sikkerhetstesting

  • Statisk applikasjonssikkerhetstesting (SAST)
  • Dynamisk applikasjonssikkerhetstesting (DAST)
  • Interaktiv applikasjonssikkerhetstesting (IAST)
  • Analyse av avhengigheter og komponenter
  • Manuell gjennomgang av kode

XI. Sikring av ASP.NET-applikasjoner

1. Anvendelse av sikre kodingsrutiner

  • Sikker implementering av autentisering
  • Sikker implementering av autorisering
  • Sesjonssikkerhet
  • Ekscepthåndtering
  • Logging og overvåking
  • Tilpasninger for sikker distribusjon

2. Best practices for sikkerhet

  • Standarder for sikker koding
  • Håndtering av avhengigheter
  • Håndtering av patcher
  • Kontinuerlig forbedring av sikkerheten

XII. Praktisk verksted innen sikkerhet

1. Identifisering og utnyttelse av vanlige sårbarheter

  • Analyse av usikker ASP.NET-kode
  • Identifisering av sårbarheter i OWASP Top 10
  • Forståelse av angrepsmetoder
  • Vurdering av applikasjonssikkerhet

2. Retting av sikkerhetsproblemer

  • Implementering av fikser for sikker koding
  • Validering av mot tiltak
  • Testing av rettede applikasjoner
  • Øvelse i gjennomgang av sikker koding

XIII. Oppsummering og kursgjennomgang

1. Gjennomgang av hovedbegreper

  • Prinsipper for sikert design
  • Motvirkningsstrategier for OWASP Top 10
  • Sikkerhetsfunksjoner i ASP.NET
  • Livssyklus for sikker utvikling

2. Avsluttende diskusjon

  • Best practices for sikker koding
  • Innbyggering av sikkerhet i utviki ngsteam
  • Ytterligere OWASP-ressurser og verktøy
  • Spørsmål og svar, samt neste steg

Krav

Erfaring med ASP.NET. Erfaring med å utvikle webapplikasjoner.

 21 Timer

Antall deltakere


Pris per deltaker

Referanser (5)

Kommende kurs

Relaterte kategorier