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 often result in unauthorized data disclosure, modification or destruction of all data, or execution of business functions outside user limits.
A02:2025 Security Misconfiguration - This occurs when a system, application, or cloud service is incorrectly configured from a security standpoint, creating vulnerabilities.
A03:2025 Software Supply Chain Failures - These are breakdowns or compromises in the processes of building, distributing, or updating software. They often stem from vulnerabilities or malicious changes in third-party code, tools, or dependencies that the system relies on.
A04:2025 Cryptographic Failures - Generally, all data in transit should be encrypted at the transport layer (OSI layer 4). Modern CPUs now handle previous hurdles like performance and key management via dedicated instructions (e.g., AES support) and simplified services like LetsEncrypt.org. Beyond the transport layer, it is crucial to identify data requiring encryption at rest or extra encryption in transit at the application layer (OSI layer 7). For instance, passwords, credit card numbers, health records, personal information, and business secrets need enhanced protection, especially under privacy laws like GDPR or standards like PCI DSS.
A05:2025 Injection - An injection vulnerability is a system flaw allowing attackers to insert malicious code or commands (like SQL or shell code) into input fields, tricking the system into executing them as legitimate. This can lead to severe consequences.
A06:2025 Insecure Design - This broad category represents weaknesses described as "missing or ineffective control design." It is distinct from insecure implementation, which involves defects in code execution. Secure designs can still have implementation defects leading to exploitable vulnerabilities. However, an insecure design cannot be fixed by perfect implementation because the necessary security controls were never created. A contributing factor is often the lack of business risk profiling during development, failing to determine required security design levels.
A07:2025 Authentication Failures - This vulnerability exists when an attacker tricks a system into accepting an invalid or incorrect user as legitimate.
A08:2025 Software or Data Integrity Failures - These relate to code and infrastructure failing to protect against treating invalid or untrusted code/data as valid. Examples include relying on plugins, libraries, or modules from untrusted sources or CDNs. Insecure CI/CD pipelines lacking integrity checks can introduce unauthorized access or malicious code. Another example is a CI/CD pulling code from untrusted places without verification via signatures.
A09:2025 Security Logging & Alerting Failures - Without logging and monitoring, attacks cannot be detected, and without alerting, quick response is difficult. Insufficient logging, monitoring, detection, and alerting occur when active responses are not initiated.
A10:2025 Mishandling of Exceptional Conditions - This happens when programs fail to prevent, detect, or respond to unusual situations, leading to crashes, unexpected behavior, or vulnerabilities. Failings include not preventing the situation, not identifying it, or responding poorly.
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 foundational understanding of the web development lifecycle
- Experience in web application development and security
Audience
- Web developers
- 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.