/

CVE-2026-106459

Severity:

HIGH RISK

(8.5)

SSRF (CWE-918) in Backstage Sentry Scaffolder Backend

CVE-2026-106459

Analyzed

Vulnerability type

Category:

Server-Side Request Forgery

CWE:

CWE-200, CWE-918

Impact:

Credential and Information Disclosure

Severity:

HIGH RISK

(8.5)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

Improper input validation in Backstage Sentry scaffolder actions may allow an authenticated internal user to make the backend send requests to unintended destinations.

If the backend can reach attacker-selected or sensitive endpoints, the issue may disclose Sentry integration credentials or other response data. The resulting impact depends on network access and the privileges associated with the configured token.

Improper input validation in Backstage Sentry scaffolder actions may allow an authenticated internal user to make the backend send requests to unintended destinations.

If the backend can reach attacker-selected or sensitive endpoints, the issue may disclose Sentry integration credentials or other response data. The resulting impact depends on network access and the privileges associated with the configured token.

Affected context

The issue affects Backstage deployments using vulnerable versions of the

@backstage/plugin-scaffolder-backend-module-sentry package and enabling the

affected Sentry scaffolder actions. Risk is higher when authenticated internal

users can execute those actions, the backend has broad outbound network

reachability, or Sentry tokens have permissions beyond the minimum required.

The issue affects Backstage deployments using vulnerable versions of the

@backstage/plugin-scaffolder-backend-module-sentry package and enabling the

affected Sentry scaffolder actions. Risk is higher when authenticated internal

users can execute those actions, the backend has broad outbound network

reachability, or Sentry tokens have permissions beyond the minimum required.

Exploit preconditions

  • Attack surface: Backstage Sentry scaffolder actions
  • Required access: Authenticated internal-user access with permission to execute the affected actions
  • Trigger point: Processing attacker-influenced destination or request parameters within a scaffolder action
  • Environmental requirement: The Backstage backend must be able to reach the unintended destination
  • Why exploitation is possible: Input validation does not sufficiently constrain outbound request targets, allowing the server to act as a request intermediary and potentially expose integration credentials
  • Attack surface: Backstage Sentry scaffolder actions
  • Required access: Authenticated internal-user access with permission to execute the affected actions
  • Trigger point: Processing attacker-influenced destination or request parameters within a scaffolder action
  • Environmental requirement: The Backstage backend must be able to reach the unintended destination
  • Why exploitation is possible: Input validation does not sufficiently constrain outbound request targets, allowing the server to act as a request intermediary and potentially expose integration credentials

Why this happens

The underlying bug is insufficient validation and restriction of user-influenced destinations in server-side request logic. When a backend accepts destination-related input without enforcing an appropriate allowlist, URL policy, or network-boundary check, an authorized user may cause the server to issue requests outside the intended Sentry integration scope.

This behavior maps primarily to CWE-918: Server-Side Request Forgery (SSRF). The resulting disclosure of credentials or response content also relates to CWE-200: Exposure of Sensitive Information to an Unauthorized Actor.

The underlying bug is insufficient validation and restriction of user-influenced destinations in server-side request logic. When a backend accepts destination-related input without enforcing an appropriate allowlist, URL policy, or network-boundary check, an authorized user may cause the server to issue requests outside the intended Sentry integration scope.

This behavior maps primarily to CWE-918: Server-Side Request Forgery (SSRF). The resulting disclosure of credentials or response content also relates to CWE-200: Exposure of Sensitive Information to an Unauthorized Actor.

Potential impact

  • The backend may contact internal, private, or otherwise unintended network destinations
  • Sentry integration credentials or sensitive response data could be disclosed
  • An attacker could make requests using the privileges of the Backstage backend
  • Internal services may be probed or accessed if network controls permit it
  • Misuse of a highly privileged Sentry token could increase downstream impact
  • The backend may contact internal, private, or otherwise unintended network destinations
  • Sentry integration credentials or sensitive response data could be disclosed
  • An attacker could make requests using the privileges of the Backstage backend
  • Internal services may be probed or accessed if network controls permit it
  • Misuse of a highly privileged Sentry token could increase downstream impact

General mitigation guidance

Mitigation generally focuses on reducing trust in action parameters and constraining all server-side outbound requests.

