最近,OpenSSH 修復了一個遠程代碼執行漏洞(CVE-2024-6387)。該漏洞是由於 OpenSSH 服務器(sshd)中的信號處理程序競爭問題引起,未經身份驗證的攻擊者可以利用此漏洞在 Linux 系統上以 root 身份執行任意代碼。目前,該漏洞的技術細節(包括概念驗證代碼,PoC)已在互聯網上公開。建議受此漏洞影響的用戶儘快升級至最新版本以修復該漏洞。
影響範圍#
- OpenSSH < 4.4p1
- 8.5p1 <= OpenSSH < 9.8p1
修復目標#
OpenSSH >= 9.8p1
修復過程#
選擇 9.8p1。
查看當前安裝版本。如果無法運行 dnf
命令,請替換 dnf
為 yum
dnf list installed openssh
查看當前運行的版本
ssh -V
查看包管理器可安裝版本
dnf list available openssh
發現不滿足 OpenSSH >= 9.8p1 。從 OpenSSH 下載安裝
wget https://cloudflare.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz
解壓
tar -xzf openssh-9.8p1.tar.gz
cd openssh-9.8p1
查看當前安裝目錄
which sshd && which ssh
位置 /usr/bin/ssh
根據安裝位置調整以下命令的prefix
參數:
sudo ./configure --prefix=/usr
然後
make
sudo make install
查看更新情況
ls -l /usr/bin/ssh
ls -l /usr/sbin/sshd
查看當前版本
ssh -V
更新完成。
如果是通過 SSH 連接上 linux,不要斷開連接。使用新終端連接一次 linux,如果連接成功,再斷開。如果不能連接,再解決問題。