suse linux 3.0 漏洞,SUSE Linux openssh漏洞修復筆記

本文详细介绍了OpenSSH的多个安全漏洞,包括Roaming_common.c堆缓冲区溢出、MaxAuthTries限制绕过和x11_open_helper()函数安全限制绕过等,并提供了针对SUSE Linux系统的OpenSSH服务升级步骤。升级过程中需要注意配置文件的备份和修改,如PermitRootLogin参数的设置。同时,文章提到了SELINUX防火墙配置问题,解决方法是通过setenforce命令调整其状态。在升级过程中,还可能出现OpenSSL版本不匹配的问题,需要重新编译SSH来解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

OpenSSH roaming_common.c 堆緩沖區溢出漏洞

緩沖區溢出攻擊是利用緩沖區溢出漏洞所進行的攻擊行動。緩沖區溢出是一種非常普遍、非常危險的漏洞,在各種操作系統、應用軟件中廣泛存在。利用緩沖區溢出攻擊,可以導致程序運行失敗、系統關機、重新啟動等后果。

Openssh MaxAuthTries 限制繞過漏洞(CVE-2015-5600)

OpenSSH sshd mm_answer_pam_free_ctx 釋放后重利 用漏洞(CVE-2015-6564)

OpenSSH ‘x11_open_helper()’函數安全限制繞過漏洞 (CVE-2015-5352)

以上漏洞均來自 openssh 升級openssh服務

注意事項,openssh為遠程連接服務,若處理不好可能導致連接不上主機,所以先搭建Telnet連接。

操作系統信息

SUSE Linux

現有ssh版本

tfw:/tmp/dropbear # ssh -V

OpenSSH_6.6p1, OpenSSL 0.9.8j-fips 07 Jan 2009

tfw:/tmp/dropbear # rpm -qa |grep openssl

openssl-certs-0.9.8h-27.3.1

openssl-0.9.8j-0.26.1

libopenssl0_9_8-0.9.8j-0.26.1

libopenssl0_9_8-32bit-0.9.8j-0.26.1

libopenssl1_0_0-32bit-1.0.0c-17.1

libopenssl1_0_0-1.0.0c-17.1

搭建Telnet放行23端口 參考這篇blog

升級過程詳見OpenSuse Linux11升級Openssh6.7筆記

百度文庫

注意事項

升級后默認root不允許登錄。需要修改配置文件允許root登錄

允許root登錄

vi /etc/ssh/sshd_config

將PermitRootLogin值改yes

centos下升級

參考此篇

有網絡情況下

1、tar zxvf openssh-7.1p1.tar.gz

cd openssh-7.1

./configure –prefix=/usr/local/openssh –sysconfdir=/etc/ssh

知識點:

./configure –prefix=/usr/local/openssh –sysconfdir=/etc/ssh

–sysconfdir=DIR read-only single-machine data [PREFIX/etc] /etc配置文件目錄

prefix 安裝目錄

make

make install

2、如果配置時出現如下環境問題:

configure: error: * zlib.h missing - please install first or check config.log *

使用 yum install openssl openssl-devel -y 安裝相關依賴包

3、配置成功,可以編譯了,如果沒有make環境,用如下命令安裝一下即可

yum install make automake gcc gcc-c++ gcc-g77 -y

4、上面的方法會覆蓋原版本的文件,make install覆蓋/etc/ssh下配置文件時可能會報錯。這時刪掉/etc/ssh下的原配置文件,再make install一次就可以了。

如果使用root遠程無法登錄,修改/etc/ssh/sshd_config

將 PermitRootLogin 參數改為yes。

完成后檢查版本

[root@weixinht openssh-7.3p1]# ssh -V

OpenSSH_7.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013

遇到一個問題,剛升級后忘記重啟SSHD服務了,修改了配置文件設置PermitRootLogin值改yes。在機房搗鼓了半天!改配置文件嘗試了各種辦法!

不能偷懶啊!之前應該做備份連接方案的!

很奇怪的是聯通雲主機上#PermitRootLogin yes 是注釋掉的但是也能ROOT登陸!

解決方案:

ssh -V

getenforce

setenforce 0

getenforce

vi /etc/sysconfig/selinux

service sshd restart

setenforce是Linux的selinux防火牆配置命令 執行setenforce 0 表示關閉selinux防火牆。

setenforce命令是單詞set(設置)和enforce(執行)連寫,另一個命令getenforce可查看selinux的狀態。

setenforce 0 #設置SELinux 成為permissive模式

setenforce 1 設置SELinux 成為enforcing模式

——2016年11月1日19:36:18 add————

今天修復一台比較久的機器時候出現找不到SSH的問題。

ssh -V 提示如下

OpenSSL version mismatch. Built against 1000103f, you have 90802f

強行重新編譯后成功。具體參考此篇

升級了zlib后查看版本還是之前的,不知為何

所以編譯的時候指定了 忽略zlib版本號。

沒有處理pam一塊,因為安裝的時候實在麻煩,少各種依賴!

升級完后 /etc/ssh/sshd_config 配置文件中全部被注釋

手動改為

Port 22

PermitRootLogin yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

PermitEmptyPasswords no

PasswordAuthentication yes

UsePrivilegeSeparation sandbox

Subsystem sftp /usr/libexec/openssh/sftp-server

重啟命令

/etc/rc.d/init.d/ssh restart

摘要:

補充說明:

如果不想升級ssh,那么只要使用

#./config --prefix=/usr

但是升級完后版全是升上去了,但是sshd -v時,發現sshd顯示的還是原來的openssl版本。

#make

#make test

#make install

#openssh version -a

OpenSSL 1.0.1g 7 Apr 2014

built on: Fri May 23 16:56:53CST2014

platform: linux-x86_64

options: bn(64,64) rc4(16x,int) des(idx,cisc,16,int) idea(int) blowfish(idx)

compiler: gcc -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -DTERMIO -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM

OPENSSLDIR: "/usr/ssl"

此時去運行sshd -v 或是重啟sshd服務時會提示:

OpenSSL version mismatch. Built against 1000103f, you have 90802f

當現面以上進示時,只能強行重新編譯SSH。

升級SSH

備份原來的ssh版本

#mv /etc/ssh /etc/ssh_old

編譯

#cd openssh-6.6p1

#./configure --prefix=/usr --sysconfdir=/etc/ssh --without-zlib-version-check --with-openssl-includes=/usr/ --with-md5-passwords --mandir=/usr/share/man

#make

#make isntall

#service sshd restart

#sshd -v

OpenSSH_6.6p1, OpenSSL 1.0.1g 7 Apr 2014

usage: sshd [-46DdeiqTt] [-b bits] [-C connection_spec] [-c host_cert_file]

[-E log_file] [-f config_file] [-g login_grace_time]

[-h host_key_file] [-k key_gen_time] [-o option] [-p port]

[-u len]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值