Summary
CVE-2026-90938 is a missing authentication vulnerability (CWE-306) in LangBot’s plugin runtime, affecting the langbot_plugin pip package used by the LangBot chatbot/IM automation platform, in versions up to and including 0.4.17. The plugin runtime exposes a debug WebSocket server on 0.0.0.0:5401 (path /plugin/ws) that is intended to be protected by a plugin_debug_key, but this key defaults to an empty string and is never set by the upstream repository, Docker image, or docker-compose file — effectively disabling the intended access control. The issue carries a High severity rating.
Technical details
- Root cause: The debug WebSocket server’s authentication check is gated on
plugin_debug_key, which ships with an empty-string default and is never configured in the standard deployment paths (source repo, Docker image, docker-compose). - Trigger conditions: No configuration action is required to become vulnerable — the default install/deployment already exposes the flaw. The bundled docker-compose additionally publishes port 5401 to the host, increasing exposure.
- Attack vector: Network — any remote attacker able to reach TCP port 5401 can connect to the WebSocket endpoint without providing any credentials.
- Impact: An unauthenticated attacker can register arbitrary "debug" plugins into the running LangBot instance, gaining access to the full context of instant-messaging traffic and private chats, enumerating configured bot identifiers, forging/injecting messages as legitimate bots, invoking the underlying LLM models, registering malicious tools into the LLM pipeline, and causing persistent denial of service by blocking legitimate plugin registrations.
Affected software
- LangBot plugin runtime package
langbot_plugin, versions 0 through 0.4.17 (inclusive).
Severity
- CVSS v3.1 Base Score: 8.6 (High) —
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L - A CVSS v4.0 score of 8.8 (High) has also been recorded for this vulnerability, reflecting the same network-exploitable, no-privilege, no-interaction authentication bypass.
Mitigation and recommended actions
- Immediate: No official patched version is currently available. Track the LangBot project/GitHub Security Advisory (GHSA-m7qm-2mjr-2h4q) for a fix and upgrade to a patched release as soon as one is published.
- Workarounds / network mitigations:
- Explicitly set a strong, unique
plugin_debug_keyrather than relying on the empty default. - Do not expose port 5401 to the internet or untrusted networks; remove its publication from docker-compose/host port mappings.
- Bind the debug WebSocket server to
127.0.0.1(loopback) instead of0.0.0.0where configuration allows. - Restrict network access to LangBot management/debug interfaces via firewall rules or network segmentation until a vendor patch is released.
- Explicitly set a strong, unique

