觀點 · 資訊分享

OpenSSH 10.4 釋出:修補 sftp、scp 遇到惡意伺服器的問題等 8 項安全修正,還有 3 項不相容變更

OpenSSH 在 7 月 6 日釋出 10.4:列出 8 項安全修正(含 sftp 下載位置被惡意伺服器改掉、scp 可寫到上層資料夾、sshd 設定被截斷等),另有 3 項可能不相容的變更,並加入實驗性的後量子混合簽章。

發布
2026-07-06
篇幅
約 4 分鐘 · 1,839 字
結構
7 節 + 3 題常見問題
標籤
#OpenSSH#SSH#安全更新#後量子密碼
OpenSSH 10.4 釋出:修補 sftp、scp 遇到惡意伺服器的問題等 8 項安全修正,還有 3 項不相容變更

一句話看懂:OpenSSH 10.4 在 7 月 6 日釋出,補上 8 項安全問題,其中最值得注意的是 sftp 與 scp 連到惡意伺服器時,檔案可能被放到意外的位置。

OpenSSH 10.4 安全更新重點資訊圖卡:SSH 連線工具遇到惡意伺服器時的多個問題被修補

先用白話講:OpenSSH 是什麼?

你幾乎每天都在用它,只是自己可能沒發現:用終端機連線到伺服器、用 sftp 或 scp 傳檔案、Git 透過 SSH 推程式碼,背後多半都是 OpenSSH。它就像一條加密的專用通道,讓你和遠端的機器安全地對話。

這次的問題大多出在「通道另一端的伺服器不可信」的情境:就像你去陌生人家裡收快遞,對方可以騙你把包裹放到他指定的地方。

發生什麼事

OpenSSH 官方在 2026 年 7 月 6 日釋出 10.4,發行說明列出 8 項安全修正:

  • sftp 下載位置:用 sftp host:/path . 下載檔案時,惡意伺服器可以讓檔案被存到非預期的位置
  • scp 寫到上層:在兩台遠端主機之間複製時,惡意伺服器可以把檔案寫到目標資料夾的上一層
  • internal-sftp 參數被截斷:使用 internal-sftp(不是預設)時,命令列在第 9 個參數之後會被默默截掉;如果安全相關的選項放在第 10 個以後,就會失效
  • DisableForwarding 沒蓋過 PermitTunnel:設了 DisableForwarding=yes,卻沒有如文件所說蓋過 PermitTunnel=yes(PermitTunnel 預設是關的)
  • GSSAPI 預登入阻斷服務:開啟 GSSAPIAuthentication(預設關閉)時,可能發生預登入階段的阻斷服務,MaxAuthTries 擋不住,但 PerSourcePenalties 會懲罰
  • 最小驗證延遲沒執行:有幾種情況沒有強制執行最小驗證延遲
  • ssh 用戶端 use-after-free:伺服器在重新交換金鑰時更換主機金鑰,用戶端可能使用已釋放的記憶體
  • GSSAPIStrictAcceptorCheck 說明補充:當伺服器加入 Windows Active Directory 時,這個選項其實無效,官方先補上文件說明

升級前要注意的不相容變更

變更 影響
sshd -G 輸出改用大小寫混合 例如 PubkeyAuthentication,以前只輸出小寫;用腳本解析輸出的人要留意
Linux 上 seccomp 沙盒啟用失敗改為致命 以前只記錄錯誤就繼續跑;缺少功能的系統要在編譯時關閉沙盒
重新交換金鑰期間更嚴格 對方在登入後的金鑰交換期間送非金鑰訊息,會被直接斷線

給開發者的技術細節

  • 新增實驗性的後量子混合簽章:ML-DSA 44 加 Ed25519,預設不啟用,要加到 HostKeyAlgorithms、PubkeyAcceptedAlgorithms 等設定,金鑰可用 ssh-keygen -t mldsa44-ed25519 產生
  • 萬用字元比對改用 NFA 實作,避免舊實作在最壞情況下的指數級耗時
  • sshd 的設定檔解析做了大幅重構,更精確地在權限分離的行程之間傳遞設定
  • 後續:7 月 8 日,NVD 公開 CVE-2026-60002,說明 10.4 以前的 ssh 在伺服器於金鑰重新交換時更換主機金鑰會有 use-after-free,只影響用戶端;對應的就是 10.4 修掉的那一項

我的看法

多數人的 sshd 是跟著 Linux 發行版更新的,不會馬上拿到 10.4,所以不用手動追版本,但要知道自己的主機大致用哪個版本,並確認系統安全更新有在跑。

要特別注意的是 sftp 與 scp 這種「用戶端」風險:日常工作如果常需要連到客戶或第三方給的 SFTP 主機,就是這次修正的情境。養成幾個習慣:不要用 scp 或 sftp 去連不信任的伺服器;下載檔案前先看清楚目的路徑;定期升級用戶端。另外,在腳本裡解析 sshd -G 輸出的人,升級前先在測試機確認輸出格式。

名詞小辭典

  • SSH:用加密通道安全連線到遠端機器的協定。
  • use-after-free:程式使用已經釋放的記憶體,可能被利用來執行惡意程式碼。
  • seccomp 沙盒:Linux 的一種機制,限制行程只能做特定的系統操作。
  • 後量子密碼:能抵抗未來量子電腦攻擊的加密技術。

資料來源

常見問題

我日常用 ssh 連自己的伺服器,需要擔心嗎?
這次最主要的風險情境是「連到不受信任的伺服器」,例如 sftp 或 scp 對方是惡意的。連自己管理、可信的主機風險較低;但 OpenSSH 是所有 Linux 與伺服器的基礎工具,升級到新版仍是好習慣。
升級後最可能踩到什麼雷?
依官方說明:在啟用 seccomp 沙盒的 Linux 上,如果系統不支援 SECCOMP 或 NO_NEW_PRIVS,以前只記錄錯誤,現在 sshd 會直接失敗,這類系統要在編譯時關閉沙盒。另外,對方若沒有遵守 RFC 4253 對金鑰交換期間訊息的限制,可能會被斷線。
後量子簽章是什麼,現在要用嗎?
這是為了防範未來量子電腦破解傳統加密而準備的新簽章方式。10.4 加入的是 ML-DSA 44 與 Ed25519 的混合方案,官方標示為實驗性且預設不啟用,要自己加到 HostKeyAlgorithms 等設定才會用到,一般人暫時不需要。
LINE