centos升級openssh7.4,OpenSSH遠程代碼執行漏洞

漏洞編號安全

CVE-2016-10009bash


漏洞名稱服務器

OpenSSH遠程代碼執行漏洞運維


漏洞描述ssh

sshd服務能夠利用轉發的agent-socket文件,欺騙本機的ssh-agent來加載一個惡意的PKCS#11模塊,從而能夠遠程執行代碼。socket


官方評級ide

中危阿里雲


漏洞危害spa

***利用漏洞實現遠程命令執行,嚴重狀況下可能會致使數據泄露。操作系統


漏洞利用條件

能夠實現遠程利用。


該漏洞利用依賴ssh-agent。該進程默認不啓動,只在多主機間免密碼登陸時纔會用到,漏洞利用條件也比較苛刻。

漏洞影響範圍


OpenSSH 7.3

OpenSSH 7.2p2

OpenSSH 7.2

OpenSSH 7.1p2

OpenSSH 7.1p1

OpenSSH 7.1

OpenSSH 7.0

OpenSSH 6.9p1

OpenSSH 6.9

OpenSSH 6.6

OpenSSH 6.5

OpenSSH 6.4

OpenSSH 6.3

OpenSSH 6.2

OpenSSH 6.1

OpenSSH 6.0

OpenSSH 5.8

OpenSSH 5.7

OpenSSH 5.6

OpenSSH 5.5

OpenSSH 5.4

OpenSSH 5.3

OpenSSH 5.2

OpenSSH 5.1

OpenSSH 5.0

漏洞檢測


使用如下命令查看當前版本。

ssh -V

使用安騎士檢查。


漏洞修復建議(或緩解措施)

阿里雲提供的ECS操做系統中默認的OpenSSH,不受該漏洞影響。若是您變動過OpenSSH版本,並確認當前OpenSSH版本在受影響範圍內,阿里雲建議您將SSH服務端升級到OpenSSH version 7.4及以上。升級方法見下文。


同時,建議您不要直接將SSH服務等高風險端口服務直接開放到互聯網。推薦您使用×××和堡壘機等更安全的方式進行遠程運維,防止發生暴力破解和漏洞利用***事件。


升級OpenSSH

推薦您使用yum update升級,若是更新源無最新安裝包,您能夠按照如下升級方法升級。下文以CentOS 6.8 64bit爲例進行說明。


注意:

在升級前,強烈建議您作好快照和文件備份,防止出現升級失敗沒法遠程管理等意外事件。


在執行如下安裝操做時,請務必再開一個SSH窗口鏈接所須要升級的服務器,避免SSH升級失敗後,沒法鏈接服務器。或者,在升級前最好安裝Telnet服務做爲備用方案,直到升級成功後再中止Telnet。

執行如下代碼升級zlib。


wget wget http://zlib.net/zlib-1.2.11.tar.gz
tar zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure
make
make install

使用如下命令查看升級後的libz版本。

ll /usr/local/lib

結果以下所示。


zlib

升級openssl-flips。在安裝前查看是否爲最新版本。若是是,請直接到第4步;若是不是,執行如下代碼下載最新版本並升級。


wget https://www.openssl.org/source/openssl-fips-2.0.14.tar.gz
tar zxvf openssl-fips-2.0.14.tar.gz
cd openssl-fips-2.0.14
./config
make
make install

執行如下代碼升級openssl。


wget https://www.openssl.org/source/openssl-1.1.0e.tar.gz
tar zxvf openssl-1.1.0e.tar.gz
cd openssl-1.1.0e
./config
make
make install
ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl

查看升級後的OpenSSL版本,結果以下:


openssl

執行如下代碼安裝PAM。

yum install pam*  -y

升級安裝OpenSSH。


wget https://mirrors.evowise.com/pub/OpenBSD/OpenSSH/portable/openssh-7.4p1.tar.gz
tar zxvf openssh-7.4p1.tar.gz
cd openssh-7.4p1
./configure   --prefix=/usr   --sysconfdir=/etc/ssh   --with-md5-passwords   --with-pam    --with-privsep-path=/var/lib/sshd  --with-ssl-dir=/usr/local/lib64   --without-hardening
make
make install

# 備份sshd文件,重命名爲sshd_20170209_old

mv /etc/init.d/sshd  /etc/init.d/sshd_20170209_old

# 複製配置文件、賦權、添加到開機啓動項

cd /root/openssh-7.4p1/contrib/redhat
cp sshd.init  /etc/init.d/sshd
cp ssh_config /etc/ssh/ssh_config

# 根據提示,輸入y進行覆蓋(若對原文件重命名,則無需覆蓋)

cp -p sshd_config /etc/ssh/sshd_config

# 根據提示,輸入y進行覆蓋(若對原文件重命名,則無需覆蓋)

chmod u+x /etc/init.d/sshd
chkconfig --add sshd
chkconfig sshd on

# 重啓sshd服務

service sshd restart

查看升級版本,顯示爲最新版本。

ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2i  22 Sep 2016



OpenSSH_7.4p1升級源碼包: http://down.51cto.com/data/2447161

相關文章
相關標籤/搜索