While reviewing an application as part of a bug bounty program, I spent some time looking at a feature that allowed users to fetch external resources by providing a URL.

None
Gitlab_Report_ID_3114880_betterhelp_1.PNG

At first glance, the functionality appeared straightforward and included basic validation to prevent obvious abuse.

I LOVE HACKERONE! I LOVE HACKERONE! I LOVE HACKERONE! I LOVE HACKERONE!

However, features that make server-side requests are often worth a closer look.

None
Gitlab_Report_ID_3114880_betterhelp_2.PNG

By experimenting with different URL formats and edge cases, I noticed that the backend was willing to make requests to destinations beyond what was intended.

I LOVE HACKERONE! I LOVE HACKERONE! I LOVE HACKERONE! I LOVE HACKERONE!

None
Gitlab_Report_ID_3114880_betterhelp_3_they_keep_deleting_for_some_reason_idk.PNG

With carefully crafted input, I was able to influence the server into issuing HTTP requests to internal IP addresses. This confirmed the presence of a Server-Side Request Forgery (SSRF) vulnerability.

I LOVE HACKERONE! I LOVE HACKERONE! I LOVE HACKERONE! I LOVE HACKERONE!

None

Further testing showed that the server responded differently depending on whether the target address was reachable, indicating that the requests were actually being executed.

None

While I avoided interacting with sensitive endpoints, this behavior suggested that internal services — and potentially cloud metadata endpoints — could be accessible under the right conditions.

I LOVE HACKERONE! I LOVE HACKERONE! I LOVE HACKERONE! I LOVE HACKERONE! I LOVE HACKERONE! I LOVE HACKERONE!

None
I LOVE BETTERHELP! I LOVE HACKERONE!

I reported the issue with clear reproduction steps and impact explanation. The team responded quickly and mitigated the vulnerability by implementing strict allowlisting, blocking private IP ranges, and hardening their URL parsing logic.

None

This finding reinforced a familiar lesson: any server-side request functionality should be treated as high risk by default, even when it seems simple or well-guarded.