前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux升级OpenSSH和OpenSSL,解决XMSS Key 解析整数溢出漏洞、OpenSSL 拒绝服务漏洞

Linux升级OpenSSH和OpenSSL,解决XMSS Key 解析整数溢出漏洞、OpenSSL 拒绝服务漏洞

原创
作者头像
Mintimate
修改2021-07-06 12:07:55
7.6K4
修改2021-07-06 12:07:55
举报
文章被收录于专栏:Mintimate's BlogMintimate's Blog

作者:Mintimate

博客:https://www.mintimate.cn

Mintimate's Blog,只为与你分享

注意⚠️:

本次教程适用于:Linux(CentOS、Debian),macOS请勿使用。

本文章部分参考:https://cloud.tencent.com/developer/article/1745705

封面
封面

OpenSSH和OpenSSL

🔧OpenSSL

OpenSSL其实是一个开源的C函数库,多用于加密依赖,很多程序的编译,需要OpenSSL作为依赖包。

 🖥OpenSSH

OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现,类似于OpenJDK和OracleJDK的区别。需要用到OpenSSL的函数库,所以在更新OpenSSH前,最好先更新OpenSSL。

SSH协议族可以用来进行远程控制, 或在计算机之间传送文件。相对于传统方式,OpenSSH提供了服务端后台程序和客户端工具,并且加密远程控制和文件传输过程中的数据。

简单地说,日常使用OpenSSH:远程控制服务器端,如:远程登录访问Linux的Terminal。且过程中加密传输。

OpenSSL 拒绝服务漏洞

拒绝服务漏洞,代号为:CVE-2021-3449

  • 主要是一些操作,可能会让OpenSSL TLS 强行停止。【我感觉这个漏洞不是很严重啦,但是大家都觉得很严重……那还是有必要修复一下╮( ̄▽ ̄"")╭】
腾讯云后台警告⚠️
腾讯云后台警告⚠️

解决方法很简单:升级OpenSSL版本

XMSS Key 解析整数溢出漏洞

XMSS Key漏洞,代号为:CVE-2019-16905

  • 主要是非法用户,可以通过此漏洞,跳过OpenSSH的认证,远程登录到你服务器【不过计算难度挺高的,而且条件苛刻……】。

但是,总归是重大漏洞,需要修复:

腾讯云后台警告⚠️
腾讯云后台警告⚠️

解决方法很简单:升级OpenSSH版本

🚀升级OpenSSL

升级的方法很简单:

  • 下载新版本OpenSSL源码
  • 备份旧版本OpenSSL
  • 编译安装新版本OpenSSL

下载新版本OpenSSL源码

这边推荐下载地址:https://ftp.openssl.org/source

下载文件
下载文件

比如,我这边下载openssl-1.1.1k.tar.gz。到Linux控制台内,使用wget下载即可(你也可以使用宝塔等软件下载,但是记得权限问题):

代码语言:txt
复制
wget 'https://ftp.openssl.org/source/openssl-1.1.1k.tar.gz'
使用wget下载
使用wget下载
下载OpenSSL成功
下载OpenSSL成功

之后,我们解压这个tar.gz文件夹,并进入:

代码语言:txt
复制
# 使用tar工具包解压
tar -xf openssl-1.1.1k.tar.gz
# 进入文件夹
cd openssl-1.1.1k
进入SSL文件夹
进入SSL文件夹

备份旧版本OpenSSL

为了避免编译过程中,出现意外(如:远程SSH突然断连,导致编译失败);我们提前备份旧版本OpenSSL,给回滚“留条路”(如果你之前都没有安装OpenSSL,这步可以跳过):

代码语言:txt
复制
# 备份OpenSSL到用户目录,并重命名为openBak
mv openssl ~/openBak

编译安装新版本OpenSSL

刚刚我们已经在新的OpenSSL目录,所以我们可以直接开始编译。首先,设置配置。我们使用默认的即可:

代码语言:txt
复制
./config
设置/config
设置/config

之后,进行make编译操作:

代码语言:javascript
复制
make

最后,进行make install安装操作:

代码语言:javascript
复制
make install
make操作ing
make操作ing
make install操作ing
make install操作ing

操作完成后/usr/bin下重新有openssl文件。我们只需要重新建立软连接即可:

代码语言:txt
复制
ln -s /usr/local/bin/openssl /usr/bin/openssl
重新建立软链接🔗
重新建立软链接🔗

到此,OpenSSL升级完成。重新腾讯云安全检测:

修复OpenSSL成功
修复OpenSSL成功

升级OpenSSH

OpenSSH的升级的方法也很简单:

  • 下载新版本OpenSSH源码
  • 备份(移除)旧版本OpenSSH
  • 编译安装新版本OpenSSH
  • 重启OpenSSH进程服务(重要‼️)

下载新版本OpenSSH源码

同样,这边推荐下载地址:http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/

和OpenSSL的下载方法一样,不再赘述:

下载OpenSSH成功
下载OpenSSH成功

之后,我们解压tar.gz文件后,进入该目录以备后续编译:

进入OpenSSH目录
进入OpenSSH目录

备份(移除)旧版本OpenSSH

我们要移除旧版本的OpenSSH配置:

代码语言:txt
复制
# 备份旧文件
cp /etc/ssh ~/sshBak
# 删除旧文件
rm -rf /etc/ssh/*

编译安装新版本OpenSSH

刚刚我们已经在新的OpenSSH目录,所以我们可以直接开始编译。首先,设置配置。我们使用默认的即可:

代码语言:txt
复制
./configure

之后,进行make编译操作:

代码语言:txt
复制
make

最后,进行make install安装操作:

代码语言:txt
复制
make install
make(SSH)
make(SSH)
make install(SSH)
make install(SSH)

这个时候,其实OpenSSH已经更新完成,但是这个时候重启SSH,你可能就无法登录了嗷。

重启OpenSSH进程服务(重要‼️)

这个时候,我们扫描SSH进程:

扫描SSH进程
扫描SSH进程

因为我没改SSH远程端口,所以我扫描PID是,是:

代码语言:txt
复制
lsof -i:22

根据返回的PIDkill掉SSH进程:

代码语言:txt
复制
kill 28259
kill掉进程
kill掉进程

之后,SSH会自动断开。重新连接即可。

到处,OpenSSH升级成功,重新腾讯云安全检测:

修复OpenSSH成功
修复OpenSSH成功

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • OpenSSH和OpenSSL
    • 🔧OpenSSL
      •  🖥OpenSSH
      • OpenSSL 拒绝服务漏洞
      • XMSS Key 解析整数溢出漏洞
      • 🚀升级OpenSSL
      • 下载新版本OpenSSL源码
        • 备份旧版本OpenSSL
          • 编译安装新版本OpenSSL
          • 升级OpenSSH
            • 下载新版本OpenSSH源码
              • 备份(移除)旧版本OpenSSH
              • 编译安装新版本OpenSSH
                • 重启OpenSSH进程服务(重要‼️)
                相关产品与服务
                轻量应用服务器
                轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、游戏服、电商应用、云盘/图床和开发测试环境,相比普通云服务器更加简单易用且更贴近应用,以套餐形式整体售卖云资源并提供高带宽流量包,将热门开源软件打包实现一键构建应用,提供极简上云体验。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档