漏洞升级报告

漏洞升级报告

1.openssh升级(生产测试过)

  • 安装telnet(以防升级失败,连不上服务器,建议弄)
#验证sshd版本 在openssh7.4p1基础上升级
cat /etc/redhat-release
sshd -v

# 查看是否安装telnet服务
rpm -qa | grep telnet
rpm -qa | grep xinetd

# 若无安装,yum安装
yum -y install telnet* 
yum -y install xinetd

#将服务开机自启
systemctl enable xinetd.service
systemctl enable telnet.socket

#开启服务
systemctl start telnet.socket  
systemctl start xinetd

#查看状态
systemctl status telnet.socket  
systemctl status xinetd

#在最后添加两行
echo 'pts/0' >> /etc/securetty
echo 'pts/1' >> /etc/securetty

systemctl restart xinetd
# 确认下是否启动成功
ss -plnt |grep 23  

#如果下面文件存在,请更改配置telnet可以root登录,把disable = no改成disable = yes 不存在就忽略
ll /etc/xinetd.d/telnet

用telnet连接是否可以登录是需要输入账号密码的
[C:\~]$ telnet 192.168.20.66:23

#如果不能直接登录注释掉第一行
vim /etc/pam.d/remote 
#%PAM-1.0
#auth       required     pam_securetty.so
auth       substack     password-auth
auth       include      postlogin
account    required     pam_nologin.so
account    include      password-auth
password   include      password-auth
# pam_selinux.so close should be the first session rule
session    required     pam_selinux.so close
session    required     pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session    required     pam_selinux.so open
session    required     pam_namespace.so
session    optional     pam_keyinit.so force revoke
session    include      password-auth
session    include      postlogin

#关闭防火墙 selinux
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
  • 升级openssh 窗口别关 先上传安装包 ftp上传安装包
#先安装依赖
yum -y install gcc pam-devel zlib-devel openssl-devel
#使用rpm安装强制安装
tar xf packages.tar.gz
rpm -ivh *.rpm --replacefiles
rpm -ivh *.rpm --nodeps --force
  • 先停止服务 否则升级后ssh连不上,重启sshd服务都没用,只能退回旧版重来!!!
systemctl stop sshd
  • 移除旧版本
mv /etc/ssh /etc/ssh.old
### 需要注意,移除之后,不能退出当前终端,若退出,只能通过telnet连了 但是后续操作可以telnet连接
  • 依赖补充
#忘记哪里缺少依赖了就记录一下
ln -s /usr/libexec/gcc/x86_64-redhat-linux/4.8.5/cc1 /usr/local/bin/ccl

#vi /etc/profile
export LD_LIBRARY_PATH="/usr/lib64/"
  • 下载openssh
#可以下载到本地这样会快一点
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.8p1.tar.gz
tar xf openssh-8.8p1.tar.gz
#默认解压开不是root 改一下
chown -R root.root ./openssh-8.8p1
cd openssh-8.8p1/
#编译安装
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-zlib --with-md5-passwords --with-pam
#查看编译是否成功
echo $?
  • 成功截图
#安装
make && make install
#查看是否成功
echo $?
#复制启动脚本
cp -a contrib/redhat/sshd.init /etc/init.d/sshd
#加执行权限
chmod +x /etc/init.d/sshd
#允许root远程登录
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
echo "UseDNS no" >> /etc/ssh/sshd_config
echo "UsePAM yes" >> /etc/ssh/sshd_config
echo "PasswordAuthentication yes" >> /etc/ssh/sshd_config
#将原本的sshd启动服务给挪走 否则服务是运行不起来的
mv  /usr/lib/systemd/system/sshd.service  /root/
#将sshd添加到服务列表里边
chkconfig --add sshd
#sshd开机自启动
chkconfig sshd on
systemctl enable sshd
#启动
/etc/init.d/sshd restart
两种方式都可以
service sshd restart

#验证
sshd -v
ss -lntup | grep 22

  • 最后关闭telnet
 systemctl disable xinetd.service
 systemctl stop xinetd.service
 systemctl disable telnet.socket
 systemctl stop telnet.socket
 ss -lntp | grep 23
  • 如何你升级是内网环境的openssh请用下面命令把上面所需要的依赖全部下载下来
yum -y install yum-util

yumdownloader --resolve --destdir=/root/gcc gcc

