{"id":22272,"date":"2026-09-15T00:30:44","date_gmt":"2026-09-14T16:30:44","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90938"},"modified":"2026-09-15T00:30:44","modified_gmt":"2026-09-14T16:30:44","slug":"cve-2026-90938","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90938","title":{"rendered":"CVE-2026-90938 [HIGH] &#8211; LangBot&#8217;s plugin runtime (pip package langbot_plugin) through 0.4.17 starts a debug WebSoc"},"content":{"rendered":"<p>LangBot&#8217;s plugin runtime (pip package langbot_plugin) through 0.4.17 starts a debug WebSocket server on 0.0.0.0:5401 (\/plugin\/ws) whose authentication is gated on plugin_debug_key, which defaults to an empty string and is never set by the upstream repository, Docker image, or docker-compose (which additionally publishes port 5401 to the host); the key check is therefore skipped entirely. Any remote attacker able to reach the port can register an arbitrary &#8220;debug plugin&#8221; without credentials. Because events are broadcast to all initialized plugins without filtering, the attacker&#8217;s plugin receives the full context of every IM message event (including private chats, message chains, and user\/sender IDs in plaintext) and can inject forged replies, send messages as any configured bot, enumerate bot UUIDs, invoke configured LLM models, read knowledge-base contents, and register malicious tools that feed every user&#8217;s LLM pipeline. Registering with &#8220;prod_mode&#8221;: true causes later legitimate installations of a plugin with the same author\/name to be rejected, resulting in persistent denial of service. No patched version was available at the time of publication.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>LangBot&#8217;s plugin runtime (pip package langbot_plugin) through 0.4.17 starts a debug WebSocket server on 0.0.0.0:5401 (\/plugin\/ws) whose authentication is gated on plugin_debug_key, which defaults to a<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-22272","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/22272","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=22272"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=22272"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=22272"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}