使用SSH遠端工作環境,需要注意的資安風險!
- WIZON MKT

- 2023年8月21日
- 讀畢需時 4 分鐘
已更新:2023年9月5日
相信有不少人都曾經用過 SSH 來進行主機的管理。大多數的主機都會啟用 SSH 服務,提供給負責管理維運網路或系統的IT管理人員進行遠端登入使用。因為使用到SSH服務是很常見的,而且多半是屬於敏感重要的情況,因此當有網路犯罪者在嘗試攻擊的時候,通常會將 SSH 服務納入攻擊範圍內。因此讓我們了解一下什麼是 SSH 服務?以及要如何安全的使用SSH服務。
認識SSH服務
早期的網路環境,會利用像是 Telnet 、 rsh 等協定來進行遠端主機的登入,對於在90年代曾用過BBS站台的前輩或許有些記憶印象,這類的通訊方式是將文字訊息模式進行傳送,因此網路傳輸量很小,相對需要的網路頻寬少、傳輸速度快。不過,這些透過Telnet或rsh方式的通訊過程中是採取不加密的「明文傳輸 (或說 明碼傳輸)」,而明文傳輸也就意味著「傳送的內容能夠被看光光」的情況,因此存在著被監聽、中間人攻擊等安全性上的問題跟疑慮。
為了解決這樣的問題,因此設計了 SSH協定來取代 Telnet及rsh這類不安全的方式。SSH的全名為Secure SHell 安全加殼協定,是一種加密的安全網路傳輸協定,主要是在不安全的網路環境下為網路服務提供安全連線,常見的用途為遠端登入系統以及遠端執行指令等等。
現今,SSH已經是一種被廣泛使用的連線方式,包括眾所熟知的Linux、Unix、Windows等作業系統,還有各種網路及安全設備、雲端環境的系統以及容器化環境等等,都可見到提供 SSH 協定的功能支援。而這要歸功於 OpenSSH這個開源計畫的出現,因此目前大多都已經用 SSH 取代了之前不安全的連線方式。
該注意的SSH安全風險
雖然,不論是SSH安全通訊或OpenSSH開源軟體都是相對安全可信的方式,但仍舊會有「不安全的資安問題」需要關注!
SSH通訊方式以非對稱式加密的方式來進行身份驗證,常見有兩種登入的方式,一種是利用自動生成的公鑰和私鑰來進行加密連線,再利用密碼驗證登入。另一種方式是先產生一組金鑰,例如用 ssh-keygen 的方式產生,將產生的公鑰放在遠端的主機上,client 端上存放著私鑰,連線時直接透過金鑰進行驗證。以安全性來說,第一種密碼驗證的方式,可能會被攻擊者利用憑證填充攻擊的方式進行暴力破解,因此比較建議利用第二種金鑰驗證的方式進行連線,或是利用多因子驗證的方式進行連線。 SSH 服務安全性上比較常見的問題,例如有因為支援弱加密演算法而產生的弱點、披露的CVE漏洞等。前者可能加密內容會因此被破解,後者可能會發生攻擊者遠端執行任意程式碼的情況。想避免或是降低發生事件的風險,前者可以透過修改設定檔取消支援不安全的加密演算法,後者大多數的情況下是需要進行版本更新來修補漏洞。
安全的使用SSH服務
想要安全的使用SSH 服務,以下幾個建議提供參考:
網路存取管控
SSH主要使用的網路埠為Port 22,因此對於連線的網路防火牆做好SSH (Port 22)的通訊管制是必要的基礎工作,甚至是對應系統主機的位址(IP 及 Mac)綁定,避免不需要提供SSH服務的系統被非法利用,並且對允許提供SSH服務的系統持續監控。
使用存取管控
SSH服務的存取使用可能是來自於人或系統設備,因此應該盡量避免直接使用預設的高權限帳號登入,並且建議使用金鑰驗證的方式、或是採用多因子驗證進行連線。有2個重點更需要注意:
1. 第一是檢查『不允許提供SSH服務的系統』上是否開放了不必要的SSH服務,尤其是在Linux或UNIX的系統環境經常發生SSH服務為預設啟用,但是被IT管理者忽略。
2. 第二是檢查『允許提供SSH服務的系統』上是否有不必要的使用帳號,比如共用帳號或預設服務帳號,容易被遭到暴力破解並利用。
漏洞安全管理
任何系統及服務都存在不安全風險,尤其是漏洞問題。因此在漏洞安全的重點有2個層面:
1. 掌握有關SSH通訊協定的漏洞安全問題,針對『通訊協定』,這是存在機制的問題,只要是利用SSH通訊服務相關的安全問題都可能被攻擊。
2. 掌握有關OpenSSH開源軟體的漏洞安全問題,針對『OpenSSH開源軟體』的漏洞問題,這也涉及軟體供應安全的議題,例如某個商用系統軟體中內置了OpenSSH作為SSH服務元件的情況。
安全設定與稽核
1. 禁止使用容易被破解的弱加密演算法設定,避免SSH連線的加密訊息被攔截破解。
2. 設定存取的稽核要求,比如嘗試登入失敗的次數限制、限定登入閒置超時的自動登出、取得SSH登入跟使用的稽核紀錄等。
結論
SSH連線服務是一種使用性極為廣泛,並且多數使用情境是屬於管理操作性質,傳輸的訊息資料也相對敏感重要,因此也藉由本篇的說明來提供各位對於SSH安全有更多的認識了解。
參考連結





link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link link