Ta kontakt
 Varighet 21 timer

Kursplan

A01:2025 – Brutt tilgangskontroll

Tilgangskontroller gjentar at brukere ikke kan handle utenfor deres intendede tillatelser. Feil fører typisk til ikke-autorisert utlevering, endring eller ødeleggelse av data, eller utførelse av en forretningsfunksjon utenfor brukerens grenser.

Praktiske aspekter

  • Praktiske eksempler på brutte tilgangskontroller

  • Sikre tilgangskontroller og beste praksis

A02:2025 – Feilkonfigurering

Feilkonfigurering forekommer når et system, en applikasjon eller en skytjeneste er satt opp feilaktig fra et sikkerhetsperspektiv, noe som skaper sårbarheter.

Praktiske aspekter

  • Eksempler fra virkeligheten på feilkonfigureringer

  • Tiltak for å forebygge feilkonfigurering, inkludert konfigurasjonsstyring og automatiseringsverktøy

A03:2025 – Svakheter i programvaresupplykjeden

Svakheter i programvaresupplykjeden er sammenbrudd eller andre kompromisser i prosessen med å bygge, distribuere eller oppdatere programvare. De skyldes ofte sårbarheter eller skadelige endringer i tredjeparts-kode, verktøy eller andre avhengigheter som systemet er avhengig av.

A04:2025 – Kryptografiske svakheter

Generelt sett bør all data i transport krypteres på transportlag (OSI-lag 4). Tidligere hindringer som CPU-ytelse og styring av private nøkler/sertifikater håndteres nå av CPU-er med instruksjoner designet for å akselerere kryptering (f.eks. AES-støtte) og forenklet styring av private nøkler og sertifikater ved hjelp av tjenester som LetsEncrypt.org, med store skyaktører som tilbyr enda tettere integrerte sertifikatstyringstjenester for deres spesifikke plattformer.

Utover å sikre transportlaget, er det viktig å bestemme hvilken data som trenger kryptering på lagret (at rest) og hvilken data som trenger ekstra kryptering i transport (på applikasjonslaget, OSI-lag 7).

Til eksempel, passord, kredittkortnummer, helseopplysninger, personopplysninger og handels hemmeligheter krever ekstra beskyttelse, spesielt hvis dataen faller inn under personvernlover, f.eks. EUs Generelle forordning om personvern (GDPR), eller regler som PCI Data Security Standard (PCI DSS).

Praktiske aspekter

  • Detaljert analyse av kryptografiske svakheter som svake krypteringsalgoritmer eller uriktig nøkestyring

  • Viktigheten av sterke kryptografiske mekanismer, sikre protokoller (SSL/TLS) og eksempler på moderne kryptografi i nettssikkerhet

A05:2025 – Injeksjon

En injeksjonssårbarhet er en systemsvakheter som tillater en angriper å sette inn skadelig kode eller kommandoer (som SQL- eller shell-kode) i et programmet inputfelt, slik at systemet blir lurt til å utføre koden eller kommandoene som om de var en del av systemet. Dette kan føre til virkelig alvorlige konsekvenser.

Praktiske aspekter

  • Detaljert oppsplitting av SQL-, NoSQL-, OS- og LDAP-injeksjon

  • Mitigeringsteknikker ved bruk av forberedte setninger, parametriserte spørringer og escaping av inndata

A06:2025 – Usikker design

Usikker design er en bred kategori som representerer ulike svakheter, uttrykt som «manglende eller ueffektiv kontroll-design».

Usikker design er ikke kilden til alle de øvrige Top Ten-risikkokategoriene. Merk at det er en forskjell mellom usikker design og usikker implementasjon. Vi skiller mellom designsvakheter og implementasjonsdefekter av en grunn; de har ulike rotårsaker, forekommer på ulike tidspunkter i utviklingsprosessen og har ulike rettingstiltak.

Et sikkert design kan fortsatt ha implementasjonsdefekter som fører til sårbarheter som kan utnyttes. Et usikkert design kan ikke rettes ved en perfekt implementasjon, da nødvendige sikkerhetskontroller aldri ble opprettet for å forsvare mot spesifikke angrep.

Én av faktorene som bidrar til usikker design er mangel på forretningsrisikoprofilering som er innebygget i den programvare eller system som utvikles, og dermed feilaktig å bestemme hvilket nivå av sikkerhetsdesign som kreves.

Praktiske aspekter

  • Vi vil utforske designsvakheter som kan føre til sårbarheter, som uriktig inndatavalidering

  • Vi vil studere strategier for sikker arkitektur og prinsipper for sikker design

A07:2025 – Autentiseringsfeil

Når en angriper lykkes i å lure et system til å anerkjente en ugyldig eller feilaktig bruker som legitim, er denne sårbarheten til stede.

Praktiske aspekter

  • Vanlige autentiseringsproblemer

  • Sikre autentiseringsstrategier, som tofaktorsautentisering og riktig sessionshåndtering

