【已修复】OpenSSH 代码问题漏洞(CVE-2023-38408)

简介: 修复OpenSSH 代码问题漏洞(CVE-2023-38408)

升级前具有漏洞的的版本

通过命令查看目前系统的ssh和sshd版本:

ssh -V
sshd -V

image.png

注意:由于ssh是远程连接服务器的功能,在j进行下面操作升级openssh前,请打开多个连接会话使用 top 保持链接,如升级失败,可通过已连接的会话进行回滚操作。

升级

一、 安装操作系统依赖包:

yum install -y telnet gcc zlib-devel

二、下载软件包

openssl下载地址:/source/old/index.html

openssh下载地址:Index of /pub/OpenBSD/OpenSSH/portable/


三、编译升级

编译升级openssl-1.1.1w

  1. 进入到openssl-1.1.1w.tar.gz文件所在的目录,执行编译安装命令:
tar -xzvf openssl-1.1.1w.tar.gz
cd openssl-1.1.1w
mkdir -p /usr/openssh/openssl1.1.1w
./config --prefix=/usr/openssh/openssl1.1.1w
make
make install
ll /usr/openssh/openssl1.1.1w
cd ..
rm -rf openssl-1.1.1w
  1. 修改配置文件:

编辑/etc/profile配置文件(vi /etc/profile),设置环境变量,在profile文件最后添加如下两行:

export LD_LIBRARY_PATH=/usr/openssh/openssl1.1.1w/lib:$LD_LIBRARY_PATH
export PATH=/usr/openssh/openssh9.5p1/bin:/usr/openssh/openssh9.5p1/sbin:/usr/openssh/openssl1.1.1w/bin:$PATH
  1. 保存配置退出后,然后执行如下命令,确认openssl版本为1.1.1w:
source /etc/profile
openssl version

image.png


编译升级openssh-9.5p1

  1. 进入到openssh-9.5p1.tar.gz文件所在的目录,执行编译安装命令:
tar -xzvf openssh-9.5p1.tar.gz
cd openssh-9.5p1
mkdir -p /usr/openssh/openssh9.5p1
./configure --prefix=/usr/openssh/openssh9.5p1 --with-ssl-dir=/usr/openssh/openssl1.1.1w
make
make install
  1. 修改配置文件:
vi /usr/openssh/openssh9.5p1/etc/sshd_config
  1. 允许root登录,默认值prohibit-password表示root用户只能通过公私钥的方式登录,不能以密码的方式登录
PermitRootLogin yes
  1. 创建sshd服务自启动文件:
vi /usr/lib/systemd/system/sshd9.service
  1. 文件内容添加一下内容:
[Unit]
Description=OpenSSH server daemon
After=network.target
[Service]
Type=simple
Environment=LD_LIBRARY_PATH=/usr/openssh/openssl1.1.1w/lib
ExecStart=/usr/openssh/openssh9.5p1/sbin/sshd -D -f /usr/openssh/openssh9.5p1/etc/sshd_config
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s
[Install]
WantedBy=multi-user.target


停用原sshd服务,并备份相关文件

systemctl stop sshd.service
systemctl disable sshd.service

备份文件:

mkdir /home/ssh-old-bak
mv /etc/ssh /home/ssh-old-bak/
mv /usr/sbin/sshd /home/ssh-old-bak/
mv /usr/lib/systemd/system/sshd-keygen.service /home/ssh-old-bak/
mv /usr/lib/systemd/system/sshd.service /home/ssh-old-bak/
mv /usr/lib/systemd/system/sshd@.service /home/ssh-old-bak/
mv /usr/lib/systemd/system/sshd.socket /home/ssh-old-bak/

启动新的sshd服务

systemctl daemon-reload
systemctl start sshd9.service
systemctl status sshd9.service
systemctl enable sshd9.service

测试验证

重新连接一个新的窗口来测试新sshd是否可以正常连接,并测试版本号,最后重启服务器测试是否可以重启成功

sshd -V
ssh -V

image.png

目录
相关文章
|
安全 Shell 网络安全
OpenSSH ProxyCommand命令注入漏洞(CVE-2023-51385)
enSSH存在命令注入漏洞(CVE-2023-51385),攻击者可利用该漏洞注入恶意Shell字符导致命令注入。
2554 1
|
安全 数据安全/隐私保护
openssh和openssl的版本关系
【4月更文挑战第14天】openssh和openssl的版本关系
3418 0
|
SQL 监控 druid
Druid未授权访问 漏洞复现
Druid未授权访问 漏洞复现
21958 1
|
安全 Linux Shell
快速制作OpenSSH9.6p1的EL7版本rpm安装包
快速制作OpenSSH9.6p1的EL7版本rpm安装包
1844 0
|
安全 Linux Shell
CentOS7下快速升级至OpenSSH9.3p2安全版本
CentOS7下快速升级至OpenSSH9.3p2安全版本
1206 0
|
监控 安全 Linux
系统漏洞修复:升级OpenSSH+OpenSSL
系统漏洞修复:升级OpenSSH+OpenSSL
3659 0
|
运维 监控 安全
CentOS 7系统 OpenSSH和OpenSSL版本升级指南
本文详细介绍如何在CentOS 7系统上升级OpenSSH和OpenSSL至最新稳定版本(OpenSSH 9.6p1和OpenSSL 1.1.1w),解决多个已知安全漏洞(如CVE-2023-51767等)。涵盖环境说明、现存漏洞、升级准备、具体步骤及故障排查,确保服务器安全。建议先在测试环境验证,再应用于生产环境。
5746 7
|
Ubuntu 安全 Linux
openSSH升级
【10月更文挑战第2天】本文介绍了如何升级 OpenSSH 的步骤。首先,通过不同命令检查当前系统中的 OpenSSH 版本;其次,备份配置文件以防升级时丢失;然后,在 Debian/Ubuntu 和 CentOS/RHEL 系统中分别执行不同的命令进行升级;最后,验证升级后的版本并检查服务状态,解决兼容性问题,并考虑新的安全特性。
2762 3
|
安全 算法 应用服务中间件
SSL/TLS协议信息泄露漏洞(CVE-2016-2183)【原理扫描】
SSL/TLS协议信息泄露漏洞(CVE-2016-2183)【原理扫描】 【可验证】 详细描述TLS是安全传输层协议,用于在两个通信应用程序之间提供保密性和数据完整性。
13436 2

热门文章

最新文章