Skip to content
Submit incident
AII-1001-93693
ConfirmedA court, a regulator or the organization itself has stated the core facts, or the record cites a court or regulator source.Supporting sources are pending verification.

ToolHive stores unencrypted secrets in state store (CVE-2025-47274)

ToolHive versions up to 0.0.32 stored unencrypted secrets in run config files due to improper code ordering during MCP server startup, allowing local attackers with home folder access to read secrets. The issue was patched in version 0.0.33.

12 May 2025 Β· Stacklok Β· Security and cyberattacks
12 May 2025
AII-1001-93693
Quick facts
Organization
Stacklok (subject)
Category
Security and cyberattacks
Date
12 May 2025
Drafted by
Raidu Incident Detection

What happened

Due to the ordering of code used to start an MCP server container, ToolHive inadvertently stores secrets in run config files which are used to restart stopped containers.

An attacker with access to the home folder of the user who starts the MCP server can read secrets without needing access to the secrets store itself, affecting secrets whose run configs exist at a point in time.

Reported impact

Secrets stored in run config files at $HOME/Library/Application Support/toolhive/runconfigs/ (macOS) or $HOME/.state/toolhive/runconfigs/ (Linux) are exposed to local attackers with home folder access.

Index analysis

The vulnerability affects ToolHive versions ≀0.0.32 and was patched in version 0.0.33.

Governance controls

The advisory recommended stopping and deleting running MCP servers and manually removing runconfigs from the affected directories.

Classification

Organization
Stacklok (subject)
Category
Security and cyberattacks
Harm status
Potential harm
Intent
Unintentional
Timing
Post-deployment
Harmed
Consumers
Failure modes
Data leak
AI systems
ToolHive

Sources and evidence

Sources not yet published

This record was researched and written by the Index from original reporting. Its sources are still being verified by an editor, and they are listed here once that check is complete. Until then the record carries no reviewer.

How sources are verifiedSuggest a source for this incident