Practice

Practice

Test what you've learned. Switch between a searchable glossary, flip-cards, and a quick quiz.

RCE

Remote Code Execution — running attacker-chosen code on the target. Unauthenticated RCE is CRITICAL.

XSS

Cross-Site Scripting — injecting script into pages others view. Stored XSS firing for all users is HIGH.

SQLi

SQL Injection — manipulating a database query via unescaped input. Check every sql.raw() and dynamic identifier.

SSRF

Server-Side Request Forgery — making the server fetch an attacker-controlled URL. Watch redirects, DNS rebinding, webhooks.

IDOR

Insecure Direct Object Reference — accessing another user's object by changing an ID, with no authorization check.

CSRF

Cross-Site Request Forgery — tricking a logged-in user's browser into a state-changing request. MEDIUM when it has real effect.

TOCTOU / race

Time-Of-Check to Time-Of-Use — a gap between checking and using lets state change in between. The classic check-then-act bug.

Path traversal

Escaping the intended directory via ../, symlinks, encoded sequences or null bytes to read/write arbitrary files.

Zip slip

Archive extraction writing entries outside the target directory because paths aren't constrained.

Second-order

Data safe when stored becomes dangerous when later used in a different context — a SQL-safe value used as a JSON-path key.

Open redirect

A redirect parameter (redirect/return/next/url) sent somewhere unvalidated — a building block for token theft and phishing.

Defense-in-depth

Layered controls. If Layer A already blocks the attack, the absence of Layer B is a hardening note, not a vulnerability.

Trust boundary

Where untrusted input crosses into a trusted context. Bugs cluster where one component implicitly trusts another.

Baseline comparable

Comparable mainstream software used to calibrate findings. Exploited there → stronger finding; never exploited → understand why.

Parser differential

Two components parse the same input differently — the router and the app disagree on a URL, opening a bypass.

False positive

A reported "vulnerability" that isn't real. Phase 3's whole job is to kill these adversarially.