Back to Technical Mode

Burp Suite Interception

A proxy tool like Burp Suite sits between the browser and the server, letting an attacker (or a tester) forward, drop, or modify any request in flight. This is why server-side validation can never be optional.

Client-side validation is a UX convenience, not a security control
Any header, cookie, or body field can be freely rewritten in an intercepting proxy
The server must re-validate everything, exactly as if the browser weren't there
'Forward', 'Drop', and 'Modify & Forward' are the three fates of every intercepted request

Want this flow explained in detail as it plays?

POST/api/account/update-role

Headers

Host:app.flowground.dev
Content-Type:application/json
Cookie:session=eyJhbGciOi...redacted

Body

Loading...

Quick-Insert Payloads

Defense in depth

  • Server-side authorization check: does the authenticated session actually have permission to grant "admin"?
  • Role changes require re-authentication or a step-up MFA challenge
  • All privilege changes are written to an immutable audit log with the actor's identity

Vulnerable vs. Fixed

// DO NOT DO THIS
app.post("/api/account/update-role", (req, res) => {
  const { userId, role } = req.body;
  db.users.update(userId, { role }); // no permission check
  res.json({ ok: true });
});