ssh爆漏洞了,手动更新OpenSSH教程
OpenSSH 远程代码执行漏洞(CVE-2024-6387)安全风险该漏洞是由于OpenSSH服务 (sshd) 中的信号处理程序竞争问题,未经身份验证的攻击者可以利用此漏洞在Linux系统上以root身份执行任意代码。目前该漏洞技术细节已在互联网上公开,该漏洞影响范围较大,建议尽快做好自查及防护。
影响版本: 8.5p1 - 9.7p1
大白话:处于8.5p1 - 9.7p1这个版本的SSH,外部攻击者可以随便草你的主机
查看最新版本文件
https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/
查看版本
ssh -V
更新安装必须的包
sudo apt-get-y updatesudo apt-get install build-essential zlib1g-dev libssl-dev
下载最新的包:
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz
解压:
tar -xzf openssh-9.8p1.tar.gzcd openssh-9.8p1
编译:
./configuremake
安装:
sudo make install
重启服务:
sudo systemctl restart ssh
查看版本
ssh -V
如果版本没显示openssh-9.8p1,就是需要添加环境变量:
echo 'export PATH=/usr/local/bin:/usr/local/sbin:$PATH' >> ~/.bashrc
验证生效
source ~/.bashrc
查看版本(出现openssh-9.8p1就OK)
ssh -V
最后重启
以下是附加的检查(可以忽略)
which ssh
如果输出 /usr/bin/ssh 或 /usr/sbin/ssh,表示当前系统使用的是旧版本的路径。
ls -l /usr/bin/ssh /usr/local/bin/ssh /usr/sbin/sshd /usr/local/sbin/sshd
这会显示多个可能的安装路径,如果 /usr/local/bin/ssh 和 /usr/local/sbin/sshd 文件存在,表示新版本的 OpenSSH 已安装在这些目录下。 各大发行版都更新了,你为什么要手工编译? 怎么又见直球编译安装的,是社区不行了还是觉得能躲过下次了 今天更新了一版:OpenSSH_9.2p1 Debian-2+deb12u3, OpenSSL 3.0.13 30 Jan 2024
这个就是fix了的。 OpenSSH_9.2p1 Debian-2+deb12u2, OpenSSL 3.0.13 30 Jan 2024
debian12更到最新版本也躲不过 Successful exploitation has been demonstrated on 32-bit Linux/glibc systems with ASLR. Under lab conditions, the attack requires on average 6-8 hours of continuous connections up to the maximum the server will accept. Exploitation on 64-bit systems is believed to be possible but has not been demonstrated at this time. It's likely that these attacks will be improved upon.
32位系统要6~8小时 64位更久
没人原因花这么长时间草你一台鸡 感谢楼主分享,debian 12直接在线更新就可以了,但是ubuntu 22的话官方源还没有更新,手动按照楼主给的教程确实编译成功ssh,但是所有操作都完成及重启后你看到ssh -V和运行的sshd服务进程不相符,系统默认运行的sshd服务进程还是/usr/sbin/sshd这个旧的程序,通过查看文件日期并不是最新编译的可执行文件,所以只看ssh -V不行。 :lol不懂别在这装 编译安装都不会的mjj可太懂了 你就这么信赖你的源一定是和全球版本同步的 或者一定包含最新更新 注意了, 网上流传的手动编译教程不一定适用,实际编译出来和系统里运行的路径不一致,造成升级成功的假象,建议检查实际运行进程的版本。
其中是这行有问题
echo 'export PATH=/usr/local/bin:/usr/local/sbin:$PATH' >> ~/.bashrc
页:
[1]
2