Materials by Adam Leskis

Tutorials, challenges, courses, skill paths, playgrounds, and more — search the whole library in one place.

Challenge

Harden a Django GraphQL API: Five Classic Flaws

A stock Django + Strawberry GraphQL service ships with five common weaknesses. Probe each one from the terminal, fix it in the real project, and watch the lab confirm the remediation against the live endpoint.

See all challenges →
Playground on  Kubernetes, Security

OWASP K8s Vulnerable Cluster

This playground presents a k3s cluster that has randomized security vulnerabilities injected based on the OWASP Kubernetes Top 10 list for 2025. Run a scan to find what's wrong, then fix it and get another random vulnerability automatically injected. Play as long as you like!

See all playgrounds →