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 beyond their intended permissions. Failures in this area typically result in unauthorized information disclosure, modification or destruction of data, or the execution of business functions outside the user's authorized limits.
A02:2025 Security Misconfiguration - This occurs when a system, application, or cloud service is configured incorrectly from a security standpoint, thereby creating vulnerabilities.
A03:2025 Software Supply Chain Failures - These are breakdowns or compromises in the process of building, distributing, or updating software. They are often caused by vulnerabilities or malicious alterations in third-party code, tools, or 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). Past challenges regarding CPU performance and private key/certificate management have been addressed by modern CPUs offering instructions to accelerate encryption (e.g., AES support) and simplified management via services like LetsEncrypt.org, with major cloud vendors providing even more tightly integrated certificate management services. Beyond securing the transport layer, it is crucial to determine what data requires encryption at rest and what needs additional encryption in transit (at the application layer, OSI layer 7). For instance, passwords, credit card numbers, health records, personal information, and business secrets require extra protection, particularly if such 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. This tricks the system into executing the code as if it were legitimate, potentially leading to severe consequences.
A06:2025 Insecure Design - Insecure design is a broad category representing various weaknesses, described as “missing or ineffective control design.” It is important to note that insecure design is not the source of all other Top Ten risk categories. There is a distinct difference between insecure design and insecure implementation; we differentiate between design flaws and implementation defects because they have different root causes, occur at different stages of the development process, and require different remediations. A secure design can still suffer from implementation defects that lead to exploitable vulnerabilities. Conversely, an insecure design cannot be fixed by 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 recognizing an invalid or incorrect user as legitimate.
A08:2025 Software or Data Integrity Failures - These failures relate to code and infrastructure that do not protect against invalid or untrusted code or data being treated as trusted. An example is an application relying on plugins, libraries, or modules from untrusted sources, repositories, and content delivery networks (CDNs). An insecure CI/CD pipeline that lacks software integrity checks can introduce the potential for unauthorized access, insecure or malicious code, or system compromise. Another example is a CI/CD process that pulls code or artifacts from untrusted locations and/or fails to verify them before use (e.g., by checking signatures).
A09:2025 Security Logging & Alerting Failures - Without logging and monitoring, attacks and breaches cannot be detected. Furthermore, without alerting mechanisms, it is very difficult to respond quickly and effectively during a security incident. Insufficient logging, continuous monitoring, detection, and alerting to initiate active responses occurs whenever these elements are lacking.
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. This leads to crashes, unexpected behavior, and sometimes vulnerabilities. This can involve one or more of the following failures: the application does not prevent an unusual situation from occurring, it does not identify the situation as it happens, and/or it responds poorly or not at all to the situation afterward.
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, like improper input validation
- We'll study strategies for secure architecture and secure design principles
Authentication Failures
- Common authentication issues
- Secure authentication strategies, like 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.