IPBUF安全漏洞报告
English
CVE-2026-35386 CVSS 3.6 低危

CVE-2026-35386 OpenSSH 命令注入漏洞

披露日期: 2026-04-02

漏洞信息

漏洞编号
CVE-2026-35386
漏洞类型
命令注入
CVSS评分
3.6 低危
攻击向量
本地 (AV:L)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
OpenSSH

相关标签

OpenSSH命令注入RCECVE-2026-35386本地攻击

漏洞概述

OpenSSH 10.3之前的版本存在命令注入漏洞。当ssh_config中包含非默认的百分号(%)配置,且命令行中的用户名来源不可信时,攻击者可以通过在用户名中注入Shell元字符来执行任意命令。该漏洞攻击复杂度较高,需特定配置环境。

技术细节

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

攻击链分析

STEP 1
侦察
攻击者确认目标系统使用OpenSSH 10.3之前的版本,并探测是否存在非默认的ssh_config配置(特别是涉及%用户名替换的配置)。
STEP 2
构造载荷
攻击者构造一个包含Shell元字符(如反引号或分号)的恶意用户名字符串,旨在执行系统命令。
STEP 3
触发漏洞
攻击者在命令行或脚本中使用该恶意用户名调用SSH客户端。
STEP 4
命令执行
由于OpenSSH未正确过滤,Shell解析了注入的元字符,导致攻击者指定的命令被执行。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/bin/bash # This PoC demonstrates the concept of the vulnerability. # It requires a vulnerable OpenSSH version (< 10.3) and a specific ssh config. # Assume the ssh_config contains a directive that expands %u (username) # into a context that is passed to a shell or executed insecurely. # Malicious username containing shell metacharacters to execute 'id' command MALICIOUS_USER="normaluser; id" # Attempt to connect using the malicious username # In a vulnerable scenario, this would execute 'id' on the client or server side # depending on the specific configuration flaw. ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no $MALICIOUS_USER@target_host # Note: Successful exploitation depends on the specific non-default % configuration # mentioned in the CVE description.

影响范围

OpenSSH < 10.3

防御指南

临时缓解措施
若无法立即升级,应审查系统中的SSH配置文件,特别是包含百分号(%)的指令,确保不会将用户名直接传递给Shell执行。同时,限制对SSH命令行的调用权限,避免使用不可信来源的用户名作为参数。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表