CVE-2026-35386OpenSSH 10.3之前的版本存在命令注入漏洞。当ssh_config中包含非默认的百分号(%)配置,且命令行中的用户名来源不可信时,攻击者可以通过在用户名中注入Shell元字符来执行任意命令。该漏洞攻击复杂度较高,需特定配置环境。
该漏洞源于OpenSSH在处理配置文件和命令行参数时的逻辑缺陷。具体来说,当sshd_config或客户端配置文件中使用了某些以百分号(%)开头的替换字符(例如%u代表用户名),并且这些替换结果被传递给Shell执行时,缺乏严格的过滤机制。攻击者如果能控制传入的用户名参数,便可在其中构造包含Shell元字符(如`$(command)`或`;`)的字符串。当OpenSSH尝试利用该用户名进行连接操作或构建动态命令时,恶意字符会被Shell解析器执行,从而导致任意命令注入。虽然此漏洞需要本地访问权限和特定的非默认配置,但它破坏了系统的机密性和完整性。