Course Outline
A01:2025 - Broken Access Control
A02:2025 - Security Misconfiguration
A03:2025 - Software Supply Chain Failures
A04:2025 - Cryptographic Failures
A05:2025 - Injection
A06:2025 - Insecure Design
A07:2025 - Authentication Failures
A08:2025 - Software or Data Integrity Failures
A09:2025 - Security Logging and Alerting Failures
A10:2025 - Mishandling of Exceptional Conditions
A01:2025 Broken Access Control - Access control enforces policies ensuring users cannot act outside their intended permissions. Failures typically result in unauthorized information disclosure, modification, or destruction of data, or performing business functions beyond the user's limits.
A02:2025 Security Misconfiguration - Security misconfiguration occurs when a system, application, or cloud service is incorrectly set up from a security perspective, thereby creating vulnerabilities.
A03:2025 Software Supply Chain Failures - Software supply chain failures involve breakdowns or compromises in the process of building, distributing, or updating software. These are often caused by vulnerabilities or malicious changes in third-party code, tools, or other dependencies that the system relies upon.
A04:2025 Cryptographic Failures - Generally, all data in transit should be encrypted at the transport layer (OSI layer 4). Previous challenges such as CPU performance and private key/certificate management are now addressed by CPUs featuring instructions designed to accelerate encryption (e.g., AES support) and by services like LetsEncrypt.org simplifying private key and certificate management, with major cloud vendors offering even more tightly integrated certificate management services for their specific platforms. Beyond securing the transport layer, it is crucial to determine what data requires encryption at rest as well as what data needs extra encryption in transit (at the application layer, OSI layer 7). For example, passwords, credit card numbers, health records, personal information, and business secrets require additional protection, especially if that data falls under privacy laws such as the EU's General Data Protection Regulation (GDPR) or regulations like the PCI Data Security Standard (PCI DSS).
A05:2025 Injection - An injection vulnerability is a system flaw that allows an attacker to insert malicious code or commands (such as SQL or shell code) into a program’s input fields, tricking the system into executing the code as if it were part of the system. This can lead to serious consequences.
A06:2025 Insecure Design - Insecure design represents a broad category of weaknesses, described as “missing or ineffective control design.” Insecure design is not the source of all other Top Ten risk categories. Note that there is a distinction between insecure design and insecure implementation. We differentiate between design flaws and implementation defects because they have different root causes, occur at different stages in the development process, and require different remediations. A secure design can still suffer from implementation defects leading to vulnerabilities that may be exploited. Conversely, an insecure design cannot be fixed by a perfect implementation because the necessary security controls were never created to defend against specific attacks. One factor contributing to insecure design is the lack of business risk profiling inherent in the software or system being developed, leading to a failure to determine the required level of security design.
A07:2025 Authentication Failures - This vulnerability is present when an attacker is able to trick a system into recognising an invalid or incorrect user as legitimate.
A08:2025 Software or Data Integrity Failures - Software and data integrity failures relate to code and infrastructure that does not protect against invalid or untrusted code/data being treated as trusted and valid. An example is when an application relies on plugins, libraries, or modules from untrusted sources, repositories, and content delivery networks (CDNs). An insecure CI/CD pipeline without consuming and providing software integrity checks can introduce the potential for unauthorised access, insecure or malicious code, or system compromise. Another example is a CI/CD pipeline that pulls code or artifacts from untrusted locations and/or does not verify them before use (by checking the signature or similar mechanism).
A09:2025 Security Logging & Alerting Failures - Without logging and monitoring, attacks and breaches cannot be detected. Without alerting, it is very difficult to respond quickly and effectively during a security incident. Insufficient logging, continuous monitoring, detection, and alerting to initiate active responses can occur at any time.
A10:2025 Mishandling of Exceptional Conditions - Mishandling exceptional conditions in software happens when programs fail to prevent, detect, and respond to unusual and unpredictable situations, which leads to crashes, unexpected behaviour, and sometimes vulnerabilities. This can involve one or more of the following three failures: the application doesn’t prevent an unusual situation from occurring, it doesn’t identify the situation while it is happening, and/or it responds poorly or not at all afterwards.
We will discuss and present practical aspects of:
Broken Access Control
- Practical examples of broken access controls
- Secure access controls and best practices
Security Misconfiguration
- Real-world examples of misconfigurations
- Steps to prevent misconfiguration, including configuration management and automation tools
Cryptographic Failures
- Detailed analysis of cryptographic failures such as weak encryption algorithms or improper key management
- Importance of strong cryptographic mechanisms, secure protocols (SSL/TLS), and examples of modern cryptography in web security
Injection Attacks
- Detailed breakdown of SQL, NoSQL, OS, and LDAP injection
- Mitigation techniques using prepared statements, parameterized queries, and escaping inputs
Insecure Design
- We'll explore design flaws that can lead to vulnerabilities, such as improper input validation
- We'll study strategies for secure architecture and secure design principles
Authentication Failures
- Common authentication issues
- Secure authentication strategies, such as multi-factor authentication and proper session handling
Software and Data Integrity Failures
- Focus on issues like untrusted software updates and data tampering
- Safe update mechanisms and data integrity checks
Security Logging and Monitoring Failures
- Importance of logging security-relevant information and monitoring for suspicious activities
- Tools and practices for proper logging and real-time monitoring to detect breaches early
Requirements
- A general understanding of the web development lifecycle
- Experience in web application development and security
Audience
- Web developers
- Technical leaders
Testimonials (7)
That every technical lesson came with multiple practical exercises to nail down the concepts.
Andrei-Calin Bajea
Course - OWASP Top 10 2025
very dynamic and flexible training!
Valentina Giglio - Fincons SPA
Course - OWASP Top 10
Laboratory exercises
Pietro Colonna - Fincons SPA
Course - OWASP Top 10
The interactive components and examples.
Raphael - Global Knowledge
Course - OWASP Top 10
Hands-on approach and Trainer Knowledge
RICARDO
Course - OWASP Top 10
The knowledge of the trainer was phenomenal
Patrick - Luminus
Course - OWASP Top 10
exercises, even if outside of my comfort zone.