Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
IT Security & Secure Coding Foundations
- Comprehending the CIA triad: Confidentiality, Integrity, and Availability as core security principles.
- Exploring common vulnerabilities and attacks across languages/platforms (e.g., SQLi, XSS, CSRF, SSRF).
- Understanding the role of the Secure SDLC in preventing, detecting, and mitigating code-level threats.
Web Application Security in the Java Context
- Aligning OWASP Top Ten standards with common Java-specific flaws.
- Mastering injection mitigation through prepared statements, ORM layers, and parameterized queries.
- Addressing authentication vulnerabilities (such as broken session management and XSS as an attack vector) and applying remediation patterns.
- Implementing robust input validation to defend against directory traversal and path manipulation attacks.
Foundations of Java Security & Cryptography Deep Dive
- Core cryptography concepts: symmetric vs. asymmetric encryption, hashing algorithms, and digital signatures.
- Secure communication protocols: best practices for setting up TLS/SSL in Java applications (HTTPS).
- Practical lab: Configuring secure connections between web servers and backend services using SSL/TLS.
Java Security Services & Enterprise Security Features
- Utilizing built-in security APIs to implement strong authentication mechanisms (JAAS, KeyStore, CertificatePath, SecureRandom).
- Managing user sessions to minimize the risk of hijacking or fixation.
- Lab: Implementing secure session management patterns and mitigating risks associated with session cookie theft.
Common Coding Errors & Vulnerabilities in Java
- Identifying insecure coding patterns that lead to class loading vulnerabilities (CVEs related to deserialization and JAR extraction).
- Preventing unsafe reflection usage from resulting in arbitrary code execution via privilege escalation.
- Understanding the risks of insecure logging frameworks and mitigating them through secure handlers or logging levels.
- Hands-on lab: Refactoring insecure Java code samples into secure patterns using FindSecurityBugs.
Cryptography in Practice & Modern Secure Coding Patterns
- Practical encryption: Designing secure key management systems and protecting sensitive data both in transit and at rest.
- Hashing for integrity verification: Managing password storage, validating file content, and executing digital signing workflows.
- Lab: Implementing secure data hashing (SHA-256) for password storage and validating stored hashes against input.
Advanced Secure Coding & Threat Modeling
- Integrating static code analysis into CI/CD pipelines using FindSecurityBugs with Maven/Gradle.
- Identifying risks early in the design phase through threat modeling workshops.
- Workshop: Applying threat modeling to a sample Java application, prioritizing risks, and implementing secure coding practices.
Capstone Project & Secure Coding Roadmap
- Participants select a real-world Java project (web application, microservice, or library).
- Analyzing the codebase for OWASP Top Ten vulnerabilities (e.g., injection, broken authentication, SSI).
- Refactoring insecure code into best-practice patterns and implementing secure service configurations.
- Documenting the process, challenges encountered, and new learning outcomes, followed by peer review and facilitator feedback.
Open Q&A, Resources Distribution & Final Review
- Open discussion forum to address common secure coding questions, clarify advanced concepts, and share real-world experiences.
- Curated resource library: OWASP Java Secure Coding Top Ten CheatSheet, FindSecurityBugs refactoring guide, and recommended secure coding libraries.
- Course close and post-training support for applying new skills in ongoing projects.
Requirements
- Basic computer literacy, including proficiency in operating modern laptop/desktop operating systems and standard office productivity tools (word processors, spreadsheets).
- No prior experience with Java programming or security is required; however, a foundational understanding of object-oriented concepts and standard web development workflows is encouraged.
- A willingness to engage in hands-on exercises, quizzes, and real-world case study analysis to practice applying new skills.
14 Hours
Testimonials (3)
Experience sharing, it's teacher's know-how and valuable.
Carey Fan - Logitech
Course - C/C++ Secure Coding
That we got a complex overview also about the context - for example why do we need some annotations and what they mean. I liked the practical part of the training - having to manually run the commands and call the rest api's
Alina - ACCENTURE SERVICES S.R.L
Course - Quarkus for Developers
The extra information that was shared, the training was not straightforward groovy, which was nice.