← Back to arena
A01 · Broken Access Control · Medium

Privilege Echo

A01 · ≈ 30 min · 0 solves

200POINTS
MISSIONDiscover the weakness independently

Explore the application as a real target: map the exposed functionality, inspect requests and responses, build a working exploit, and recover the rotating flag. If you get stuck, the verified official solution is available below as an optional spoiler.

Rules of engagement

Stay inside the generated lab URL. Use only the synthetic accounts and data in this instance. The main SecOne4all site and external systems are out of scope.

Challenge brief

FLAG REQUIREMENTS

What counts as a valid solve

Goal

A downgraded administrator keeps privileged access through authorization data cached in a session.

Required interaction

GET /api/admin/audit.

Completion proof

prove that the protected synthetic resource or action can be reached outside the intended account boundary; the successful workflow returns the current rotating flag.

Session rule

Work only inside your generated lab URL and submit the flag within 30 minutes.

VERIFIED WALKTHROUGH

Official solution

Contains the complete exploitation path. Open it only when you want the spoiler.

Reveal official solutionStep-by-step · verified against the live lab

Official solution · A01 · Privilege Echo

Objective

A downgraded administrator keeps privileged access through authorization data cached in a session.

Steps

  1. Start the isolated lab and open its root page to confirm the scenario.
  2. Review the advertised starting endpoint and compare the trusted identity or object with the target described in the challenge.
  3. Send: GET /api/admin/audit with header X-Lab-Role-Cache: admin
  4. Confirm the JSON response contains the rotating flag field.
  5. Submit that exact flag on the SecOne4all challenge page before stopping or expiring the instance.

Expected proof

A successful response for stale-role-session returns the instance-specific rotating flag. The flag is valid only for the current player and running instance.

Safety boundary

Use only the generated lab URL. No request to the main site, another user, or an external service is part of this solution.