A08:2025 – Program- eller dataintegritetsfeil

Program- og dataintegritetsfeil vedrører kode og infrastruktur som ikke beskytter mot ugyldig eller upålitelig kode eller data som behandles som pålitelig og gyldig.

Ét eksempel på dette er når en applikasjon er avhengig av plugins, biblioteker eller moduler fra upålitelige kilder, repositorer og innholdsleveringstjenester (CDN-er).

En usikker CI/CD-pipe uten bruk og levering av programvareintegritetskontroller kan introdusere potensiale for ikke-autorisert tilgang, usikker eller skadelig kode, eller systemkompromittelse.

Et annet eksempel på dette er en CI/CD som henter kode eller artefakter fra upålitelige steder og/eller ikke verifiserer dem før bruk (ved å sjekke signaturen eller lignende mekanisme).

Praktiske aspekter

  • Fokus på problemer som upålitelige programvareoppdateringer og databrudd

  • Sikre oppdateringsmekanismer og dataintegritetskontroller

A09:2025 – Svakheter i sikkerhetslogging og varsling

Uten logging og overvåking kan angrep og brudd ikke oppdages, og uten varsling er det svært vanskelig å reagere raskt og effektivt under en sikkerhetshendelse.

Utilstrekkelig logging, kontinuerlig overvåking, deteksjon og varsling for å initiere aktive responser skjer hele tiden.

Praktiske aspekter

  • Viktigheten av logging av sikkerhetsrelevant informasjon og overvåking av mistenkelige aktiviteter

  • Verktøy og praksis for riktig logging og sanntidsmonitorering for å oppdage brudd tidlig

A10:2025 – Feilaktig håndtering av unntakstilfeller

Feilaktig håndtering av unntakstilfeller i programvare skjer når programmer ikke forhindrer, oppdager og reagerer på uvanlige og uforutsigbare situasjoner, noe som fører til krasj, uventet oppførsel og noen ganger sårbarheter.

Dette kan involvere ett eller flere av følgende tre feil:

  • Applikasjonen forhindrer ikke at en uvanlig situasjon inntreffer

  • Den identifiserer ikke situasjonen mens den pågår

  • Den reagerer dårlig eller ikke i det hele tatt på situasjonen i etterkant

SAST – Statiske applikasjonssikkerhetstesting

  1. Hva statisk analyse er og når den skal kjøres i SDLC (shift left)

  2. Typer sårbarheter som kan oppdages gjennom SAST, sårbar kode mot sikker kode

  3. Overblikk over SAST-verktøy (f.eks. Semgrep, SonarQube, Checkmarx, avhengig av klients stack)

  4. Praktisk øvelse: Kjør en SAST-scan på et repository med bevisst introduserte sårbarheter, tolk resultatene, sortere falske positive mot ekte sårbarheter

DAST – Dynamiske applikasjonssikkerhetstesting

  1. Forskjellen mellom SAST og DAST, svart boks-testing på den kjørende applikasjonen

  2. DAST-scanflyt, crawling, fuzzing, responsanalyse

  3. Overblikk over DAST-verktøy (f.eks. OWASP ZAP, Burp Suite)

  4. Praktisk øvelse: Kjør en DAST-scan på en sårbar testapplikasjon (f.eks. OWASP Juice Shop), identifiser og validere funnene

SCA – Programvarekomposisjonsanalyse

  1. Risiko ved tredjepartsavhengigheter og biblioteker, arvede sårbarheter

  2. SBOM, Software Bill of Materials, hva det er og hvorfor det betyr noe

  3. Overblikk over SCA-verktøy (f.eks. Dependency Check, Snyk, GitHub Dependabot)

  4. Praktisk øvelse: Kjør en SCA-scan på et ekte prosjekt, identifisere sårbare avhengigheter og bygge en rettingsplan (oppdater, patch, mitigere)

Krav

Deltakerne bør ha:

  • Grunnleggende kunnskap om programvareutviklingskonsepter
  • Grunnleggende forståelse av nettapplikasjoner og vanlige nett-teknologier
  • Kjennskap til programvarelivssyklusen (SDLC)
  • Grunnleggende forståelse av kildekode og programvareavhengigheter
  • Grunnleggende kunnskap om sikkerhetskonsepter er en fordel, men ikke obligatorisk

Målgruppe

  • Programvareutviklere
  • Programvareingeniører
  • QA- og programvaretestingeniører
  • DevOps- og DevSecOps-ingeniører
  • Applikasjonssikkerhetseksperter
  • Sikkerhetsingeniører
  • Programvarearkitekter
  • Tekniske ledere
  • Fagpersoner involvert i sikker programvareutvikling og applikasjonssikkerhetstesting

Antall deltakere


Pris per deltaker

Referanser (3)

Kommende kurs

Relaterte kategorier