CVE-2024-32977: OctoPrint authentication bypass via X-Forwarded-For header spoofing

CVE-2024-32977 · Severity: low · CVSS 3.1 · Published 2024-05-14

OctoPrint is a popular open-source web interface for 3D printer control and monitoring. When the autologinLocal feature is enabled, attackers can bypass authentication entirely by spoofing their IP address through the X-Forwarded-For header, gaining unauthorized access to printer management and control functions without requiring valid credentials.

Technologies: OctoPrint (PyPI). Vendors: PyPI.

Quick answers

Is CVE-2024-32977 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2024-32977 being exploited in the wild.
How severe is CVE-2024-32977?
Low severity, with a CVSS score of 3.1, published 14 May 2024.
Which products and versions are affected?
OctoPrint (PyPI) ECOSYSTEM:introduced=0,fixed=1.10.1, GIT:introduced=0,fixed=5afbec8d23508edc25b0f1bdef1620580136add4|ECOSYSTEM:introduced=0,fixed=1.10.1.
Is there a fix for CVE-2024-32977?
Yes. OctoPrint (PyPI): upgrade to 1.10.1 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2024-32977 attacked?
It is attacked over the network.
Am I affected by CVE-2024-32977?
Check whether you run OctoPrint (PyPI) 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

  • OctoPrint (PyPI): upgrade to 1.10.1 or later
    pip install "OctoPrint>=1.10.1"

Technical details

This is an authentication bypass vulnerability (CWE-290: Authentication Bypass by Spoofing) in OctoPrint's IP-based local network detection logic. When autologinLocal is enabled in config.yaml, the application trusts the X-Forwarded-For HTTP header to determine if a request originates from a local network, allowing automatic login without credentials. An unauthenticated attacker can spoof this header (e.g., set X-Forwarded-For: 127.0.0.1) to trick the application into auto-logging them in as a configured user. The attack requires network access to the OctoPrint instance and the autologinLocal feature to be explicitly enabled; the vulnerability is network-adjacent in attack vector and does not require user interaction. The fix has been released in version 1.10.1.

Affected products

  • OctoPrint OctoPrint up to and including 1.10.0

Identifiers

  • CVE-2024-32977
  • GHSA-2vjq-hg5w-5gm7
  • PYSEC-2024-237

Timeline

  • 2024-05-14: disclosed
  • 2024-05-14: patched: Fixed in version 1.10.1

References

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