Skip to main content

Every exercise is indexed by name, CWE, OWASP, MITRE ATT&CK, CIS, NIST CSF, GDPR and EU AI Act reference.

Try

Application Security
for Developers

Run the exploit in a real browser against a deliberately vulnerable app, then write the fix that stops it.

22 hands-on exercises across the OWASP Top 10 for web applications. Free to play, no sign-up required.

Covers the languages your team ships in

The vulnerable code and its fix are shown in the language your developers work in every day.

  • JavaScript
  • TypeScript
  • Java
  • C#
  • Python
  • Scala
  • PHP
  • Ruby
  • Go
  • Kotlin
1

OWASP Top 10 for Web Applications

Clickjacking

Steal a click on a bank approval button.

  • OWASPA02:2025
  • CWE-1021
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Command Injection

Chain a second command onto a server-side tool.

  • OWASPA05:2025
  • CWE-78
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Components with Known Vulnerabilities

Get code execution through an outdated library.

  • OWASPA03:2025
  • CWE-1104
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Cross-Site Request Forgery

Move money from a page the victim never trusted.

  • OWASPA01:2025
  • CWE-352
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Directory Traversal

Read system files through a download link.

  • OWASPA01:2025
  • CWE-22
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

DOM XSS

Trigger XSS the server never sees.

  • OWASPA05:2025
  • CWE-79
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Forced Browsing

Pull an employee PII export from an unlinked route.

  • OWASPA01:2025
  • CWE-425
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Horizontal Privilege Escalation

Change one digit and read another customer.

  • OWASPA01:2025
  • CWE-639
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Host Header Injection

Redirect a password-reset email to a lookalike domain.

  • OWASPA02:2025
  • CWE-644
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Insecure URL Redirect

Hide a phishing page behind a real login.

  • OWASPA01:2025
  • CWE-601
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Leftover Debug Code

Pull production secrets from a forgotten debug route.

  • OWASPA02:2025
  • CWE-489
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

PII in URL

Lift personal data straight out of a link.

  • OWASPA04:2025
  • CWE-598
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Reflected XSS

Craft a malicious URL that runs the moment it opens.

  • OWASPA05:2025
  • CWE-79
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Server-Side Request Forgery

Make the server fetch its own cloud credentials.

  • OWASPA01:2025
  • CWE-918
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Session Fixation

Plant a session id and inherit the victim login.

  • OWASPA07:2025
  • CWE-384
  • ATT&CKT1539
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

SQL Injection

Dump a database through one unguarded lookup form.

  • OWASPA05:2025
  • CWE-89
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Stored XSS

Plant a script in a comment and watch it fire.

  • OWASPA05:2025
  • CWE-79
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Token Exposure in URL

Replay a session token harvested from a referrer log.

  • OWASPA07:2025
  • CWE-598
  • ATT&CKT1539
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

User Enumeration

Harvest a verified customer list from a login form.

  • OWASPA07:2025
  • CWE-204
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Vertical Privilege Escalation

Forge a role claim and become an administrator.

  • OWASPA01:2025
  • CWE-269
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

Weak Randomness

Predict a password-reset token and take the account.

  • OWASPA04:2025
  • CWE-330
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

XXE Injection

Read the password file through an XML upload.

  • OWASPA02:2025
  • CWE-611
  • CIS 16
  • NIST CSFPR.PS
Play Exercise

The Developer Track

Application security split by attack surface. Free, hands-on, no sign-up.

Frequently asked questions

What is application security training?

Application security training teaches developers to find and fix the vulnerability classes that attackers actually exploit, such as injection, broken access control, and cross-site scripting. It targets the people writing the code, not the general workforce.

Every exercise here puts you in a simulated workstation with a real browser and a deliberately vulnerable web app. You run the attack yourself, then apply the secure pattern that closes it.

Which OWASP Top 10 risks do these exercises cover?

The course spans injection (SQL and command), broken access control (horizontal and vertical privilege escalation, forced browsing), cryptographic and authentication failures (weak randomness, session fixation), and security misconfiguration (leftover debug code, vulnerable dependencies).

Cross-site scripting is covered in all three forms: stored, reflected, and DOM-based. Each exercise pairs the exploit with the remediation.

Do I need to know how to code to complete these?

Basic familiarity with web development helps, since the fixes are shown as code changes such as swapping a concatenated query for a parameterized one.

You do not need to write code from scratch. The exercises walk you through reading the vulnerable handler, spotting the bug, and reviewing the corrected version.

Does this satisfy PCI DSS secure-coding training requirements?

PCI DSS Requirement 6.2 covers secure software development, and 12.6 covers security awareness for staff. Developers who write code touching cardholder data fall under both.

These exercises provide the hands-on secure-coding component, and completion records export to your LMS through SCORM or LTI for audit evidence.

See RansomLeak in Action

Try the free exercises or book a demo to see analytics, SCORM export, SSO, and custom content in your environment.