资讯动态

守护服务器安全|OpenSSH CVE-2024-6387 漏洞深度剖析 + 实操修复指南

发布时间:2026/10/10 4:07:09 来源:尧图企业网站定制
文章目录守护安全无死角OpenSSH CVE-2024-6387远程代码执行漏洞深度解析与修复全攻略1 漏洞简述1.1 漏洞成因1.2 漏洞影响1.3 处置优先级高2 影响版本3 解决方案3.1 临时缓解方案3.2 升级修复方案4 升级修复步骤4.1 检查OpenSSH升级前的版本4.2 安装依赖组件和依赖包4.2.1 安装依赖组件4.2.2 安装依赖包4.3 启用telnet服务4.3.1 检查是否安装telnet4.3.2 打开telnet服务4.3.3 启动telnet服务4.3.3.1 RedHat Linux CentOS Linux 5/64.3.3.2 RedHat Linux CentOS Linux 74.4 备份老版本相关命令4.5 编译安装升级zlib4.5.1 下载zlib4.5.2 编译安装zlib4.6 编译安装升级OpenSSL-fips4.6.1 下载OpenSSL-fips4.6.2 编译安装OpenSSL-fips4.7 编译安装升级OpenSSL4.7.1 下载OpenSSL4.7.2 编译安装OpenSSL4.8 修改并重建ssl动态链接库4.9 删除自带老版本OpenSSH4.10 编译安装升级OpenSSH4.10.1 下载OpenSSH4.10.2 编译安装升级OpenSSH版本4.10.3 替换老版本相关命令4.10.4 设置sshd服务并设置随系统自动启动4.10.5 重启sshd服务4.11 查看OpenSSH升级后的版本4.12 停止telnet服务4.12.1 设置telnet服务参数4.12.2 停止telnet服务4.12.2.1 RedHat Linux CentOS Linux 5/64.12.2.3 RedHat Linux CentOS Linux 7守护安全无死角OpenSSH CVE-2024-6387远程代码执行漏洞深度解析与修复全攻略手动编译更新Openssh到最新9.8p1版本。1 漏洞简述1.1 漏洞成因CVE-2024-6387 是 OpenSSH 服务器中的一个严重漏洞影响基于 glibc 的 Linux 系统。攻击者可以利用该漏洞在无需认证的情况下通过竞态条件远程执行任意代码获得系统控制权。这个漏洞源于处理超时信号时的不安全操作最早在 OpenSSH 8.5p1 版本中引入。1.2 漏洞影响成功利用该漏洞的攻击者可以以 root 身份进行未经身份验证的远程代码执行 (RCE)在某些特定版本的 32 位操作系统上攻击者最短需 6-8 小时即可获得最高权限的 root shell。而在 64 位机器上目前没有在可接受时间内的利用方案但未来的改进可能使其成为现实。1.3 处置优先级高漏洞类型远程代码执行漏洞危害等级高触发方式网络远程权限认证要求无需权限系统配置要求默认配置可利用用户交互要求无需用户交互利用成熟度部分 EXP 已公开适配单一版本32 位系统批量可利用性可使用通用原理 POC/EXP 进行检测/利用修复复杂度中官方提供升级修复方案2 影响版本组件影响版本安全版本OpenSSH8.5p1 OpenSSH 9.8p19.8p13 解决方案3.1 临时缓解方案如果暂时无法更新或重新编译 sshd可以在配置文件中将 LoginGraceTime 设置为 0永不超时。这样虽然会使 sshd 暴露于拒绝服务攻击占满所有 Startups 连接但可以避免远程代码执行风险。启用 fail2ban 等防护机制封禁发生过多次失败登录 ssh 尝试的来源 IP。3.2 升级修复方案将 OpenSSH 更新到最新版本 9.8p1 或者各发行版本的修复版本。4 升级修复步骤4.1 检查OpenSSH升级前的版本# ssh -V结果如下[rootsuperman ~]# ssh -V OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017 [rootsuperman ~]#4.2 安装依赖组件和依赖包4.2.1 安装依赖组件# yum groupinstall -y Compatibility libraries Development tools debugging Tools4.2.2 安装依赖包# yum install -y gcc* glibc* openssl-devel telnet telnet-server -y4.3 启用telnet服务4.3.1 检查是否安装telnet# rpm -qa | grep telnet确保有telnet和telnet-server包。结果如下[rootsuperman ~]# rpm -qa | grep telnet telnet-0.17-66.el7.x86_64 telnet-server-0.17-66.el7.x86_64 [rootsuperman ~]#4.3.2 打开telnet服务**注意**只需RedHat Linux CentOS Linux 5/6 操作即可RedHat Linux CentOS Linux 7无需操作。# vi /etc/xinetd.d/telnet将其中disable字段有yes改为no。4.3.3 启动telnet服务4.3.3.1 RedHat Linux CentOS Linux 5/6# ntsysv或者# service xinetd restart4.3.3.2 RedHat Linux CentOS Linux 7# systemctl start telnet.socket4.4 备份老版本相关命令# cp -f /usr/bin/openssl /usr/bin/openssl.bak # cp -f /usr/bin/ssh /usr/bin/ssh.bak # cp -f /usr/bin/slogin /usr/bin/slogin.bak # cp -f /usr/sbin/sshd /usr/sbin/sshd.bak4.5 编译安装升级zlib4.5.1 下载zlib# wget https://zlib.net/fossils/zlib-1.2.11.tar.gz4.5.2 编译安装zlib# tar -zxvf zlib-1.2.11.tar.gz # cd zlib-1.2.11 # ./configure # make make install # cd ../4.6 编译安装升级OpenSSL-fips4.6.1 下载OpenSSL-fips# wget https://www.openssl.org/source/old/fips/openssl-fips-2.0.16.tar.gz4.6.2 编译安装OpenSSL-fips# tar -zxvf openssl-fips-2.0.16.tar.gz # cd openssl-fips-2.0.16 # ./config # make make install # cd ../4.7 编译安装升级OpenSSL4.7.1 下载OpenSSL# wget https://www.openssl.org/source/old/1.1.1/openssl-1.1.1w.tar.gz4.7.2 编译安装OpenSSL# tar -zxvf openssl-1.1.1w.tar.gz # cd openssl-1.1.1w # ./config --prefix/usr/local/ssl -d shared # make depend # make make install # cd ../4.8 修改并重建ssl动态链接库# echo /usr/local/ssl/lib /etc/ld.so.conf # ldconfig4.9 删除自带老版本OpenSSH# for i in $(rpm -qa|grep openssh);do rpm -e $i --nodeps;done4.10 编译安装升级OpenSSH4.10.1 下载OpenSSH# wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz4.10.2 编译安装升级OpenSSH版本# tar -xzf openssh-9.8p1.tar.gz # cd openssh-9.8p1 # ./configure --sysconfdir/etc/ssh --with-ssl-dir/usr/local/ssl # make make install # chmod 600 /etc/ssh/ssh_host*4.10.3 替换老版本相关命令# \cp -f /usr/local/bin/ssh /usr/bin # \cp -f /usr/local/bin/ssh-keygen /usr/bin/ # \cp -f /usr/local/ssl/bin/openssl /usr/bin/ # \cp -f /usr/local/sbin/sshd /usr/sbin/ # \cp ./contrib/redhat/sshd.init /etc/init.d/sshd # cd ..4.10.4 设置sshd服务并设置随系统自动启动# chkconfig --add sshd # chkconfig sshd on4.10.5 重启sshd服务# systemctl restart sshd4.11 查看OpenSSH升级后的版本# sshd -V结果如下[rootsuperman ~]# ssh -V OpenSSH_9.8p1, OpenSSL 1.1.1w 11 Sep 2023 [rootsuperman ~]#4.12 停止telnet服务4.12.1 设置telnet服务参数**注意**只需RedHat Linux CentOS Linux 5/6 操作即可RedHat Linux CentOS Linux 7无需操作。# vi /etc/xinetd.d/telnet将其中disable字段有no改为yes。4.12.2 停止telnet服务4.12.2.1 RedHat Linux CentOS Linux 5/6# ntsysv或者# service xinetd restart4.12.2.3 RedHat Linux CentOS Linux 7# systemctl stop telnet.socket原文链接https://mp.weixin.qq.com/s?__bizMzkxNzI1OTE3Mwmid2247492223idx1sn96d09c5b77eb3dc973748e95c21dd598chksmc141f4b5f6367da35eaa0c1b9760ed3c70c5e96085d257ce347f437e8b8e2261c04c78b0c867token300531807langzh_CN#rd 点赞你的认可是我创作的动力⭐️ 收藏你的青睐是我努力的方向✏️ 评论你的意见是我进步的财富今天只要你给我的文章点赞我私藏的网安学习资料一样免费共享给你们来看看有哪些东西。网络安全学习资源分享:给大家分享一份全套的网络安全学习资料给那些想学习 网络安全的小伙伴们一点帮助对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。网络安全学习路线学习资源对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。**读者福利 |**【CSDN大礼包】最新网络安全/网安技术资料包~282G无偿分享**安全链接放心点击**!网络安全的知识多而杂怎么科学合理安排下面给大家总结了一套适用于网安零基础的学习路线应届生和转行人员都适用学完保底6k就算你底子差如果能趁着网安良好的发展势头不断学习日后跳槽大厂、拿到百万年薪也不是不可能初级网工1、网络安全理论知识2天①了解行业相关背景前景确定发展方向。②学习网络安全相关法律法规。③网络安全运营的概念。④等保简介、等保规定、流程和规范。非常重要2、渗透测试基础一周①渗透测试的流程、分类、标准②信息收集技术主动/被动信息搜集、Nmap工具、Google Hacking③漏洞扫描、漏洞利用、原理利用方法、工具MSF、绕过IDS和反病毒侦察④主机攻防演练MS17-010、MS08-067、MS10-046、MS12-20等3、操作系统基础一周①Windows系统常见功能和命令②Kali Linux系统常见功能和命令③操作系统安全系统入侵排查/系统加固基础4、计算机网络基础一周①计算机网络基础、协议和架构②网络通信原理、OSI模型、数据转发流程③常见协议解析HTTP、TCP/IP、ARP等④网络攻击技术与网络安全防御技术⑤Web漏洞原理与防御主动/被动攻击、DDOS攻击、CVE漏洞复现5、数据库基础操作2天①数据库基础②SQL语言基础③数据库安全加固6、Web渗透1周①HTML、CSS和JavaScript简介②OWASP Top10③Web漏洞扫描工具④Web渗透工具Nmap、BurpSuite、SQLMap、其他菜刀、漏扫等恭喜你如果学到这里你基本可以从事一份网络安全相关的工作比如渗透测试、Web 渗透、安全服务、安全分析等岗位如果等保模块学的好还可以从事等保工程师。薪资区间6k-15k到此为止大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗【“脚本小子”成长进阶资源领取】7、脚本编程初级/中级/高级在网络安全领域。是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中面对复杂多变的网络环境当常用工具不能满足实际需求的时候往往需要对现有工具进行扩展或者编写符合我们要求的工具、自动化脚本这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中想要高效地使用自制的脚本工具来实现各种目的更是需要拥有编程能力.零基础入门建议选择脚本语言Python/PHP/Go/Java中的一种对常用库进行编程学习 搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP IDE强烈推荐Sublime ·Python编程学习学习内容包含语法、正则、文件、 网络、多线程等常用库推荐《Python核心编程》不要看完 ·用Python编写漏洞的exp,然后写一个简单的网络爬虫 ·PHP基本语法学习并书写一个简单的博客系统 熟悉MVC架构并试着学习一个PHP框架或者Python框架 (可选) ·了解Bootstrap的布局或者CSS。8、超级网工这部分内容对零基础的同学来说还比较遥远就不展开细说了贴一个大概的路线。感兴趣的童鞋可以研究一下不懂得地方可以【点这里】加我耗油跟我学习交流一下。网络安全工程师企业级学习路线如图片过大被平台压缩导致看不清的话可以【点这里】加我耗油发给你大家也可以一起学习交流一下。一些我自己买的、其他平台白嫖不到的视频教程需要的话可以扫描下方卡片加我耗油发给你都是无偿分享的大家也可以一起学习交流一下。网络安全学习路线学习资源结语网络安全产业就像一个江湖各色人等聚集。相对于欧美国家基础扎实懂加密、会防护、能挖洞、擅工程的众多名门正派我国的人才更多的属于旁门左道很多白帽子可能会不服气因此在未来的人才培养和建设上需要调整结构鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”才能解人才之渴真正的为社会全面互联网化提供安全保障。特别声明此教程为纯技术分享本书的目的决不是为那些怀有不良动机的人提供及技术支持也不承担因为技术被滥用所产生的连带责任本书的目的在于最大限度地唤醒大家对网络安全的重视并采取相应的安全措施从而减少由网络安全而带来的经济损失

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