{"description":"Trending threats, MITRE ATT\u0026CK coverage, and detection metadata. Fed continuously.","favicon":"https://feed.craftedsignal.io/favicon-32x32.png","feed_url":"https://feed.craftedsignal.io/products/russh--0.65/feed.json","home_page_url":"https://feed.craftedsignal.io/","icon":"https://feed.craftedsignal.io/apple-touch-icon.png","items":[{"_cs_actors":[],"_cs_cpes":["cpe:2.3:a:russh_project:russh:*:*:*:*:*:*:*:*"],"_cs_cves":[{"id":"CVE-2026-116794"}],"_cs_exploited":false,"_cs_has_poc":false,"_cs_poc_references":[],"_cs_products":["russh (\u003c 0.65)","Proton Pass desktop"],"_cs_severities":["high"],"_cs_tags":["ssh","authentication-bypass","rust","cve-2026-116794"],"_cs_type":"advisory","_cs_vendors":["Proton"],"content_html":"\u003cp\u003eThe SSH agent server in the \u003ccode\u003erussh\u003c/code\u003e library fails to invoke \u003ccode\u003eAgent::confirm\u003c/code\u003e when handling signing requests for keys added with the \u003ccode\u003eSSH_AGENT_CONSTRAIN_CONFIRM\u003c/code\u003e constraint (commonly applied via \u003ccode\u003essh-add -c\u003c/code\u003e). This logic error, introduced in version 0.50.0-beta.12 and persisting through version 0.64.1, replaces the required confirmation check with a hard-coded success result. Applications relying on this callback for security enforcement, such as Proton Pass desktop, do not prompt the user for authorization before performing cryptographic operations, effectively bypassing the protection provided by the confirm constraint.\u003c/p\u003e\n\u003ch2 id=\"impact\"\u003eImpact\u003c/h2\u003e\n\u003cp\u003eSuccessful exploitation allows local processes or remote hosts (via SSH agent forwarding) to use protected SSH keys for authentication or data signing without user consent. The private key material itself is not exposed, but the ability to use the key is compromised for as long as an attacker maintains access to the agent socket.\u003c/p\u003e\n\u003ch2 id=\"recommendation\"\u003eRecommendation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate all software packages using \u003ccode\u003erussh\u003c/code\u003e to version 0.65 or later immediately.\u003c/li\u003e\n\u003cli\u003eReview downstream applications that use \u003ccode\u003erussh\u003c/code\u003e to implement agent functionality and verify their \u003ccode\u003eAgent::confirm\u003c/code\u003e logic is invoked correctly.\u003c/li\u003e\n\u003cli\u003eFor applications that use \u003ccode\u003econfirm\u003c/code\u003e to perform security checks (e.g., \u0026quot;Pass is unlocked\u0026quot; checks), verify that the state logic is not bypassed by the regression.\u003c/li\u003e\n\u003c/ul\u003e\n","date_modified":"2026-10-31T03:20:40Z","date_published":"2026-10-31T03:20:40Z","id":"https://feed.craftedsignal.io/briefs/2026-10-russh-ssh-agent-bypass/","summary":"The russh library fails to trigger the Agent::confirm callback for SSH keys protected by the confirm constraint, allowing unauthorized signing operations by any process capable of communicating with the agent.","title":"russh: SSH agent fails to require confirmation for keys (CVE-2026-116794)","url":"https://feed.craftedsignal.io/briefs/2026-10-russh-ssh-agent-bypass/"}],"language":"en","title":"CraftedSignal Threat Feed - Russh (\u003c 0.65)","version":"https://jsonfeed.org/version/1.1"}