Networking

一個無線網路上的 SSH 主機標識更改

  • November 18, 2019

我經常通過 SSH 連接到遠端伺服器,來自 Ubuntu 系統,預設埠為 22。讓我們呼叫伺服器example.org。我確信此伺服器配置正確,並且我已確認以下問題與我的作業系統無關,並且在重新安裝後仍然存在。

有一個特定的 Wifi 接入點,如果我連接到伺服器 ( ssh example.org),我會得到:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:[REDACTED].
Please contact your system administrator.
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.
Offending ED25519 key in /home/user/.ssh/known_hosts:3
 remove with:
 ssh-keygen -f "/home/user/.ssh/known_hosts" -R "serv.org"
ED25519 host key for serv.org has changed and you have requested strict checking.
Host key verification failed.

有問題的接入點屬於學術機構,並且似乎比商業 ISP 網路更加封閉(例如,我無法在其上下載種子)。如果我回到另一個網路(例如,使用我的手機作為接入點),我可以再次連接。

根據 Wireshark 的說法:

  • 即使在有問題的接入點上,DNS 查詢 (to 8.8.8.8)也會返回相同的 IP 地址。example.org
  • SSH 密鑰交換似乎照常進行,但是當我通過有問題的 AP 連接時,伺服器在“ECDH 密鑰交換回复”中發送的密鑰確實具有不同的指紋。

我不明白這個網路在做什麼。阻止埠 22 是一回事,但在這裡我似乎到達了伺服器並得到了錯誤的密鑰作為響應。

這個接入點會故意篡改 SSH 連接嗎?儘管如此,有沒有辦法讓我安全地使用 SSH?我應該避免使用它嗎?

此系統主機密鑰正在更改或某人/某物正在 MITM 連接 SSH 連接。

適當的做法是認為該主機已受到損害(儘管它可能不是主機本身,而是連接),除非/直到您有解釋。

您可能需要聯繫該 AP 的系統管理員,將您的疑慮告知他們,並嘗試與他們一起追踪。

由於它是一個學術機構,我認為它可能是一個防火牆/安全網關,用於攔截和分析 SSH 流量以進行數據失去防護 (DLP) 或一般審計日誌記錄。

例如這樣的防火牆:https ://docs.paloaltonetworks.com/pan-os/9-0/pan-os-admin/decryption/decryption-concepts/ssh-proxy.html

引用自:https://serverfault.com/questions/992139