OpenSSH_9.3p1 升级到 OpenSSH_9.5p1

OpenSSH_9.3p1 升级到 OpenSSH_9.5p1

文章声明:此文基于实操撰写 生产环境:此文升级是基于9.3p1升级9.5p1
ssh -V查看版本是:OpenSSH_9.3p1, OpenSSL 1.1.1t 7 Feb 2023
问题关键字:OpenSSH 升级, OpenSSH 更新, OpenSSH 漏洞修复
漏洞信息:OpenSSH 命令注入漏洞(CVE-2020-15778)、OpenSSH 安全漏洞(CVE-2023-38408)

OpenSSH_9.3p1 升级到 OpenSSH_9.5p1

漏洞描述

OpenSSH 命令注入漏洞(CVE-2020-15778) 详细描述:

OpenSSH(OpenBSD Secure Shell)是OpenBSD计划组的一套用于安全访问远程计算机的连接工具。该工具是SSH协议的开源实现,支持对所有的传输进行加密,可有效阻止窃听、连接劫持以及其他网络级的攻击。
OpenSSH 9.3p3及之前版本中的scp的scp.c文件存在命令注入漏洞。该漏洞源于外部输入数据构造可执行命令过程中,网络系统或产品未正确过滤其中的特殊元素。攻击者可利用该漏洞执行非法命令。

OpenSSH 安全漏洞(CVE-2023-38408) 详细描述:

OpenSSH(OpenBSD Secure Shell)是加拿大OpenBSD计划组的一套用于安全访问远程计算机的连接工具。该工具是SSH协议的开源实现,支持对所有的传输进行加密,可有效阻止窃听、连接劫持以及其他网络级的攻击。

CVE-2023-38408是一个远程代码执行漏洞,位于 ssh-agent 的转发功能内,特别是涉及提供PKCS#11相关服务的情况下。在某些条件下,可以操纵ssh-agent对PKCS#11的支持,以便通过转发的代理套接字来促进远程代码执行。利用的先决条件包括受害者系统上存在特定库以及需要将代理转发到攻击者控制的系统。

OpenSSH 9.3p1之前版本存在安全漏洞,该漏洞源于ssh-agent的PKCS11功能存在安全问题。攻击者可利用该漏洞执行远程代码。可以将openssh升级到9.3p1及以上版本。

前述
OpenSSH(OpenBSD Secure Shell)是OpenBSD计划组的一套用于安全访问远程计算机的连接工具。该工具是SSH协议的开源实现,支持对所有的传输进行加密,可有效阻止窃听、连接劫持以及其他网络级的攻击。 OpenSSH 8.9版本至9.5之前版本存在安全漏洞,该漏洞源于将智能卡密钥添加到ssh-agent,会导致忽略每次转发的目标约束。
注:此操作步骤同样适用于Red Hat系所有 9.x 服务器系统。

注意事项:

在升级之前,建议打开多个SSH终端连接,并安装telnet服务器,确保在SSH服务器升级异常时,可以通过telnet服务器远程连接,进行紧急问题修复处理。
在升级前一定要备份原有的配置文件,以防出现意外情况。

此文升级是基于9.3p1升级9.5p1
备份openssh9.3p1的配置文件

[root@localhost ~]# mv /usr/sbin/sshd /usr/sbin/sshd-9.3p1
[root@localhost ~]# mv /usr/bin/ssh /usr/bin/ssh-9.3p1
[root@localhost ~]# mv /usr/bin/ssh-keygen /usr/bin/ssh-keygen-9.3p1
[root@localhost ~]# mv /etc/init.d/sshd /etc/init.d/sshd-9.3p1
[root@localhost ~]# mv /etc/pam.d/sshd.pam /etc/pam.d/sshd.pam-9.3p1

如果不需要备份的这些配置可以在升级完成之后确认没有问题再将其删除。

下载 openssh9.5p1 的安装包:


wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.5p1.tar.gz

解压并编译安装openssh9.5p1

# 将下载的openssh安装包移动到/usr/local下
[root@localhost ~]# mv openssh-9.5p1.tar.gz /usr/local/

# 进入/usr/local/目录解压openssh9.4
[root@localhost ~]# cd /usr/local/
[root@localhost local]# tar xf openssh-9.5p1.tar.gz

# 进入openssh目录
[root@localhost local]# cd openssh-9.5p1

# 编译安装
[root@localhost openssh-9.5p1]# CCFLAGS="-I/usr/local/include" \
LDFLAGS="-L/usr/local/lib64" \
./configure \
--sysconfdir=/etc/ssh \
--with-zlib \
--with-ssl-dir=/usr/local/openssl

