前幾天突然收到接到網安總隊下發通知說我們在aws里面的服務器存在重大漏洞及安全隱患。必須在規定時間內修改。我們收到郵件打開Excel發現這些問題
是由於OpenSSH版本太低導致的。於是便安排緊急修復。下面記錄下修復流程。
什么是OpenSSH
OpenSSH(OpenBSD Secure Shell)是OpenBSD計划組所維護的一套用於安全訪問遠程計算機的連接工具。該工具是SSH協議的開源實現,支持對所有的傳輸進行加密,可有效阻止竊聽、連接劫持以及其他網絡級的攻擊。sshd是其中的一個獨立守護進程。OpenSSH 7.2p2及之前版本的sshd中的session.c文件中的'do_setup_env'函數存在安全漏洞。當程序啟用UseLogin功能並且PAM被配置成讀取用戶主目錄中的.pam_environment文件時,本地攻擊者可借助/bin/login程序的特制的環境變量利用該漏洞獲取權限;sshd中的session.c文件中存在CRLF注入漏洞。遠程攻擊者可借助特制的X11轉發數據利用該漏洞繞過既定的shell-command限制。
升級OpenSSH
在升級中碰到一個問題就是Ubuntu 16.04中默認OpenSSH版本最高只到7.2。哪怕你update也不行,必須自己編譯才可以。
## 安裝zlib庫
sudo apt install -y build-essential libssl-dev zlib1g-dev
## 下載7.4安裝包
wget "http://mirrors.evowise.com/pub/OpenBSD/OpenSSH/portable/openssh-7.4p1.tar.gz"
## 解壓
tar xfz openssh-7.4p1.tar.gz
cd openssh-7.4p1
## 生成Makefile文件
./configure
## 編譯
make
## 安裝
sudo make install
### 檢查版本
sshd -V
OpenSSH_7.4p1, OpenSSL 1.0.1f 6 Jan 2014
如果是低版本6.X升級到7.4的話需要reboot。7.2升級到7.4是不需要重啟的。
參考:
https://blog.csdn.net/weixin_39845407/article/details/80922488