On this page
Date
2026-07-06
Read
2 min
Topic
infosec
Tags
infosec · security · bug-bounty
SSRF to internal dashboards: a bug-bounty walkthrough
Server-Side Request Forgery turns your server into my HTTP client. Point it at
169.254.169.254 and a cloud metadata service hands over credentials. Here's a
real-shaped walkthrough of how a benign-looking feature became a full read of an
internal network.
The entry point
A "link preview" endpoint fetched any URL the user submitted and rendered its
<title> and og:image. Classic SSRF surface.
request.http
1 HTTP/1.12
Why this is dangerous
The metadata endpoint requires no authentication — it trusts the network position. A server that fetches attacker-controlled URLs is that trusted position.
Escalation path
timeline
1
Confirm SSRF — fetch a server you control, see the request land.
2
Probe internal ranges — 169.254.169.254, 10.0.0.0/8, localhost ports.
3
Read IAM creds — temporary keys from the metadata service.
4
Pivot — use the keys against internal dashboards and S3.
The fix
Allowlist
owns: which hosts are reachable
Resolve the host, check the *resolved IP* against a denylist — not the string.
IMDSv2
owns: metadata hardening
Session-token metadata defeats the simplest SSRF-to-credentials chain.
🔒
Disclosure note
This composite walkthrough is for education and authorized testing only. Never point these techniques at infrastructure you don't have written permission to test.
Comments
Loading comments…