EncryptCodecencryptcodec

All Simulations50 simulations

Interactive attack simulations. No setup, no backend — everything runs in your browser. Learn by doing, not by reading.

AvailableReady to play — no install needed
🪟

IDOR

Beginner3 challenges

Change an order ID to read another user's data. Enumerate sequential IDs, exploit mass assignment, then apply ownership checks.

OWASP #1Access ControlMass Assignment
🌐

SSRF

Intermediate3 challenges

Trick the server into fetching internal URLs — Redis session tokens, AWS IAM credentials, admin panels. Apply allowlists to fix it.

OWASP #10AWS MetadataInternal Network
🖱️

Clickjacking

Beginner3 challenges

A transparent iframe tricks you into confirming a bank transfer. Configure X-Frame-Options and CSP frame-ancestors to stop it.

UI RedressingX-Frame-OptionsCSP

Race Condition

Intermediate2 challenges

Fire 5 parallel transfer requests at a $100 account — watch the balance go negative. Fix with SELECT FOR UPDATE.

TOCTOUDB TransactionsConcurrency
🔗

OAuth Misconfig

Intermediate3 challenges

Steal auth codes via open redirect_uri. Bypass CSRF protection with a missing state parameter. Apply both fixes.

OAuth 2.0Open RedirectPKCE
📄

XXE Injection

Intermediate2 challenges

Supply a malicious XML document that references external entities — read /etc/passwd and make the server fetch internal URLs.

OWASP #5XMLSSRF via XXE
💻

Command Injection

Intermediate3 challenges

Inject shell metacharacters into a server-side ping utility. Chain commands with ; and | to read sensitive files and exfiltrate data.

OWASP #3ShellRCE
🌐

Subdomain Takeover

Advanced3 challenges

A dangling CNAME points to an unclaimed cloud resource. Claim it and serve content under the victim's trusted subdomain.

DNSCloudRecon
🗄️

SQL Injection

Beginner3 challenges

Bypass authentication and extract database rows from a vulnerable login form using classic SQLi techniques.

OWASP #1Auth BypassData Leak
💉

Cross-Site Scripting

Beginner3 challenges

Inject malicious scripts into a fake comment board. See reflected vs stored XSS — and what a CSP blocks.

OWASP #3DOMSession Hijack
🎭

CSRF Attack

Intermediate2 challenges

Watch an evil site silently trigger actions on your "bank" using your session cookies — without you knowing.

OWASP #5SessionTokens
🔨

Brute Force Attack

Beginner2 challenges

Simulate an attacker hammering a login endpoint. Configure rate limiting and lockout policies to stop it.

Rate LimitingAuthLockout
📂

Path Traversal

Intermediate3 challenges

Escape the web root using ../../../ sequences and read files you were never supposed to access.

File AccessOWASP #1
🔓

Crack the Hash

Beginner3 challenges

Run a dictionary attack against MD5, SHA-1, and bcrypt hashes. See why MD5 falls in seconds — and why bcrypt stops attacks cold.

Password HashingMD5bcryptDictionary Attack
🔑

JWT Forgery

Intermediate3 challenges

Exploit alg:none bypass, brute-force a weak HMAC secret, and tamper with expired claims to forge admin tokens.

AuthJWTCryptographyOWASP #2
🧩

Padding Oracle

Advanced3 challenges

Flip bytes in an AES-CBC IV and query a padding oracle to decrypt ciphertext one byte at a time — without ever knowing the key.

AES-CBCCryptographySide Channel
📦

Supply Chain Attack

Intermediate3 challenges

Find typosquatted packages, detect dependency confusion, and spot malicious post-install scripts targeting your dependencies.

Supply ChainnpmDependencies
📧

Phishing Email Builder

Beginner3 challenges

Craft a phishing email, detect suspicious indicators, and configure SPF, DKIM, and DMARC defenses.

PhishingEmail SecuritySPF/DKIM/DMARC
🔑

API Key Leak Scanner

Beginner3 challenges

Find hardcoded secrets in code, spot leaked .env files in git diffs, and learn to secure credentials properly.

SecretsGitCredentials
💀

Ransomware Incident

Intermediate3 challenges

Respond to a ransomware attack — isolate, assess damage, and make critical recovery decisions under pressure.

Incident ResponseRansomwareRecovery
⛓️

Zero-Day Exploit Chain

Advanced3 challenges

Chain SSRF → AWS metadata → IAM credential theft into a full cloud compromise. Learn how attackers combine vulnerabilities.

SSRFAWSIAMCloud Security
🌐

DNS Poisoning

Intermediate3 challenges

Inject fake DNS records, redirect traffic to a spoofed login page, and harvest credentials. Then defend with DNSSEC.

