Payloads.
Pick a vulnerability class, learn how to hunt it step by step, grab the payloads that actually work. Curated from PayloadsAllTheThings — the full section is linked under every class.
Path Traversal
Manipulating file-reference variables with dot-dot-slash sequences to access files and directories outside the intended root. Unlike LFI, this is about reading/serving arbitrary files — downloads, static handlers, archive extraction.
Severity guide
High on proven arbitrary file reads (credentials, configs); medium on file-write primitive; impact scales with what the file system holds.
Where to look
entry points to test first01
Download endpoints
/download?file=, /attachment?id=, report/image/file serving — the most common traversal home.
02
Static-file routes
/static/..., /assets/... proxies where a filename joins a base directory.
03
ZIP/archive extraction
Zip Slip: entry names with ../ inside archives escape the extraction directory.
04
Filename parameters
Exports, backups, CSV/JSON downloads named by the client.
05
Image/CDN resolvers
Image fetchers that resolve local paths from a name parameter.
How to hunt it
in order, start to finishTarget static-file routes
/static/, /download?name=, attachment endpoints — anywhere a filename is joined onto a base directory.
Climb with ../
Enough ../ sequences to reach the root, then /etc/passwd (Linux) or /windows/win.ini (Windows).
Encode around filters
%2e%2e%2f (single), %252e%252e%252f (double), %c0%ae (overlong), and fullwidth %uff0e%uff0e%u2215 all defeat different validators.
Try backslashes on Windows
..\ and mixed ..\/ variants matter on IIS/Windows stacks.
Test Zip Slip on extractors
Craft an archive whose entry names are ../../shell.php-style and upload it — extraction outside the target directory is the bug.
Automate the climbing
dotdotpwn handles the fuzzing loop across HTTP/FTP with custom depths.
Filter & validation bypasses
when your first tries get blocked- 01../ stripped? ....// re-forms after stripping; ..././ survives single-pass filters.
- 02Encoded once? Double-encode %252e%252e%252f — some stacks decode twice.
- 03Byte-level filters? Overlong UTF-8 %c0%ae and fullwidth %uff0e normalize to dots after validation.
- 04Absolute paths blocked but used anyway? Some servers accept /etc/passwd directly when the param expects a path.
Impact ladder
what makes it payable- 01Arbitrary file read — credentials, configs, /etc/shadow, application secrets.
- 02Source-code exposure — read application files off disk.
- 03File-write primitive (rare) → webshell placement via Zip Slip.
- 04Windows stacks: win.ini access proves it; SAM hive access escalates.
Payloads
7 · from PayloadsAllTheThings%2e%2e%2fURL-encoded ../ — the baseline encoded traversal.
%252e%252e%252fDouble-encoded ../ — for servers that decode twice.
%c0%ae%c0%ae%c0%afOverlong UTF-8 traversal — bypasses byte-level filters.
%uff0e%uff0e%u2215Fullwidth Unicode ../ — normalization on some stacks re-forms it.
..././Dot-triple climbing — survives naive ../ stripping.
..\/Backslash-slash mix for Windows path handling.
{{BaseURL}}/%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e/etc/passwdNuclei-style template — deep climb to the root canary.
Payload strings, code and technical terms are shown in English on purpose — payloads must be copied exactly as published.
Payloads originate from PayloadsAllTheThings (MIT) — use them only on programs you're authorized to test.