Ta kontakt
 Varighet 21 timer

Kursplan

1. IT-sikkerhet og sikker koding

  • Grunnleggende sikkerhetsprinsipper: Konfidensialitet, integritet og tilgjengelighet (CIA) i konteksten av Java-applikasjoner.
  • Sikker leverandssyklus for programvareutvikling (SSDLC): Integrering av sikkerhet fra krav til utrolling.
  • Sikre kodingsparadigmer: Forsvar i dybden, minst mulig rettighet og sikre standardvalg.
  • Standard klassifiseringer av sårbarheter: Forståelse av CWE (Common Weakness Enumeration) og OWASP.

2. Sikkerhet for webapplikasjoner

  • Dypdykk i OWASP Top 10: Detaljert analyse av injeksjon, brutten autentisering og eksponering av sensitive data.
  • Krysstjeneste-scripting (XSS): Reflektert, lagret og DOM-basert XSS-scenarier i Java/JSP.
  • Krysstjenesteforgøelse av forespørsler (CSRF): Angrepsmekanismer og implementering av Anti-CSRF-tokens.
  • Sesjonsadministrasjon: Cookie-sikkerhet, sesjonsfiksering og administrasjon av utløpetid.
  • API-sikkerhet: Sikring av REST- og SOAP-endepunkter mot misbruk.

3. Sikkerhet for webservices

  • Webservices kontra tradisjonelle webapper: Forskjeller i angrepsflater.
  • Transportlagsikkerhet: SSL/TLS-konfigurering for Java-klienter og -servere.
  • Meldingssikkerhet: Integritet og konfidensialitet på lastnivå.
  • Autentiseringsstandarder: Implementering av OAuth 2.0, OpenID Connect og JWT (JSON Web Tokens).

4. XML-sikkerhet

  • XML-parsingsårbarheter: Forebygging av angrep på eksterne XML-enheter (XXE).
  • XML-skjemasjekk: Beste praksis for streng gjeldendegjørelse av skjemata.
  • XML-digitale signaturer: Implementering av signaturer for å sikre ikke-fornekelse.
  • XML-kryptering: Standardtilnærminger til kryptering av XML-innhold.

5. Grunnlaget for Java-sikkerhet

  • Java-sikkerhetsarkitektur: java.security-pakken og provider-arkitekturen.
  • Sikkerhetsleverandører: Installering og konfigurerings av leverandører som Bouncy Castle.
  • Tilgangscontrolling: Policy-filer, tillatelser og Security Manager (Legacy vs. Moderne).
  • Keystore-administrasjon: Opprettelse og administrasjon av keystores og truststores for sertifikater.

6. Praktisk kryptografi

  • Kryptografiske algoritmer: Oversikt over symmetriske (AES), asymmetriske (RSA, ECC) og hashing (SHA-256/512) algoritmer.
  • Generering av tilfeldige tall: Faren med java.util.Random vs. java.security.SecureRandom.
  • Nøkkeladministrasjon: Strategier for nøkkels generasjon, lagring og rotasjon.
  • Java Kryptografi Arkitektur (JCA): Bruk av Cipher, MessageDigest og Mac-klasser.
  • Java Kryptografi Extension (JCE): Forståelse av policy-filer og ubegrenset styrke jurisdiksjon.

7. Java-sikkerhetstjenester

  • SSL/TLS i Java: Bruk av SSLSocketFactory og HttpsURLConnection.
  • Trust Managers: Tilpasning av tillitsverifisering for private PKI-miljøer.
  • Authenticators: Programmatisk autentisering ved hjelp av Authenticator.getDefault().
  • Sertifikatparsing: Lese og analysere X.509-sertifikater programmatisk.

8. Java EE-sikkerhet

  • Deklarativ sikkerhet: Rollebasert tilgangskontroll (RBAC) ved hjelp av web.xml og annotasjoner.
  • Programmatisk sikkerhet: Bruk av HttpServletRequest.isUserInRole() og getRemoteUser().
  • JAAS (Java Authentication and Authorization Service): Konfigurering av login.conf og implementering av LoginModuleer.
  • Servlet-sikkerhet: Container-administrerte sikkerhetsbetingelser og autentiseringsmetoder (FORM, BASIC, DIGEST).

9. Vanlige kodingsfeil og sårbarheter

  • Usikker deserialisering: Risikoer med ObjectInputStream og omgåelse av sikkerhetskontroller.
  • Command Injection: Mitigering av OS-nivå utførelsessårbarheter.
  • Path Traversal: Sanitizing av filsysteminnganger for å forebygge katalogtraversering.
  • Reflection Abuse: Risikoer assosiert med java.lang.reflect og omgåelse av tilgangskontroll.
  • Hardkodet kredensialer: Identifisering og fjerning av hemmeligheter fra kildekoden.
  • Feil i kryptografiimplementasjon: Bruk av ECB-modus, svake nøkler eller statiske IVs.

10. Kildekilder

  • Statisk analyseverktøy: Bruk av SonarQube, Checkmarx og Fortify for automatisk skanning.
  • Dynamisk analyseverktøy: Oversikt over Burp Suite og OWASP ZAP.
  • CVE-databaser: Hvordan spore og reagere på nye sårbarheter i Java-rammeverket.
  • Anbefalt lesing: Liste over bøker, dokumentasjon og sjekklistene for sikker koding.

Krav

Ingen.

Antall deltakere


Pris per deltaker

Referanser (4)

Kommende kurs

Relaterte kategorier