← Back to feed

CVE-2026-29872: Awesome-LLM-Apps Cross-Session API Token Disclosure

Date: 2026-04-04
Tags: shadow-ai, malware

Executive Summary

A cross-session information disclosure vulnerability in the awesome-llm-apps Streamlit-based GitHub MCP Agent stores user-supplied API tokens in process-wide environment variables without proper session isolation, allowing attackers to retrieve sensitive GitHub Personal Access Tokens or LLM API keys from subsequent unauthenticated users since Streamlit serves multiple concurrent users from a single Python process.

Campaign Summary

FieldDetail
Campaign / MalwareAwesome-LLM-Apps Multi-Tenant Credential Leakage
AttributionUnknown (confidence: none)
TargetDevelopers using awesome-llm-apps Streamlit agent
VectorProcess-wide environment variable exposure in shared Streamlit runtime
Statusactive
First Observed2026-03-04

Detailed Findings

The affected Streamlit-based GitHub MCP Agent stores user-supplied API tokens in process-wide environment variables using os.environ without proper session isolation. Because Streamlit serves multiple concurrent users from a single Python process, credentials provided by one user remain accessible to subsequent unauthenticated users. This is a critical architectural flaw affecting shared Streamlit deployments of LLM agents, where each user's session should be isolated but credentials leak across boundaries. An attacker can exploit this issue to retrieve sensitive information such as GitHub Personal Access Tokens or LLM API keys, potentially leading to unauthorized access to private resources and financial abuse.

MITRE ATT&CK Mapping

TechniqueIDContext
Credential AccessT1555Cross-session retrieval of API tokens stored in environment variables
Lateral MovementT1570Stolen GitHub/LLM tokens enable unauthorized access to user resources

IOCs

Domains

_No IOCs published; design flaw in shared Streamlit instances_

Full URL Paths

_No IOCs published; design flaw in shared Streamlit instances_

Splunk Format

_No IOCs available for Splunk query_

Package Indicators

awesome-llm-apps (affected version in commit e46690f99c3f08be80a9877fab52acacf7ab8251, 2026-01-19)

Detection Recommendations

Audit awesome-llm-apps deployments running the vulnerable commit; implement per-user session isolation in Streamlit MCP agents; use secrets management (HashiCorp Vault, AWS Secrets Manager) instead of environment variables; rotate all GitHub PATs and LLM API keys that may have been exposed; monitor for unauthorized access using stolen tokens; disable process-level environment variable inheritance in Streamlit.

References