tar xf telnet.tar.gz 
tar xf xinetd.tar.gz 
tar xf gcc.tar.gz 
tar xf pam-devel.tar.gz 
tar xf zlib-devel.tar.gz 
tar xf openssl-devel.tar.gz 
tar xf gcc-c++.tar.gz
tar xf ccl.tar.gz

2.20007 - SSL Version 2 and 3 Protocol Detection

  • 概要

远程服务使用具有已知弱点的协议加密流量

  • 解决

禁用 SSL 2.0 和 3.0请改用 TLS 1.2(带有批准的密码套件)或更高版本

  • 本次整改Apache
#默认是没有ssl模块的需要自己安装一下
yum install -y mod_ssl
#修改  /etc/httpd/conf/httpd.conf

SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:+HIGH:+MEDIUM:-LOW:!RC4:!NULL

#这个就是把模块引入进来
LoadModule ssl_module modules/mod_ssl.so

按照这个图配置

3.170113 - Apache 2.4.x < 2.4.55 多个漏洞

  • 漏洞描述
远程主机上安装的 Apache httpd 版本低于 2.4.55。因此,它受到 2.4.55 公告中提及的多个漏洞的影响。
  • 解决
升级到 Apache 版本 2.4.55 或更高版本
  • 命令过程
#对httpd服务配置文件进行备份,在对站点目录备份一下
cp -rf /etc/httpd/ /home/centos/httpd-20230131

cp -rf /var/www/html/ /home/centos/html-20230131

#查看现在httpd版本
httpd -v

#查看centos软件库里的apache版本,如果是默认的话版本应该是2.4.6
[root@apache /etc/yum.repos.d]# yum info httpd
#........省略........
Installed Packages
Name        : httpd
Arch        : x86_64
Version     : 2.4.6
Release     : 98.el7.centos.6
Size        : 9.4 M
Repo        : installed
From repo   : updates
Summary     : Apache HTTP Server
URL         : http://httpd.apache.org/
License     : ASL 2.0
Description : The Apache HTTP Server is a powerful, efficient, and extensible
            : web server.

#按照changelog来查看版本更新
yum install yum-changelog  
yum changelog httpd

#安装CodeIT库之前
#CodeIT的人提供了一个很好的自定义库。这个库提供了最新版本服务器软件,例如:Apache、Nginx
#在安装CodeIT库之前,你需要开启EPEL。EPEL提供了CodeIT库需要的依赖
yum install -y epel-release

#安装CodeIT库 
cd /etc/yum.repos.d && wget https://repo.codeit.guru/codeit.el`rpm -q --qf "%{VERSION}" $(rpm -q --whatprovides redhat-release)`.repo

#再次查看apache版本
[root@apache /etc/yum.repos.d]# yum info httpd
#........省略........
#这个版本是你默认安装的
Installed Packages
Name        : httpd
Arch        : x86_64
Version     : 2.4.6
Release     : 98.el7.centos.6
Size        : 9.4 M
Repo        : installed
From repo   : updates
Summary     : Apache HTTP Server
URL         : http://httpd.apache.org/
License     : ASL 2.0
Description : The Apache HTTP Server is a powerful, efficient, and extensible
            : web server.

#这个版本是最新安装的
Available Packages
Name        : httpd
Arch        : x86_64
Version     : 2.4.55
Release     : 1.codeit.el7
Size        : 1.4 M
Repo        : CodeIT/x86_64
Summary     : Apache HTTP Server
URL         : https://httpd.apache.org/
License     : ASL 2.0
Description : The Apache HTTP Server is a powerful, efficient, and extensible
            : web server.

#安装
yum install httpd -y

#启动服务
systemctl restart httpd

#查看版本
httpd -v

#查看进程
ps -ef | grep httpd

#官方域名
ping www.sinnet-cloud.cn

4.166901 - PHP 7.4.x < 7.4.33 多个漏洞

  • 漏洞描述
远程主机上安装的 PHP 版本低于 7.4.33。因此,它受到 V7.4.33 公告中提及的多个漏洞的影响。
  • 解决
升级到 PHP 版本 7.4.33 或更高版本
  • 命令过程
yum -y install epel-release
#安装这个包可以指定多个PHP库
yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm

yum -y install yum-utils

#用yum-config-manager指定remi的php7.4仓库
yum-config-manager --enable remi-php74

#安装php-fpm
yum install -y php  php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json php-redis

systemctl start php-fpm

#如果删除使用这个
yum remove  php  php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json php-redis

yum remove php-common
posted @ 2023-02-06 18:06  YIDADA-SRE  阅读(197)  评论(0编辑  收藏  举报