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中配置如下规则

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、命令执行

使用命令

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
水平有限,分析开摆

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/304816.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024第十六届数字图像处理国际会议(ICDIP 2024) 即将召开!

第十六届数字图像处理国际会议&#xff08;ICDIP 2024&#xff09;将于2024年5月24-26日在中国海口召开。本次会议由海南大学主办&#xff0c;海南大学计算机科学与技术学院承办。ICDIP自2009年开办以来&#xff0c;已先后在新加坡、日本、中国、马来西亚理科大学等国家成功举办…

【动态规划】C++算法:403.青蛙过河

作者推荐 【动态规划】C算法312 戳气球 LeetCode:403 青蛙过河 一只青蛙想要过河。 假定河流被等分为若干个单元格&#xff0c;并且在每一个单元格内都有可能放有一块石子&#xff08;也有可能没有&#xff09;。 青蛙可以跳上石子&#xff0c;但是不可以跳入水中。 给你石子…

C++ Web框架Drogon初体验笔记

这段时间研究了一下C的Web框架Drogon。从设计原理上面来说和Python的Web框架是大同小异的&#xff0c;但是难点在于编译项目上面&#xff0c;所以现在记录一下编译的过程。下面图是我项目的目录。其中include放的是头文件&#xff0c;src放的是视图文件&#xff0c;static放的是…

机器人技能学习-robosuite-0-入门介绍

文章目录 前言模块介绍实战案例1&#xff1a;从 demo 中创建自己的 env案例2&#xff1a;更换属于自己的物体 前言 资料太少、资料太少、资料太少&#xff0c;重要的事说三边&#xff0c;想根据自己实际场景自定义下机器人&#xff0c;结果发现无路可走&#xff0c;鉴于缺少参…

【unity小技巧】FPS游戏实现相机的偏移震动、武器射击后退和后坐力效果

最终效果 文章目录 最终效果前言相机偏移震动相机震动脚本换弹节点震动 武器射击后退效果武器后坐力效果完结 前言 关于后坐力之前其实已经分享了一个&#xff1a;FPS游戏后坐力制作思路 但是实现起来比较复杂&#xff0c;如果你只是想要简单的实现&#xff0c;可以看看这个&…

类与对象中篇

前言 在上篇我们讲解了类与对象的基础框架&#xff0c;中篇我们将讲解类与对象的基本内容&#xff0c;即类的六个默认成员函数。 一、类的6个默认成员函数 如果一个类中什么成员都没有&#xff0c;简称为空类。 问题&#xff1a; 空类中真的什么都没有吗&#xff1f; 答案是&a…

软件测试必会:cookie、session和token的区别

今天就来说说session、cookie、token这三者之间的关系&#xff01;最近这仨玩意搞得头有点大&#x1f923; 01、为什么会有它们三个 我们都知道 HTTP 协议是无状态的&#xff0c;所谓的无状态就是客户端每次想要与服务端通信&#xff0c;都必须重新与服务端链接&#xff0c;意…

【YOLO系列】 YOLOv4之Mish函数

一、简述 一个新的state of the art的激活函数&#xff0c;ReLU的继任者。 Diganta Misra在 “Mish: A Self Regularized Non-Monotonic Neural Activation Function”论文中介绍了Mish这个新的深度学习激活函数&#xff0c;指出该函数在准确度上比Swish&#xff08;0.494%&…

资深大佬养成之路:Java中关于List集合选择与使用

目录 1、前言 2、List集合的概念和作用 2.1 什么是List集合 2.2 List集合的作用 2.3 List集合的特点 3、ArrayList和LinkedList的区别 3.1 ArrayList的特点和适用场景 3.2 LinkedList的特点和适用场景 3.3 如何选择ArrayList还是LinkedList 4、List集合的常用操作 4…

Java IO学习和总结(超详细)

一、理解 I/O 是输入和输出的简写&#xff0c;指的是数据在计算机内部和外部设备之间的流动。简单来说&#xff0c;当你从键盘输入数据、从鼠标选择操作&#xff0c;或者在屏幕上看到图像&#xff0c;这些都是 I/O 操作。它就像是计算机与外部世界沟通的桥梁&#xff0c;没有 I…

