命令注入 漏洞修復 OpenSSH 命令注入漏洞

2021-10-14 17:33:42 字數 3739 閱讀 8827

cnnvd編號:cnnvd-202007-1519

危害等級: 高危

cve編號: cve-2020-15778

漏洞型別: 作業系統命令注入

威脅型別: 本地

漏洞簡介

openssh(openbsd secure shell)是openbsd計畫組的一套用於安全訪問遠端計算機的連線工具。該工具是ssh協議的開源實現,支援對所有的傳輸進行加密,可有效阻止竊聽、連線劫持以及其他網路級的攻擊。

openssh 8.3p1及之前版本中的scp的scp.c檔案存在作業系統命令注入漏洞。該漏洞源於外部輸入資料構造作業系統可執行命令過程中,網路系統或產品未正確過濾其中的特殊字元、命令等。攻擊者可利用該漏洞執行非法作業系統命令。

由於官方也未給出有效的解決方案,根據之前此類漏洞資訊整改方案可採用公升級openssh來解決。有兩種方法可適用於離線版伺服器和聯網版伺服器。由於不同版本和不同業務的部署可能對伺服器造成配置項的更改,請仔細檢視報錯資訊,openssh是主機連線、業務連線的主要工具,更改時有一定風險,謹慎操作。

一 、yum安裝       

ifconfigpwd# 檢視當前版本ssh -vsudo -s (或者su root)# 備份主要配置檔案cp -r /etc/ssh/ /etc/ssh.bak/cp -r /etc/pam.d/ /etc/pam.d.bak/ls  /etc/ | grep sshls  /etc/ | grep pam.d# 安裝telnet 公升級過程在telnet遠端登入執行 避免公升級失敗連線不上的問題!!!yum -y install telnet-server xinetd# 檢視埠是否開啟firewall-cmd --query-port=23/tcp# 這裡顯示no就是沒有開啟 執行下面的命令 顯示yes就是已經開啟 排查其他原因firewall-cmd --add-port=23/tcp# 開啟23埠firewall-cmd --query-port=23/tcptelnet ip# 安裝相關依賴yum -y install gcc pam pam-devel zlib zlib-devel openssl-devel# 上傳openssh8.4p1tar包tar zxf openssh-8.4p1.tar.gzcd openssh-8.4p1./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-openssl-include=/usr/local/ssl/include --with-ssl-dir=/usr/local/ssl --with-zlib --with-md5-passwords --with-pammakemake installinstall -v -m755 contrib/ssh-copy-id /usr/bin install -v -m644 contrib/ssh-copy-id.1 /usr/share/man/man1 install -v -m755 -d /usr/share/doc/openssh-8.4p1 install -v -m644 install licence overview readme* /usr/share/doc/openssh-8.4p1 echo 'usepam yes' >> /etc/ssh/sshd_configcp -p contrib/redhat/sshd.init /etc/init.d/sshdchmod +x /etc/init.d/sshdchkconfig --add sshdchkconfig sshd onchmod -r 600 /etc/ssh/*service sshd restartssh -v
二、離線安裝

ifconfigpwd# 檢視當前版本ssh -vsudo -s (或者su root)# 備份主要配置檔案cp -r /etc/ssh/ /etc/ssh.bak/cp -r /etc/pam.d/ /etc/pam.d.bak/ls  /etc/ | grep sshls  /etc/ | grep pam.d# 上傳telnet安裝包rpm -ivh xinetd-2.3.14-38.el6.x86_64.rpmrpm -ivh telnet-0.17-47.el6.x86_64.rpmrpm -ivh telnet-server-0.17-64.el7.x86_64.rpmsystemctl restart xinetd.servicesystemctl restart telnet.socketnetstat -tnl | grep 23# 檢視埠是否開啟firewall-cmd --query-port=23/tcp# 這裡顯示no就是沒有開啟 執行下面的命令 顯示yes就是已經開啟 排查其他原因firewall-cmd --add-port=23/tcp# 開啟23埠firewall-cmd --query-port=23/tcptelnet ip# 開始安裝gcc (自行上傳gcc安裝包)tar zxf gcc_rpm.tar.gzcd gcc/rpm -ivh *.rpm --nodeps --forcecd# 開始安裝zlib (自行上傳zlib安裝包) 版本不限於此tar zxf zlib-1.2.11.tar.gzcd zlib-1.2.11/./configuremake testmake installmake clean./configure --sharedmake testmake installcp zutil.h /usr/local/include/cp zutil.c /usr/local/include/# 開始安裝openssl (自行上傳openssl安裝包) 版本不限於此tar zxf openssl-1.1.1g.tar.gz cd openssl-1.1.1g./config --prefix=/usr/local --sharedmakemake testmake installln -sf /usr/local/openssl/bin/openssl /usr/bin/opensslecho '/usr/local/ssl/lib' >> /etc/ld.so.conf   ldconfig -vopenssl version# 安裝pam (自行上傳pam安裝包) 版本不限於此rpm -uvh pam-1.1.8-23.el7.x86_64.rpm rpm -ivh pam-devel-1.1.8-23.el7.x86_64.rpm# 安裝openssh (自行上傳openssh-8.4p1.tar.gz安裝包)tar zxf openssh-8.4p1.tar.gzcd openssh-8.4p1./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-openssl-include=/usr/local/ssl/include --with-ssl-dir=/usr/local/ssl --with-zlib --with-md5-passwords --with-pammakemake installinstall -v -m755 contrib/ssh-copy-id /usr/bin install -v -m644 contrib/ssh-copy-id.1 /usr/share/man/man1 install -v -m755 -d /usr/share/doc/openssh-8.4p1 install -v -m644 install licence overview readme* /usr/share/doc/openssh-8.4p1 echo 'usepam yes' >> /etc/ssh/sshd_configcp -p contrib/redhat/sshd.init /etc/init.d/sshdchmod +x /etc/init.d/sshdchkconfig --add sshdchkconfig sshd onchmod -r 600 /etc/ssh/*service sshd restartssh -v
沒有報錯之後就可以測試連線,以及檔案傳輸問題。原始碼安裝由於是自行安裝依賴,有很多不確定性,最好使用yum安裝。

OpenSSH漏洞修復 Ubuntu系統

漏洞名稱 openssh漏洞 風險描述 openssh 是一組用於安全地訪問遠端計算機的連線工具,低版本爆出的高危漏洞太多 修復建議 公升級到最新版本 一 公升級條件準備 關閉防火牆 ufw disable 安裝與啟用telnet 開啟telnet server,以防止公升級openssh時導致遠端...

安全等保漏洞修復之OpenSSH漏洞修復

先看下ssh的版本,ssh v 我們公司用的模版是centos6.6的,版本是openssh 5.3p1 openssh 5.3p1,openssl 1.0.1e fips 11 feb 2013 測評的公司給我們掃出5個高危,9個中危 公升級到 openssh 7.7p1後,只有1個中危了 rpm...

漏洞修復 centOS公升級openssh到8 0

近期在伺服器安全掃瞄發現一大堆漏洞,上百臺伺服器的漏洞都差不多,主要是關於openssh的。漏洞有很多,掃瞄系統給出的解決辦法是打各種補丁,但通過了解到,將openssh直接公升級基本可以解決所有漏洞問題,一勞永逸。現將7.4版本的openssh公升級到8.0版本。安裝telnet 得先安裝teln...