{"id":"CVE-2026-54141","kind":"vulnerability","aliases":["CVE-2026-54141"],"related":[],"title":"OpenHuman: Yuanbao direct messages can run shell commands without approval","description":"OpenHuman is an open-source agent harness available as a desktop application and Rust library. Before 0.57.13, a remote direct message received through a configured Yuanbao channel is converted into a generic channel AgentTurnRequest that uses the default tool policy without establishing an interactive approval context. Under the default Supervised autonomy policy with Node enabled, node_exec is classified as a write operation that should prompt for approval, but ApprovalGate treats missing APPROVAL_CHAT_CONTEXT as a non-interactive turn and allows execution. Because Yuanbao direct messages are open by default, an external sender who can message the connected bot can influence the agent to execute JavaScript and operating-system commands as the OpenHuman user without an approval prompt. The issue requires a configured Yuanbao channel, the default approval-requiring policy state, Node availability, and successful model selection of node_exec. This issue is fixed in version 0.57.13.","summary":"OpenHuman is an open-source agent harness; before 0.57.13, a direct message from an outside sender on a configured Yuanbao channel could make the agent run JavaScript and operating-system commands. The approval gate skipped its prompt for these messages, so the commands ran as the OpenHuman user.","severity":"critical","cvss":9.0,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["agent-harness","ai-tooling","desktop","node","openhuman","yuanbao"],"not_affected_if":["no-yuanbao-channel","node-disabled","version-0.57.13-or-later"],"how_to_check":"- Check the installed OpenHuman version against `0.57.13`\n- Look for a configured Yuanbao channel in OpenHuman's channel settings\n- Confirm whether Node is enabled for the agent","fix":"- OpenHuman: move to `0.57.13` or later","status":"open","published_at":"2026-11-05T17:18:19+00:00","first_seen_at":"2026-11-05T17:40:04+00:00","triaged_at":"2026-11-05T17:42:07+00:00","updated_at":"2026-11-05T17:42:07+00:00","category":"ai-tooling","confidence":0.7,"triage":{"at":"2026-11-05T17:42:07Z","model":"claude-haiku-5-5","output":{"fix":"- OpenHuman: move to `0.57.13` or later","reach":"internet","title":"OpenHuman: Yuanbao direct messages can run shell commands without approval","impact":"high","summary":"OpenHuman is an open-source agent harness; before 0.57.13, a direct message from an outside sender on a configured Yuanbao channel could make the agent run JavaScript and operating-system commands. The approval gate skipped its prompt for these messages, so the commands ran as the OpenHuman user.","audience":"businesses","category":"ai-tooling","nicknames":[],"who_cares":["openhuman","yuanbao","node","agent-harness","desktop"],"confidence":0.7,"fix_status":"available","needs_auth":"no","worst_case":"Attacker runs arbitrary JavaScript and OS commands as the user","analyst_note":"Confirm the fixed version and the advisory details at the vendor advisory and release notes linked in the sources; the sources listed here did not include their text.","how_to_check":"- Check the installed OpenHuman version against `0.57.13`\n- Look for a configured Yuanbao channel in OpenHuman's channel settings\n- Confirm whether Node is enabled for the agent","plain_action":"","needs_analyst":true,"not_affected_if":["no-yuanbao-channel","node-disabled","version-0.57.13-or-later"],"who_is_affected":"Teams running OpenHuman as an agent harness with a Yuanbao channel configured and Node enabled under the default Supervised policy. Direct messages on Yuanbao are open by default, so any sender who can message the bot can reach the flaw. Installations without a Yuanbao channel or with Node disabled are not exposed by this path.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"critical"},"cost_usd":0.00076,"input_tokens":4468,"output_tokens":626,"severity_before":"critical"},"analyst_status":null,"analyst_note":null,"search":"'-2026':12A,15A '-54141':13A,16A '0.57.13':36B,94C,228C 'agent':18B,33B,52B,83C,182C 'agent-har':17B 'agentturnrequest':111C 'ai':21B 'ai-tool':20B 'allow':160C 'applic':89C 'approv':10A,61B,122C,145C,150C,197C,209C 'approval-requir':208C 'approvalg':147C 'autonomi':128C 'avail':85C,214C 'bot':178C 'channel':48B,104C,110C,205C 'chat':151C 'classifi':136C 'command':8A,59B,71B,190C 'configur':46B,102C,203C 'connect':177C 'context':123C,152C 'convert':106C 'could':49B 'cve':11A,14A 'default':115C,126C,169C,207C 'desktop':23B,88C 'direct':3A,38B,97C,164C 'enabl':132C 'establish':119C 'exec':134C,221C 'execut':161C,184C 'extern':171C 'fix':225C 'gate':62B 'generic':109C 'har':19B,34B,84C 'influenc':180C 'interact':121C,157C 'issu':200C,223C 'javascript':54B,185C 'librari':92C 'make':50B 'messag':4A,39B,68B,98C,165C,175C 'miss':149C 'model':217C 'node':24B,131C,133C,213C,220C 'non':156C 'non-interact':155C 'open':31B,81C,167C 'open-sourc':30B,80C 'openhuman':1A,25B,27B,75B,77C,193C 'oper':57B,140C,188C 'operating-system':56B,187C 'outsid':42B 'polici':117C,129C,211C 'prompt':65B,143C,198C 'ran':72B 'receiv':99C 'remot':96C 'requir':201C,210C 'run':6A,53B 'rust':91C 'select':218C 'sender':43B,172C 'shell':7A 'skip':63B 'sourc':32B,82C 'state':212C 'success':216C 'supervis':127C 'system':58B,189C 'tool':22B,116C 'treat':148C 'turn':158C 'use':113C 'user':76B,194C 'version':227C 'without':9A,118C,195C 'write':139C 'yuanbao':2A,26B,47B,103C,163C,204C","nicknames":[],"mitigations":[],"who_affected":"Teams running OpenHuman as an agent harness with a Yuanbao channel configured and Node enabled under the default Supervised policy. Direct messages on Yuanbao are open by default, so any sender who can message the bot can reach the flaw. Installations without a Yuanbao channel or with Node disabled are not exposed by this path.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"pkeys":[],"ptokens":[],"labels":["agentharness","aitooling","critical","desktop","node","openhuman","yuanbao"],"campaign_type":null,"first_public_at":"2026-10-09T17:35:51+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H","cvss_by":"security-advisories@github.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-54141","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54141","severity":null,"published_at":"2026-11-05T17:18:19+00:00","modified_at":"2026-11-05T17:18:19+00:00","first_seen_at":"2026-11-05T17:40:04+00:00","fetched_at":"2026-11-05T17:40:04+00:00","note":null}],"documents":[{"id":78106,"url":"https://github.com/tinyhumansai/openhuman/commit/3a7180da7765af861bf44d79e025fc67dbeae0ca","title":"Patch: github.com","kind":"other","source":"nvd","publisher":"vendor","text":null,"published_at":null,"relation":"fix","confidence":null,"note":"Patch: github.com"},{"id":78104,"url":"https://github.com/tinyhumansai/openhuman/releases/tag/v0.57.13","title":"Release notes: github.com","kind":"release","source":"nvd","publisher":"vendor","text":null,"published_at":null,"relation":"fix","confidence":null,"note":"Release notes: github.com"},{"id":78108,"url":"https://github.com/tinyhumansai/openhuman/security/advisories/GHSA-gg3m-wgmq-vhmx","title":"Vendor advisory: github.com","kind":"vendor","source":"nvd","publisher":"vendor","text":null,"published_at":"2026-10-09T17:35:51+00:00","relation":"advisory","confidence":null,"note":"Vendor advisory: github.com"}],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}