harmony开发之状态state修饰器的使用

来自官方开发文档&#xff0c; State装饰的变量&#xff0c;或称为状态变量&#xff0c;一旦变量拥有了状态属性&#xff0c;就和自定义组件的渲染绑定起来。当状态改变时&#xff0c;UI会发生对应的渲染改变。 在状态变量相关装饰器中&#xff0c;State是最基础的&#xff0…

更改邮箱发件人

更改邮箱发件人 未更改前发件人显示为发件人的邮箱地址 这里以outlook邮箱为例&#xff0c;进行邮箱发件人的更改 1.点击左上角“文件”选项 2.打开“账户设置”下拉菜单中的“账户设置” 3.选择“电子邮件”&#xff0c;点击该栏下的“更改”选项 4.在弹出页面中修改你…

<软考高项备考>《论文专题 - 56 进度管理(7) 》

10 历年真题解析 10.1 格式 背景500字1-2段 过渡段150字左右1段 一、规划进度管理…【随便写&#xff0c;正常写即可】 二、定义活动…【随便写&#xff0c;正常写即可】 三、排列活动顺序…【随便写&#xff0c;正常写即可】 四、估算活动持续时间…【随便写&#xff0c;正常…

redhat+ oracle 11.2.0.4 RAC 搭建 dataguard

知识改变命运&#xff0c;技术就是要分享&#xff0c;有问题随时联系&#xff0c;免费答疑&#xff0c;欢迎联系&#xff01; redhat oracle 11.2.0.4 RAC 搭建 dataguard 1.安装环境 主机名 OS DB SID db_name db_unique_name rac1 Redhat7 11.2.0.4 orcl1 orcl o…

【OpenCV学习笔记05】- 鼠标作为画笔

内容 学习如何用OpenCV处理鼠标事件您将学习以下功能&#xff1a;cv.setMouseCallback() 简单的示例 这里&#xff0c;我们创建一个简单的程序&#xff0c;在图像的任何位置双击在上面画一个圆。 首先我们创建一个鼠标回调函数&#xff0c;该函数在鼠标事件发生时执行。鼠标…

从txt文档里筛选出每行重复数据字符,并保存到新的txt文档

从txt文档里筛选出每行重复数据字符&#xff0c;并保存到新的txt文档 input_file rD:\pythonXangmu\quchong\input_file2.txt #原始文档 #output_file output.txt#重复内容记录文档 output_file rD:\pythonXangmu\quchong\output2.txt#绝对路径&#xff0c;解决报错找不到文…

一篇文章认识微服务中Eureka的原理和服务注册与发现

目录 1、认识Eureka 2、Eureka原理 2.1 和Dubbo架构对比&#xff1a; 2.2 三大角色 3、微服务常见的注册中心 3.1 Zookeeper 3.2 Eureka 3.3 Consul 3.4 Nacos 3.5 区别 1、认识Eureka Netflix 在设计Eureka 时&#xff0c;遵循的就是AP原则。 CAP原则又称CAP定理…

TagTextView 行内标签TextView

效果 效果如下&#xff0c;可以解析xml中配置的drawableStart &#xff0c;然后将这个drawable显示在一行内。下一个开始。从这个drawable开始。 代码 MaxLengthTextView 是我另外一个自定义view MaxLengthTextView 如果内容超过xml中maxLength属性定义的文字数量时&#x…

揭秘加密货币周期:如何通过顶级代币指标洞察市场变化

作者&#xff1a;stellafootprint.network 加密生态领域如大海般波涛汹涌&#xff0c;如何在这片海域中稳稳航行&#xff1f;关键在于把握市场周期的脉搏。顶级代币的几个核心指标&#xff0c;正是我们窥探市场周期的窗口。 领先的区块链分析平台跟踪的关键代币指标包括&…

什么软件能查出微信聊天记录(3款实用工具盘点!)

微信聊天记录往往记录这很多重要的客户信息&#xff0c;一个不小心可能就会删除&#xff0c;或者员工可以隐藏一些重要的信息&#xff0c;那么此时此刻我们就需要一款&#xff0c;能查处微信聊天记录的工具。 今天就给大家盘点三款&#xff1a; 1、微信电脑端备份 通过在电脑…