CVE-2020-8205: Transloadit Uppy Companion Server-Side Request Forgery

CVE-2020-8205 · Severity: low · CVSS 3.1 · Published 2020-08-13

@uppy/companion is a backend service that handles file uploads and downloads in the Uppy file upload framework. A Server-Side Request Forgery (SSRF) vulnerability allows attackers to make the server issue requests to arbitrary URLs, potentially scanning internal networks, accessing private services, or interacting with infrastructure systems that should not be directly reachable from the internet.

Technologies: @uppy/companion (npm). Vendors: npm.

Quick answers

Is CVE-2020-8205 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2020-8205 being exploited in the wild.
How severe is CVE-2020-8205?
Low severity, with a CVSS score of 3.1, published 13 August 2020.
Which products and versions are affected?
@uppy/companion (npm) SEMVER:introduced=0,fixed=1.13.2.
Is there a fix for CVE-2020-8205?
Yes. @uppy/companion (npm): upgrade to 1.13.2 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2020-8205 attacked?
It is attacked over the network.
Am I affected by CVE-2020-8205?
Check whether you run @uppy/companion (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • @uppy/companion (npm): upgrade to 1.13.2 or later
    npm install @uppy/companion@1.13.2

Technical details

The vulnerability is a Server-Side Request Forgery (CWE-918) in the URL handling logic of @uppy/companion, specifically in how it processes redirects during file download operations. An attacker can craft requests that cause the companion server to make HTTP requests to arbitrary network targets, including internal IP addresses, localhost services, or external systems. The vulnerability is remotely exploitable over the network without authentication (network vector, no auth required). An attacker can exploit this to enumerate internal services, bypass firewalls, or exfiltrate data from internal systems. The fix involves validating and blocking redirects to URLs with different protocols, implemented in versions 1.13.2 and 2.0.0-alpha.5.

Affected products

  • Transloadit @uppy/companion before 1.13.2 and 2.0.0-alpha.0 through 2.0.0-alpha.4

Identifiers

  • CVE-2020-8205
  • GHSA-9m4x-8w29-r78g

Timeline

  • 2020-08-13: disclosed
  • 2020-06-18: patched: Fix committed to master; releases 1.13.2 and 2.0.0-alpha.5

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.