VDB
KO
MEDIUM 5.9

GHSA-xg4x-w2j3-57h6

OctoPrint has Timing Side-Channel Vulnerability in API Key Authentication

Details

### Impact

OctoPrint versions up to and including 1.11.5 are affected by a (theoretical) timing attack vulnerability that allows API key extraction over the network.

Due to using character based comparison that short-circuits on the first mismatched character during API key validation, rather than a cryptographical method with static runtime regardless of the point of mismatch, an attacker with network based access to an affected OctoPrint could extract API keys valid on the instance by measuring the response times of the denied access responses and guess an API key character by character.

### Patches

The vulnerability will be patched in version 1.11.6.

### Workaround

The likelihood of this attack actually working is highly dependent on the network's latency, noise and similar parameters. An actual proof of concept was not achieved so far. Still, as always administrators are advised to not expose their OctoPrint instance on hostile networks, especially not on the public Internet!

### Credits

This vulnerability was discovered and responsibly disclosed to OctoPrint by [Knox Liu](https://github.com/yueyueL).

Are you affected?

Enter the version of the package you're using.

Affected packages

PyPI / octoprint
Introduced in: 0 Fixed in: 1.11.6
Fix pip install --upgrade 'octoprint>=1.11.6'

References