Exercises
| Exercise | Avg. Time | Difficulty | Solved by | Tier | |
|---|---|---|---|---|---|
|
|
GHSA-69X8-A
This challenge covers the review of a vulnerability in a python codebase and its patch
|
7 | PRO | ||
|
|
GHSA-69X8-B
This challenge covers the review of a vulnerability in a python codebase and its patch
|
7 | PRO | ||
|
|
PHP eval() Class Hoisting RCE
This challenge covers an unauthenticated remote code execution reproducing MantisBT CVE-2026-49273: a value is validated with eval('return; ...'), but PHP hoists class declarations past the return; at compile time, letting an attacker pre-declare the class the app then autoloads and instantiates.
|
< 1 Hr. | 11 | PRO | |
|
|
Fastjson @JSONType RCE on default embedded Tomcat (/proc/self/fd)
This challenge is the second in the fastjson @JSONType series. Unlike lab I it runs on a stock Spring Boot app on the latest JDK that parses on the Tomcat request thread with no classloader wiring. A direct jar:http payload only yields SSRF there; remote code execution comes from the two-request /proc/self/fd variant, whose file: class name has no '//', so Tomcat's own webapp classloader defines it on the request thread.
|
2-4 Hr. | 4 | PRO | |
|
|
Fastjson @JSONType jar: URL RCE
This challenge covers a remote code execution in fastjson 1.2.83 with autoType disabled, by abusing the @JSONType trust probe in ParserConfig.checkAutoType together with a jar:http:// class name loaded through Spring Boot's LaunchedURLClassLoader on JDK 8.
|
< 1 Hr. | 4 | PRO | |
|
|
wp2shell: CVE-2026-63030 & CVE-2026-60137
CVE-2026-63030
CVE-2026-60137
WordPress
Remote Code Execution
This challenge covers gaining a shell on WordPress by chaining CVE-2026-63030 and CVE-2026-60137.
|
2-4 Hr. | 10 | PRO | |
|
|
H2 INIT Parameter RCE II | < 1 Hr. | 11 | PRO | |
|
|
CVE-2026-XX957
This challenge covers the review of a CVE in a typescript codebase and its patch
|
< 1 Hr. | 30 | PRO | |
|
|
CVE-2026-XX464
This challenge covers the review of a CVE in a typescript codebase and its patch
|
30 | PRO | ||
|
|
CVE-2026-XX792
This challenge covers the review of a CVE in a typescript codebase and its patch
|
30 | PRO | ||
|
|
H2 INIT Parameter RCE | < 1 Hr. | 14 | PRO | |
|
|
SAML: Transform RCE
This exercise covers the exploitation of an RCE in SAML by leveraging a vulnerable version of xmlsec
|
< 1 Hr. | 11 | PRO | |
|
|
Web Fundamentals: WebDAV Introduction | 71 | PRO | ||
|
|
Web Fundamentals: Proxy | 72 | PRO | ||
|
|
Web Fundamentals: Browser Storage | 76 | PRO | ||
|
|
Web Fundamentals: WebSockets | 88 | PRO | ||
|
|
Web Fundamentals: GraphQL | 88 | PRO | ||
|
|
Web Fundamentals: Same-Origin Policy Introduction | 84 | PRO | ||
|
|
Web Fundamentals: API | 95 | PRO | ||
|
|
Web Fundamentals: CORS Introduction | 85 | PRO | ||
|
|
Web Fundamentals: Databases | 101 | PRO | ||
|
|
Web Fundamentals: Sessions | 95 | PRO | ||
|
|
Web Fundamentals: Client-Side Code | 112 | PRO | ||
|
|
Web Fundamentals: Server-Side Code | 109 | PRO | ||
|
|
JS Sandbox: static-eval Function Property Blocked
This exercise covers bypassing post-2.0 static-eval that blocks member access on functions, using anonymous function bodies.
|
< 1 Hr. | 22 | PRO | |
|
|
JS Sandbox: vm.runInNewContext Null Prototype
This exercise covers escaping vm.runInNewContext when the context is created with Object.create(null) so this.constructor is undefined.
|
< 1 Hr. | 22 | PRO | |
|
|
JS Sandbox: vm.runInNewContext Restricted Globals
This exercise covers escaping vm.runInNewContext when specific safe objects are provided but frozen, using Error objects or Promise callbacks.
|
< 1 Hr. | 21 | PRO | |
|
|
JS Sandbox: static-eval Direct Constructor Access
This exercise covers exploiting the original unpatched static-eval with unrestricted property access on functions.
|
< 1 Hr. | 23 | PRO | |
|
|
JS Sandbox: static-eval Destructuring Parameter Bypass
This exercise covers bypassing static-eval parameter validation using destructured parameters (ObjectPattern).
|
< 1 Hr. | 15 | PRO | |
|
|
CVE-2026-XX242
This challenge covers the review of a CVE in a python codebase and its patch
|
< 1 Hr. | 50 | PRO |
Showing 1–30 of 758 exercises
Free Labs of the Month