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

水平有限,分析开摆

相关推荐
AdMergeX18 分钟前
AdMergeX旗下 Funlink SDK通过中国信通院双端安全专项检验
大数据·人工智能·安全·saas·广告saas·流量变现
艾莉丝努力练剑20 分钟前
【Linux进程(四)】深入理解 Linux O(1) 调度器:双队列轮转与进程优先级机制——如何避免进程饥饿,实现公平且高效的进程调度
java·大数据·linux·运维·服务器·人工智能·安全
智驱力人工智能21 分钟前
守护生命的水上之眼 无人机人员落水检测系统的技术攻坚与应用实践 无人机溺水识别 山区水库无人机落水检测系统 水域安全无人机部署指南
大数据·人工智能·算法·安全·无人机·边缘计算
xiatianxy22 分钟前
有限空间监测设备,为石油储罐安全“保驾护航”
安全·有限空间作业·有限空间监测设备
m0_738120722 小时前
应急响应——知攻善防Web-3靶机详细教程
服务器·前端·网络·安全·web安全·php
llxxyy卢8 小时前
文件操作之文件下载读取全解
安全
虹科网络安全10 小时前
艾体宝洞察 | 利用“隐形字符”的钓鱼邮件:传统防御为何失效,AI安全意识培训如何补上最后一道防线
运维·网络·安全
冰敷逆向13 小时前
苏宁滑块VMP深入剖析(一):解混淆篇
javascript·爬虫·安全·web
小五传输13 小时前
隔离网闸的作用是什么?新型网闸如何构筑“数字护城河”?
大数据·运维·安全
石像鬼₧魂石14 小时前
内网渗透是网络安全渗透测试
安全·web安全