🚀 Submit a Challenge — SecDim AppSec Village CTF at DEF CON 34 and Win a ROG Xbox Ally

OWASP Top 10

17h 40mBeginnerJavaC#JavaScriptPythonGoRubyFeatured

The OWASP Top 10 2025 is the industry-standard reference for critical web application security risks. This course teaches each category through a real-world breach -- from the Capital One SSRF to the Uber logging failure to Heartbleed -- so you understand not just what the vulnerability is, but what it enables an attacker to do and why the fix works. Every module follows the same structure: find the vulnerability in code, trace the exploit, apply the fix. Where a full SecDim Learn course exists for a category -- authorization, supply chain, threat modelling, frontend security -- this course connects to it rather than duplicating it, giving you a complete map of the attack surface and where to go deeper.

Topics

  1. Introduction

    Lesson5m

    Overview of OWASP Top 10 course, prerequisites and modules

  2. Broken Access Control (A01:2025)

    Video15m

    Introduces A01, the authentication vs. authorization distinction, and links to the Tenant Zero course for complete coverage of IDOR, privilege escalation, mass assignment, fine-grained authorization, and AI-assisted review.

  3. TOCTOU Race Conditions (A01:2025)

    Video15m

    Covers time-of-check/time-of-use bugs where the state verified during an access decision differs from the state acted on. Uses the Steam privilege escalation incident.

  4. ToCToU Lab

    Challenge30m

    Complete this hands-on lab to put your learning into practice.

  5. Security Misconfiguration (A02:2025)

    Video15m

    Covers HTTP security headers, CORS policy, and cookie attributes. Links to the Frontend Security course for full coverage.

  6. Insecure Defaults (A02:2025)

    Video20m

    Covers default credentials, debug endpoints, overpermissioned cloud resources, and the metadata endpoint exposure pattern.

  7. Verbose Error Responses (A02:2025)

    Video15m

    Covers how stack traces, database errors, and internal paths handed to callers give attackers a map of application internals.

  8. Software Supply Chain Failures (A03:2025)

    Video15m

    Introduces the supply chain attack surface using the XZ Utils, Codecov, and SolarWinds incidents. Links to the Supply Chain Security course for full coverage.

  9. Identifying Sensitive Data (A04:2025)

    Video15m

    Uses the 2013 Adobe breach to show how misclassifying sensitive data leads to cryptographic failures. Covers where sensitive data reaches unprotected destinations: logs, responses, URLs, and error messages.

  10. Common Cryptographic Mistakes (A04:2025)

    Video20m

    Covers MD5/SHA1 for passwords (LinkedIn breach), ECB mode, hardcoded keys, insecure randomness, and certificate validation failures.

  11. Secret and Key Management (A04:2025)

    Video20m

    Uses the 2021 Travis CI exposure to frame the secret lifecycle: creation, storage, distribution, and rotation. Covers secrets managers and the paths through which secrets reach logs and version control.

  12. Injection in the Browser (A05:2025)

    Video15m

    Introduces injection as a vulnerability class and XSS as its browser-side form. Links to the Frontend Security course for complete coverage.

  13. Cross Site Scripting (XSS) Lab

    Challenge30m

    Complete this hands-on lab to put your learning into practice.

  14. SQL Injection (A05:2025)

    Video20m

    Covers string-concatenated queries, parameterized queries, and ORM pitfalls that reintroduce injection through raw query interfaces.

  15. SQL Injection Lab

    Challenge30m

    Complete this hands-on lab to put your learning into practice.

  16. Command Injection (A05:2025)

    Video15m

    Covers user input reaching shell execution functions and safe argument-list alternatives across Python, Java, Node, and Go.

  17. Command Injection Lab

    Challenge30m

    Complete this hands-on lab to put your learning into practice.

  18. Server-Side Template Injection (A05:2025)

    Video15m

    Covers template engines that evaluate user-supplied expressions, escalating to remote code execution. Uses the Uber Rider RCE incident.

  19. SSTI Lab

    Challenge30m

    Complete this hands-on lab to put your learning into practice.

  20. ReDoS (A05:2025)

    Video15m

    Covers pathological regular expressions that produce exponential matching time. Uses the Stack Overflow outage incident.

  21. ReDoS Lab

    Challenge30m

    Complete this hands-on lab to put your learning into practice.

  22. Unicode Injection (A05:2025)

    Video15m

    Covers confusable Unicode characters as an injection vector in identifiers and routing logic. Uses the Spotify Bigbird incident.

  23. Unicode Injection Lab

    Challenge30m

    Complete this hands-on lab to put your learning into practice.

  24. Insecure Design (A06:2025)

    Video15m

    Distinguishes design-level vulnerabilities from implementation bugs. Links to the Rapid Threat Modelling course for full coverage.

  25. Server-Side Request Forgery (A06:2025)

    Video20m

    Covers server-side logic fetching attacker-controlled URLs. Uses the Capital One breach as the exploitation chain.

  26. SSRF Lab

    Challenge30m

    Complete this hands-on lab to put your learning into practice.

  27. Business Logic Flaws (A06:2025)

    Video20m

    Covers workflow bypasses, negative values, single-use constraint failures, and race conditions -- the class no scanner finds.

  28. Authentication Failures (A07:2025)

    Video15m

    Covers browser token storage, HttpOnly cookies, and SPA authentication patterns. Links to the Frontend Security course for full coverage.

  29. Password Storage (A07:2025)

    Video15m

    Covers bcrypt and Argon2id, cost parameter calibration, and transparent migration from MD5/SHA1 without forcing a password reset.

  30. Session and Token Security (A07:2025)

    Video15m

    Introduces session fixation, JWT signature bypass attacks (alg:none, algorithm confusion, JWKS injection), and links to the Tenant Zero course for complete coverage.

  31. Credential Stuffing (A07:2025)

    Video15m

    Covers rate limiting, progressive lockout, MFA, and the bypass patterns that defeat naive implementations. Includes timing equalisation for username enumeration prevention.

  32. Software and Data Integrity (A08:2025)

    Video15m

    Covers CI/CD action pinning and subresource integrity. Links to Supply Chain Security and Frontend Security courses for full coverage.

  33. Insecure Deserialization (A08:2025)

    Video20m

    Covers mass assignment and binary deserialization (pickle, Java serialization) as two forms of the same failure. Uses the 2012 GitHub incident.

  34. Insecure Deserialisation Lab

    Challenge30m

    Complete this hands-on lab to put your learning into practice.

  35. Parser Differentials (A08:2025)

    Video15m

    Covers what code signing guarantees, parser differentials as a bypass class, and the Android Master Key vulnerability.

  36. Parser Differential Lab

    Challenge30m

    Complete this hands-on lab to put your learning into practice.

  37. Security Logging (A09:2025)

    Video15m

    Uses the Uber breach cover-up (1 year undetected) and the Equifax breach (78 days undetected) to frame why logging failures are a vulnerability class. Covers which events make a breach detectable and links to the Secure Logging course.

  38. Numeric Overflow (A10:2025)

    Video20m

    Covers how fixed-width integer arithmetic wraps silently and becomes exploitable. Uses the Boeing 787 electrical shutdown incident.

  39. Boeing 787 Lab

    Lab30m

    In this lab, you will learn how to find, exploit and fix a numeric overflow (integer overflow) vulnerability in a program inspired by Boeing 787 shutdown incident.

  40. Numeric Imprecision (A10:2025)

    Video20m

    Covers floating-point rounding imprecision and approximate representation past 2^53^, and why money and identifiers must not be binary floats. Uses the 1991 Patriot missile failure as the case study.

  41. Unchecked Partial States (A10:2025)

    Video20m

    Covers missing bounds checks, ignored return values, and partial state in security operations. Uses the Heartbleed vulnerability as the case study.