[root@localhost openssh-9.5p1]# make -j 4
[root@localhost openssh-9.5p1]# make install

授权

[root@localhost openssh-9.5p1]# chmod 600 /etc/ssh/*

复制配置文件

[root@localhost openssh-9.5p1]# cp -rf /usr/local/sbin/sshd /usr/sbin/sshd
[root@localhost openssh-9.5p1]# cp -rf /usr/local/bin/ssh /usr/bin/ssh
[root@localhost openssh-9.5p1]# cp -rf /usr/local/bin/ssh-keygen /usr/bin/ssh-keygen
[root@localhost openssh-9.5p1]# cp -ar /usr/local/openssh-9.5p1/contrib/redhat/sshd.init /etc/init.d/sshd
[root@localhost openssh-9.5p1]# cp -ar /usr/local/openssh-9.5p1/contrib/redhat/sshd.pam /etc/pam.d/sshd.pam

给sshd授予权限

chmod 755 /etc/init.d/sshd

启用sshd,生成服务配置文件,并重启服务

# 启用sshd,生成服务配置文件
[root@localhost openssh-9.5p1]# systemctl enable sshd
sshd.service is not a native service, redirecting to /sbin/chkconfig.
Executing /sbin/chkconfig sshd on

# 重启服务
[root@localhost openssh-9.5p1]# systemctl restart sshd
# 查看服务状态
[root@localhost openssh-9.5p1]# systemctl status sshd

验证升级是否成功

[root@localhost openssh-9.5p1]#  ssh -V
OpenSSH_9.5p1, OpenSSL 1.1.1t  7 Feb 2023

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/10547

(0)
凯影的头像凯影
上一篇 2023年12月13日 下午3:55
下一篇 2023年12月14日 下午3:16

相关推荐

  • 常见IIS错误解决方法

    1、错误号401.1症状:HTTP 错误 401.1 – 未经授权:访问由于凭据无效被拒绝。分析:由于用户匿名访问使用的账号(默认是IUSR_机器名)被禁用,或者没有权限访问计算机,将造成用户无法访问。解决方案:(1)查看IIS管理器中站点安全设置的匿名帐户是否被禁用,如果是,请尝试用以下办法启用:控制面板->管理工具->计算机管理->本地用户和组,将IUS…

    2022年11月25日
    1.8K00
  • Hyper-V虚拟机显卡虚拟化VGPU 配置指南V2.0

    ⚠️ 重要前提 🔧 配置脚本(管理员 PowerShell) 运行脚本(管理员权限) 脚本操作流程(交互式步骤) 步骤 操作 说明 1 输入虚拟机名称 输入您要配置的Hyper-V虚拟机名称(区分大小写) 2 确认关闭虚拟机 如果虚拟机正在运行,需要关闭才能继续 3 设置显存分配 输入推荐显存大小(GB),默认1GB 4 确认配置 查看配置参数并确认应用 5…

    2025年6月14日
    3.3K00
  • Linux如何调整Swap空间大小

    查看当前Swap文件位置以及大小 要查看当前正在使用的swap文件或分区的位置,您可以使用swapon命令。 执行以下命令: 这将显示所有活动的swap空间,包括其类型(例如文件或分区)、大小、使用情况和位置。 如果您只对文件路径或分区路径感兴趣,您可以通过/proc/swaps文件查看相同的信息: 这将列出系统上所有的swap空间,包括它们的位置。 设置一…

    2023年11月6日
    1.5K00
  • CentOS图形化界面和命令行界面的转化–超详细(Linux操作系统)

    对于我这样的小白来说,Linux系统的图形化界面更加简单,但是Linux命令行才是精髓,如何进行转化呢? 1、快捷键方式切换(较为简单) 图形化界面转化成命令行界面  ctrl+alt+F3 命令行界面转化为图形化界面 ctrl+alt+F1 2、命令行形式切换切换成命令行模式: systemctl set-default mu…

    2023年12月13日
    2.1K00
  • 在Linux系统内启动某个服务时提示task: Cannot allocate memory该如何处理?

    问题现象 在ECS实例中启动某个服务进程时,系统提示task: Cannot allocate memory错误,如下图所示。 可能原因 可能是系统进程数超限导致。 Linux内核通过内核配置参数kernel.pid_max限制进程的数量,当运行的服务的总进程数超出kernel.pid_max的值时,再创建新进程时系统会报错task: Cannot allo…

    2023年11月14日
    1.4K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信