CVE-2023-51385 OpenSSH ProxyCommand命令注入漏洞

一、背景介绍

ProxyCommand 是 OpenSSH ssh_config 文件中的一个配置选项,它允许通过代理服务器建立 SSH 连接,从而在没有直接网络访问权限的情况下访问目标服务器。这对于需要经过跳板机、堡垒机或代理服务器才能访问的目标主机非常有用。

二、漏洞简介

ssh_config文件中的ProxyCommand、LocalCommand指令或"match exec"谓词通过%u、%h或类似的扩展标记引用用户或主机名时,可能会导致命令注入的风险。

在Git中,用户或主机名中的shell元字符未被禁止(如在主机名中进行命令拼接),这可能导致存储库包含一个带有shell元字符的子模块用户或主机名。这种情况可能引发命令注入漏洞。

三、影响版本

OpenSSH < 9.6

四、漏洞复现

1、复现版本

2、配置SSH规则

在~/.ssh/config中配置如下规则

shell 复制代码
host *.example.com
  ProxyCommand /usr/bin/nc -X connect -x 192.0.2.0:8080 %h %p

这条配置意为:对于所有以.example.com结尾的主机,通过地址为192.0.2.0、端口为8080的代理服务器连接到目标主机。

3、命令执行

使用命令

shell 复制代码
git clone https://github.com/zls1793/CVE-2023-51385_test --recurse-submodules


https://github.com/zls1793/CVE-2023-51385_test?tab=readme-ov-file

项目结构为:

其中.gitmodules如下:

git的submodule是一个被仓库包含的子仓库,图中的url本应指向该子仓库的地址

git clone执行后效果如图

五、漏洞修复

升级至OpenSSH 9.6p1

水平有限,分析开摆

相关推荐
qq_430908577 小时前
网络安全-机遇与挑战
安全
安 当 加 密12 小时前
守护汽车“空中升级“:基于HSM/KMS的安全OTA固件签名与验证方案
安全·汽车
大咖分享课20 小时前
多租户系统中的安全隔离机制设计
人工智能·安全·安全隔离
荔枝吻20 小时前
软件异常读写威胁硬盘安全:从过往案例到防护之道
安全·硬盘
小马爱打代码20 小时前
Spring Boot 接口安全设计:接口限流、防重放攻击、签名验证
网络·spring boot·安全
北极光SD-WAN组网1 天前
工业互联网时代,如何通过混合SD-WAN提升煤炭行业智能化网络安全
网络·安全·web安全
深圳安锐科技有限公司1 天前
基坑渗压数据不准?选对渗压计能实现自动化精准监测吗?
安全·自动化·自动化监测·大坝监测·渗压计
贺贺丿1 天前
Docker4-容器化企业级应用
linux·nginx·docker·云原生·eureka·tomcat·ssh
Arwen3031 天前
解密国密 SSL 证书:SM2、SM3、SM4 算法的协同安全效应
算法·安全·ssl
dingzd951 天前
通过 Web3 区块链安全评估,领先应对网络威胁
安全·web3·区块链·facebook·tiktok·instagram·clonbrowser