Summary
Flyto2 Core contains a server-side request forgery weakness in URL and IP validation that may accept transition-form addresses pointing to internal IPv4 destinations. An authenticated workflow author could use a permitted outbound-request feature to retrieve internal-service data or cloud metadata responses when the host routes the selected address form.
Flyto2 Core contains a server-side request forgery weakness in URL and IP validation that may accept transition-form addresses pointing to internal IPv4 destinations. An authenticated workflow author could use a permitted outbound-request feature to retrieve internal-service data or cloud metadata responses when the host routes the selected address form.
Affected context
The issue may occur in Flyto2 Core deployments that use URL validation for outbound requests through the Execution API, http.get, or related guarded modules. Risk depends on whether the deployment accepts transition-form IPv6 literals, routes them to embedded IPv4 destinations, and exposes internal services or metadata endpoints from the execution environment.
The issue may occur in Flyto2 Core deployments that use URL validation for outbound requests through the Execution API, http.get, or related guarded modules. Risk depends on whether the deployment accepts transition-form IPv6 literals, routes them to embedded IPv4 destinations, and exposes internal services or metadata endpoints from the execution environment.
Exploit preconditions
- Attack surface: Execution API outbound-request functionality and sibling guarded HTTP modules
- Required access: Authenticated permission to author or submit workflows
- Trigger point: URL validation and subsequent outbound request handling
- Why exploitation is possible: Validation checks native private IPv4 and IPv6 ranges without consistently unwrapping IPv4-mapped, IPv4-compatible, 6to4, or NAT64 transition addresses
- Environmental dependency: The selected transition form must be routable by the execution host and resolve toward an internal destination
- Attack surface: Execution API outbound-request functionality and sibling guarded HTTP modules
- Required access: Authenticated permission to author or submit workflows
- Trigger point: URL validation and subsequent outbound request handling
- Why exploitation is possible: Validation checks native private IPv4 and IPv6 ranges without consistently unwrapping IPv4-mapped, IPv4-compatible, 6to4, or NAT64 transition addresses
- Environmental dependency: The selected transition form must be routable by the execution host and resolve toward an internal destination
Why this happens
The underlying bug is incomplete canonicalization of IP address representations before security classification. The validation logic compares resolved addresses against private ranges but does not normalize transition mechanisms that embed or represent IPv4 addresses, allowing an internal target to appear externally routable.
This maps to CWE-918: Server-Side Request Forgery, because attacker-influenced URLs can cause the server to make requests to destinations that should be inaccessible through the application's outbound-request controls.
The underlying bug is incomplete canonicalization of IP address representations before security classification. The validation logic compares resolved addresses against private ranges but does not normalize transition mechanisms that embed or represent IPv4 addresses, allowing an internal target to appear externally routable.
This maps to CWE-918: Server-Side Request Forgery, because attacker-influenced URLs can cause the server to make requests to destinations that should be inaccessible through the application's outbound-request controls.
Potential impact
- An attacker may read responses from internal services
- Cloud instance metadata and temporary credentials could be disclosed
- Internal APIs or administrative endpoints could be queried
- Workflow results may expose sensitive network or service information
- Compromised credentials could enable further access within the environment
- An attacker may read responses from internal services
- Cloud instance metadata and temporary credentials could be disclosed
- Internal APIs or administrative endpoints could be queried
- Workflow results may expose sensitive network or service information
- Compromised credentials could enable further access within the environment
General mitigation guidance
Mitigation generally focuses on canonicalizing all supported IP representations before applying SSRF policy and enforcing destination controls at multiple layers.
Common defensive patterns include:
- Normalize IPv4-mapped, IPv4-compatible, 6to4, NAT64, and equivalent transition forms before classification
- Apply allowlist-based egress policies where feasible instead of relying only on private-range blocking
- Revalidate the final resolved destination immediately before connection establishment
- Restrict access from workflow workers to metadata services and sensitive internal networks
- Use network-level egress controls, DNS protections, and least-privilege execution identities
- Return only the minimum response data required by workflow functionality
Mitigation generally focuses on canonicalizing all supported IP representations before applying SSRF policy and enforcing destination controls at multiple layers.
Common defensive patterns include:
- Normalize IPv4-mapped, IPv4-compatible, 6to4, NAT64, and equivalent transition forms before classification
- Apply allowlist-based egress policies where feasible instead of relying only on private-range blocking
- Revalidate the final resolved destination immediately before connection establishment
- Restrict access from workflow workers to metadata services and sensitive internal networks
- Use network-level egress controls, DNS protections, and least-privilege execution identities
- Return only the minimum response data required by workflow functionality
How teams detect issues like this
Detection approaches may include:
- Static analysis and code review for IP checks that inspect only native address families
- Tests covering mapped, compatible, 6to4, NAT64, hexadecimal, and other alternate address representations
- Review of URL validators for canonicalization, DNS-rebinding resistance, and time-of-check/time-of-use gaps
- Egress monitoring for workflow workers contacting loopback, RFC 1918, link-local, metadata, or other restricted ranges
- Policy enforcement requiring centralized SSRF-safe HTTP clients for outbound requests
- Automated security testing that compares parser output with the address actually used for connection
Detection approaches may include:
- Static analysis and code review for IP checks that inspect only native address families
- Tests covering mapped, compatible, 6to4, NAT64, hexadecimal, and other alternate address representations
- Review of URL validators for canonicalization, DNS-rebinding resistance, and time-of-check/time-of-use gaps
- Egress monitoring for workflow workers contacting loopback, RFC 1918, link-local, metadata, or other restricted ranges
- Policy enforcement requiring centralized SSRF-safe HTTP clients for outbound requests
- Automated security testing that compares parser output with the address actually used for connection

