• Browse topics
Login

OWASP Top 10 (2021)

~2hrs 30mins estimated

This is the 2021 OWASP Top 10 Learning Path. To view the latest, please click here.

Save your learning progress.

  • Track your learning progress
  • Keep up to date with the latest vulnerabilities
  • Scan your application code to stay secure
Sign up for free

Broken access control

Access control ensures users operate only within their authorized permissions. When it fails, it can allow unauthorized data access, modification, destruction, or execution of actions beyond a user’s intended privileges.

Cryptographic failures

This is a broad topic that can lead to sensitive data exposure or system compromise. We want to make sure we are always protecting data and storing it securely.

Injection

An injection vulnerability occurs when an application passes untrusted user input to an interpreter, causing the interpreter to execute that input as commands.

Insecure design

Insecure design refers to missing or ineffective security controls and is distinct from insecure implementation, as design flaws and implementation defects have different causes, occur at different stages, and require different fixes.

Security misconfiguration

Security misconfiguration occurs when a system, application, or cloud service is improperly configured, resulting in security vulnerabilities.

Vulnerable and outdated components

By the time you finish reading this, a new vulnerability has been found! We need to make sure we are keeping up-to-date with our components.

Identification and authentication failures

Are you who you say you are? We need to always confirm the users’ identity, authentication, and session management.

Software and data integrity failures

Let’s not rely on plugins, libraries, or modules from untrusted sources! This includes repositories and content delivery networks (CDNs).

Security logging and monitoring failures

How are we supposed to detect a breach when we have no logs? Logging and monitoring are crucial for our applications.

Server-side request forgery

SSRF flaws occur whenever we fetch a remote resource without validating the URL supplied by the user.