DNSDNSSECNetwork
🐳

Container Escape

Advanced3 challenges

Break out of a Docker container — exploit privileged mode, mount the host filesystem, and exfiltrate /etc/shadow.

DockerContainersPrivileges
🔄

JWT Algorithm Swap

Intermediate3 challenges

Swap RS256 to HS256 using the public key as HMAC secret. Forge admin tokens with algorithm confusion.

JWTRS256HS256
📦

Insecure Deserialization

Advanced2 challenges

Craft malicious serialized objects that execute code on the server when deserialized.

OWASP #8RCESerialization
🔮

GraphQL Introspection

Beginner3 challenges

Exploit an open GraphQL endpoint — run introspection queries, discover hidden fields, and extract sensitive data.

GraphQLAPIData Leak
📡

Wi-Fi Evil Twin

Intermediate3 challenges

Set up a rogue access point, intercept unencrypted traffic, and capture credentials via a captive portal.

WiFiMitMRogue AP
🧬

Prototype Pollution

Intermediate3 challenges

Pollute JavaScript's prototype chain via __proto__ injection. Bypass auth checks and escalate privileges.

JavaScriptPrototypeObject
🌍

CORS Exploit

Intermediate3 challenges

Exploit misconfigured CORS headers to steal data cross-origin. Then configure proper CORS defenses.

CORSBrowser SecurityOrigin
⏱️

Server Timing Attack

Advanced2 challenges

Exploit response time differences to guess passwords character by character. Then fix with constant-time comparison.

Side ChannelTimingCryptography
📂

LDAP Injection

Intermediate2 challenges

Inject LDAP queries to bypass authentication and extract directory data.

LDAPInjectionAuth
🍃

NoSQL Injection

Intermediate3 challenges

Exploit MongoDB queries with $gt, $ne, and $where operators to bypass login.

MongoDBNoSQLInjection
💣

XML Bomb

Advanced2 challenges

Craft a Billion Laughs attack with nested XML entities that consume exponential memory.

XMLDoSDTD
📋

HTTP Header Injection

Beginner2 challenges

Inject CRLF characters to add malicious headers and set cookies.

HTTPCRLFHeaders
↗️

Open Redirect

Beginner3 challenges

Exploit unvalidated redirects to send users to phishing sites after login.

RedirectPhishingURL
📝

Mass Assignment

Intermediate2 challenges

Add role:admin to a profile update request and escalate your privileges.

APIPrivilegeObject
📤

Insecure File Upload

Intermediate3 challenges

Bypass file type checks to upload a web shell and achieve remote code execution.

UploadRCEBypass
🍪

Session Fixation

Intermediate2 challenges

Set a victim's session ID before they log in, then hijack their authenticated session.

SessionAuthCookies
🚢

HTTP Request Smuggling

Advanced2 challenges

Exploit CL/TE desync between a proxy and backend to smuggle hidden requests.

HTTPDesyncProxy
📄

Server-Side Template Injection

Advanced3 challenges

Inject {{7*7}} into a template engine and escalate to remote code execution.

SSTIRCETemplate
🔌

WebSocket Hijacking

Intermediate2 challenges

Exploit missing origin validation to hijack WebSocket connections cross-origin.

WebSocketCSWSHOrigin
🔑

Credential Stuffing

Beginner3 challenges

Use leaked credentials from one breach to take over accounts on another service.

PasswordsBreachMFA
🪣

S3 Bucket Misconfiguration

Beginner3 challenges

List and download files from a publicly accessible S3 bucket.

AWSS3Cloud
☸️

Kubernetes Pod Escape

Advanced2 challenges

Steal a service account token and query the Kubernetes API from inside a pod.

K8sContainerRBAC
📝

Log Injection

Beginner2 challenges

Inject fake log entries with newline characters to manipulate audit trails.

LoggingInjectionForensics
🐌

ReDoS

Intermediate2 challenges

Craft input that causes exponential regex backtracking and hangs the server.

RegexDoSPerformance
🔓

Broken Object-Level Auth

Intermediate3 challenges

Change an API resource ID to access other users' data — no ownership check.

OWASP #1IDORAPI
🗝️

JWT Key Injection

Advanced2 challenges

Exploit the JKU header to point JWT verification to your own key server.

JWTJKUKey Confusion

API Rate Limit Bypass

Intermediate3 challenges

Bypass rate limiting with X-Forwarded-For, User-Agent rotation, and header tricks.

APIRate LimitHeaders
🤖

Prompt Injection

Beginner3 challenges

Inject instructions into an AI chatbot to reveal its system prompt and bypass filters.

AILLMPrompt

Frequently Asked Questions