一、前言
客户环境存在属于openssh的漏洞需要修复
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/fa9cfe11b03e4e2ad1df8795c3113ddf.png)
- 一般修复这种类型的漏洞就是简单暴力直接升级一版本就可以
- 但是实际上他还有第二种方式,不算是修复但是可以让他扫描不到,就是通过iptables 限制端口
iptables -I INPUT -p tcp --dport 22 -j DROP
iptables -I INPUT -s 10.249.100.107 -p tcp --dport 22 -j ACCEPT
这里重点说第二种修复方式:
这是一个正确的升级案例,因为我之前升级过一次遇到过一次伪升级的状态,第一次修复完之后以为ssh -V查出来就是修复成功了,然后又扫描了一遍发现还有漏洞并且扫描出来的openssh版本还是老版本所以说我就推测应该是这个问题
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/a17ac199cbe62dbde7fd53ea1fe80b53.png)
mkdir /apps
cd /apps
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.3p1.tar.gz
tar xf openssh-9.3p1.tar.gz
cd /apps/openssh-9.3p1
./configure &&make -j 2 &&make install
cp -r /etc/ssh/sshd_config /etc/ssh/sshd_config_bak
\cp sshd_config /etc/ssh/sshd_config
sed -ri 's/^#(PermitRootLogin).*/\1 yes/g' /etc/ssh/sshd_config
sed -ri 's/^(Subsystem).*/\1 sftp \/usr\/libexec\/openssh\/sftp-server/g' /etc/ssh/sshd_config
echo "Ciphers aes128-ctr,aes192-ctr,aes256-ctr" >> /etc/ssh/sshd_config
echo 'OPTIONS="-f /etc/ssh/sshd_config"' >> /etc/sysconfig/sshd
sed -ri 's/^(ExecStart=).*/\1\/usr\/local\/sbin\/sshd -D $OPTIONS/g' /usr/lib/systemd/system/sshd.service
sed -ri 's/^(Type=).*/\1simple/g' /usr/lib/systemd/system/sshd.service
systemctl daemon-reload
systemctl restart sshd
\cp /usr/bin/ssh{,.bak}
\cp /usr/local/bin/ssh /usr/bin/ssh
tar zxf openssh-9.2p1.tar.gz
yum install -y pam* zlib* openssl-devel gcc make
cd openssh-9.2p1/
./configure && make -j 2 && make install
mv /usr/bin/ssh /usr/bin/ssh.bak
ln -sf /usr/local/bin/ssh /usr/bin/ssh
ssh -V
systemctl restart sshd
systemctl status sshd