Examples: User profiles, search results, dashboards
How to Spot the Difference
# Static: File extension, same content always
curl http://site.com/style.css
curl http://site.com/logo.png
# Dynamic: Different results, personalization
curl http://site.com/api/time # Changes every second
curl http://site.com/search?q=hello # Different query = different result
🚀 Your Challenge
The server has both static and dynamic endpoints. Find the dynamic one that generates the flag!
Static endpoints return the same content every time.
Dynamic endpoints may return different content.
Link your SSH key, then connect with: ssh hacker@dojo.idg.ctf
Simple API
🎯 What You'll Learn
What an API is
REST API basics
Making API requests with curl
📖 The Concept
An API (Application Programming Interface) lets programs talk to each other.
Web APIs
Instead of HTML pages, APIs return structured data (usually JSON).
Browser: GET /about → <html>About Us</html>
API: GET /api/users → [{"name": "John"}, {"name": "Jane"}]
REST API Conventions
REST APIs use URLs as resource identifiers:
GET /api/users - List all users
GET /api/users/123 - Get user 123
POST /api/users - Create new user
PUT /api/users/123 - Update user 123
DELETE /api/users/123 - Delete user 123
Making API Requests
# GET request (retrieve data)
curl http://api.example.com/users
# POST request (send data)
curl -X POST -H "Content-Type: application/json" \
-d '{"name": "John"}' http://api.example.com/users
# With authentication
curl -H "Authorization: Bearer TOKEN" http://api.example.com/users