Common defensive patterns include:

  • Restricting destinations through explicit host, scheme, port, and network-range allowlists
  • Rejecting loopback, link-local, private, metadata-service, and other non-approved address ranges
  • Validating destinations after resolution and accounting for redirects and DNS rebinding
  • Keeping Sentry credentials server-side and preventing their inclusion in arbitrary responses
  • Applying least privilege and narrow scopes to configured integration tokens
  • Limiting which users and workflows can execute network-capable scaffolder actions
  • Enforcing egress network policies so the backend can reach only required services
  • Returning minimal, sanitized action results rather than forwarding raw upstream responses

Mitigation generally focuses on reducing trust in action parameters and constraining all server-side outbound requests.

Common defensive patterns include:

  • Restricting destinations through explicit host, scheme, port, and network-range allowlists
  • Rejecting loopback, link-local, private, metadata-service, and other non-approved address ranges
  • Validating destinations after resolution and accounting for redirects and DNS rebinding
  • Keeping Sentry credentials server-side and preventing their inclusion in arbitrary responses
  • Applying least privilege and narrow scopes to configured integration tokens
  • Limiting which users and workflows can execute network-capable scaffolder actions
  • Enforcing egress network policies so the backend can reach only required services
  • Returning minimal, sanitized action results rather than forwarding raw upstream responses

How teams detect issues like this

Detection can combine source analysis, runtime monitoring, and policy enforcement:

  • Use static analysis to identify outbound HTTP clients that consume action or template parameters
  • Review URL parsing, redirect handling, DNS resolution, and private-address filtering
  • Flag scaffolder actions that construct requests from user-controlled strings
  • Monitor backend egress for unexpected destinations, cloud metadata access, private-network requests, or unusual Sentry-token usage
  • Enforce repository and CI policies requiring approved destination allowlists for network-capable actions
  • Review authorization policies to ensure only appropriate users can invoke actions with outbound network access
  • Automated code-review and dependency-analysis tools may help identify SSRF patterns and vulnerable package usage

Detection can combine source analysis, runtime monitoring, and policy enforcement:

  • Use static analysis to identify outbound HTTP clients that consume action or template parameters
  • Review URL parsing, redirect handling, DNS resolution, and private-address filtering
  • Flag scaffolder actions that construct requests from user-controlled strings
  • Monitor backend egress for unexpected destinations, cloud metadata access, private-network requests, or unusual Sentry-token usage
  • Enforce repository and CI policies requiring approved destination allowlists for network-capable actions
  • Review authorization policies to ensure only appropriate users can invoke actions with outbound network access
  • Automated code-review and dependency-analysis tools may help identify SSRF patterns and vulnerable package usage

Sources

SourceLink
github.comgithub.com/backstage/backstage/commit/b0170fad7962fb8c3d71366b5265cf283c7bbcf7
github.comgithub.com/backstage/backstage/releases/tag/v1.54.8
github.comgithub.com/backstage/backstage/releases/tag/v1.55.0
github.comgithub.com/backstage/backstage/security/advisories/GHSA-g734-fhp4-7mfp

Frequently asked

questions

It can be reachable through the Backstage application, but exploitation generally requires an authenticated internal user who is authorized to execute the affected Sentry scaffolder actions. The backend must also have network access to a useful unintended destination.

An attacker needs valid authentication and sufficient authorization to invoke the vulnerable actions or a workflow that invokes them. Anonymous access alone is not expected to satisfy the primary precondition.

Constrain outbound destinations with strict allowlists, reject private and sensitive network ranges, handle redirects safely, and ensure integration credentials are never exposed in action responses.

Treat all scaffolder parameters as untrusted, apply least privilege to tokens and action permissions, enforce backend egress controls, and review every user-influenced outbound request path.

It can be reachable through the Backstage application, but exploitation generally requires an authenticated internal user who is authorized to execute the affected Sentry scaffolder actions. The backend must also have network access to a useful unintended destination.

An attacker needs valid authentication and sufficient authorization to invoke the vulnerable actions or a workflow that invokes them. Anonymous access alone is not expected to satisfy the primary precondition.

Constrain outbound destinations with strict allowlists, reject private and sensitive network ranges, handle redirects safely, and ensure integration credentials are never exposed in action responses.

Treat all scaffolder parameters as untrusted, apply least privilege to tokens and action permissions, enforce backend egress controls, and review every user-influenced outbound request path.

Find out what's already
exploitable in your codebase.