Tack för att du skickade din fråga! En av våra teammedlemmar kontaktar dig snart.
Tack för att du skickade din bokning! En av våra teammedlemmar kontaktar dig snart.
Kursplan
1. IT-säkerhet och säker koding
- Grundläggande säkerhetsprinciper: Sekretess, integritet och tillgänglighet (CIA) i sammanhanget av Java-applikationer.
- Säker mjukvarulivscykel (SSDLC): Integrera säkerhet från krav till implementering.
- Paradigmen för säker koding: Defense in depth, minst privilegier och fail-safe standardinställningar.
- Standardiserad klassificering av sårbarheter: Förståelse av CWE (Common Weakness Enumeration) och OWASP.
2. Säkerhet för webbapplikationer
- Djupdykning i OWASP Top Ten: Detaljerad analys av Injection, Broken Authentication och Sensitive Data Exposure.
- Cross-Site Scripting (XSS): Scenarier för Reflected, Stored och DOM-baserad XSS i Java/JSP.
- Cross-Site Request Forgery (CSRF): Attackmekanismer och implementering av Anti-CSRF-tokens.
- Sessionhantering: Cookie-säkerhet, session fixering och timeout-hantering.
- API-säkerhet: Säkra REST- och SOAP-endpoints mot missbruk.
3. Säkerhet för webbtjänster
- Webbtjänster vs. traditionella webbappar: Skillnader i angreppsytor.
- Transportlagessäkerhet: SSL/TLS-konfiguration för Java-klienter och servrar.
- Meddelandesäkerhet: Integritet och sekretess på payload-nivå.
- Autentiseringsstandarder: Implementering av OAuth 2.0, OpenID Connect och JWT (JSON Web Tokens).
4. XML-säkerhet
- Sårbarheter i XML-parsning: Förhindra XML External Entity (XXE)-attacker.
- XML-schemavalidering: Bästa praxis för strikt schematillämpning.
- XML-digitala signaturer: Implementera signaturer för att säkerställa oundersägbarhet.
- XML-kryptering: Standardmetoder för att kryptera XML-innehåll.
5. Grunden för Java-säkerhet
- Javas säkerhetsarkitektur:
java.security-paketet och arkitekturen för tillhandahållare. - Säkerhetstillhandahållare: Installera och konfigurera tillhandahållare som Bouncy Castle.
- Åtkomstkontroll: Policyfiler, Behörigheter och Security Manager (Legacy vs. Modern).
- KeyStore-hantering: Skapa och hantera keystores och truststores för certifikat.
6. Praktisk kryptografi
- Kryptografiska algoritmer: Översikt över symmetriska (AES), asymmetriska (RSA, ECC) och hashfunktioner (SHA-256/512).
- Slumptalsgenerering: Farorna med
java.util.Randomvs.java.security.SecureRandom. - Nyckelhantering: Strategier för nyckelgenerering, lagring och rotation.
- Java Cryptography Architecture (JCA): Använda
Cipher,MessageDigestochMac-klasser. - Java Cryptography Extension (JCE): Förstå policyfiler och oobegränsad styrka jurisdiktion.
7. Javas säkerhetstjänster
- SSL/TLS i Java: Använda
SSLSocketFactoryochHttpsURLConnection. - Trust Managers: Anpassa trust-verifiering för privata PKI-miljöer.
- Authentisera: Programmatisk autentisering med
Authenticator.getDefault(). - Certifikatstolkning: Läs och analysera X.509-certifikat programmatiskt.
8. Java EE-säkerhet
- Deklarativ säkerhet: Rollenbaserad åtkomstkontroll (RBAC) med
web.xmloch annoteringar. - Programmatisk säkerhet: Använda
HttpServletRequest.isUserInRole()ochgetRemoteUser(). - JAAS (Java Authentication and Authorization Service): Konfigurera
login.confoch implementeraLoginModule:er. - Servlet-säkerhet: Containerhanterade säkerhetsbegränsningar och autentiseringsmetoder (FORM, BASIC, DIGEST).
9. Vanliga kodingsfel och sårbarheter
- Osäker deserialisering: Riskerna med
ObjectInputStreamoch kringgående av säkerhetsskontroller. - Command Injection: Minimera OS-nivåns exekverings sårbarheter.
- Path Traversal: Sanitera filsystemsinmatningar för att förhindra kataloggenomgång.
- Reflection Abuse: Risker förknippade med
java.lang.reflectoch kringgående av åtkomstkontroll. - Hårdkodade inloggningsuppgifter: Identifiera och ta bort hemligheter från källkoden.
- Felaktig implementering av kryptografi: Användning av ECB-läge, svaga nycklar eller statiska IV:er.
10. Källor för kunskap
- Statistiska analysverktyg: Använd SonarQube, Checkmarx och Fortify för automatisk skanning.
- Dynamiska analysverktyg: Översikt över Burp Suite och OWASP ZAP.
- CVE-databaser: Hur man spårar och reagerar på nya sårbarheter i Java-ramverket.
- Rekommenderad läsning: Lista över böcker, dokumentation och klistersidor för säker koding.
Krav
Inga.
21 Timmar
Vittnesmål (4)
utbildningsledarens kunskap var mycket hög - han visste vad han pratade om och hade svar på våra frågor
Adam - Fireup.PRO
Kurs - Advanced Java Security
Maskintolkat
Praktiska övningar
Olek - Fireup.PRO
Kurs - Advanced Java Security
Maskintolkat
kodningövningar
Mirek - Fireup.PRO
Kurs - Advanced Java Security
Maskintolkat
Det öppnar upp mycket och ger många insikter om säkerhet
Nolbabalo Tshotsho - Vodacom SA
Kurs - Advanced Java Security
Maskintolkat