Advisory Database
  • Advisories
  • Dependency Scanning
  1. cargo
  2. ›
  3. spin-sdk
  4. ›
  5. CVE-2024-32980

CVE-2024-32980: Spin applications with specific configuration vulnerable to potential network sandbox escape

May 8, 2024

Some specifically configured Spin applications that use self requests without a specified URL authority can be induced to make requests to arbitrary hosts via the Host HTTP header.

If an application’s manifest contains a component with configuration such as

allowed_outbound_hosts = ["http://self", "https://self"]

and code such as

let res: Response = spin_sdk::http::send(
Request::new(Method::Get, "/") // Note: the request URI does not contain a URL authority
).await?;

Then that application can be induced to send an outgoing request to another host (leading the app to process the response assuming it comes from another component in the same application). This can be induced with a request such as

curl -H"Host: google.com:80" localhost:3000 # Assuming the application is served on localhost:3000

Note: If using a SDK that does not use wasi:http/outgoing-handler, the port can be omitted from the URL.

References

  • github.com/advisories/GHSA-f3h7-gpjj-wcvh
  • github.com/fermyon/spin
  • github.com/fermyon/spin/commit/b3db535c9edb72278d4db3a201f0ed214e561354
  • github.com/fermyon/spin/security/advisories/GHSA-f3h7-gpjj-wcvh
  • nvd.nist.gov/vuln/detail/CVE-2024-32980

Code Behaviors & Features

Detect and mitigate CVE-2024-32980 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions before 2.4.3

Fixed versions

  • 2.4.3

Solution

Upgrade to version 2.4.3 or above.

Impact 9.1 CRITICAL

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N

Learn more about CVSS

Weakness

  • CWE-610: Externally Controlled Reference to a Resource in Another Sphere

Source file

cargo/spin-sdk/CVE-2024-32980.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Wed, 14 May 2025 12:16:03 +0000.