zoukankan      html  css  js  c++  java
  • 处理绿盟科技安全评估的系统漏洞

    如下图一次扫描,中度风险39个,这个是必须要处理的.其中mysql占了36个,一看这个感觉整个人都不好了.但是最后解决的办法也很简单,就是升级.

    系统版本Redhat 7.3

    1.telnet

    因为要升级openssh,openssl,为了避免意外,首先要开启telnet服务,并把所有相关的包上传到服务器.

    1.1确认是否安装了telnet和xinetd(默认是没有安装)

    rpm -qa telnet*
    
    rpm -qa xinetd

    #按情况安装如下依赖包
    yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel nss_ldap openldap openldap-devel openldap-clients openldap-servers libxslt-devel libevent-devel ntp libtool-ltdl bison libtool vim-enhanced patch

    1.2 关闭telnet自启动

    systemctl disable xinetd
    
    systemctl disable telnet.socket

    1.3 启动telnet

    1)启动xinetd就会开启telnet服务

    service xinetd start

     2)检查telnet监听是否正常

    yum -y install net-tools
    
    netstat -tunlp|grep 23

    3)设置服务自启动

    #首先检查是否自启动
    systemctl list-unit-files | grep enable |grep xin
    #没有的话加入自启动 systemctl enable xinetd systemctl enable telnet.socket

    1.4 检查防火墙,是否开始23端口

    1)检查防火墙是否开启

    firewall-cmd --state 

    2)开启23端口

    firewall-cmd --permanent --add-port=23/tcp
    
    firewall-cmd --reload

    1.5 测试telnet

    输入命令:telnet <ip> ,接着输入用户名密码登录

    2. 处理mysql安全漏洞

    解决mysql的CVE-2018-3058之类漏洞的办法就是升级mysql小版本.我这里安装的master-slave模式的mysql.mysql版本由5.7.22升级到5.7.24

    2.1 查看slave状态

    show slave status G;

    2.2 备份数据和配置文件

    mysqldump -uroot -p --all-databases > ./all20181129.sql
    
    cp /etc/my.cnf /etc/my.cnf20181129

    2.3 卸载mysql5.7.22

    rpm -qa | grep -i mysql
    
    service mysqld stop
    
    yum -y remove `rpm -qa | grep -i mysql`

    2.4 安装mysql5.7.24

    1.解压

    tar -xvf mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar

    2.安装client

    rpm -ivh mysql-community-common-5.7.24-1.el7.x86_64.rpm
    
    rpm -ivh mysql-community-libs-5.7.24-1.el7.x86_64.rpm
    
    rpm -ivh mysql-community-devel-5.7.24-1.el7.x86_64.rpm
    
    rpm -ivh mysql-community-client-5.7.24-1.el7.x86_64.rpm

    3.安装server

    rpm -ivh mysql-community-server-5.7.24-1.el7.x86_64.rpm

    4.还原主服务器配置

    cp /etc/my.cnf20181129 /etc/my.cnf 

     

    5.从服务器配置

    cp /etc/my.cnf20181129 /etc/my.cnf

    6.防火墙检查

        selinux检查(主)
    
            firewall-cmd --state 
    
            #防火墙列表
    
            firewall-cmd --list-all
    
     
    
            #防火墙开放3306端口
    
            firewall-cmd --permanent --add-port=3306/tcp
    
     
    
            # 防火墙重新加载配置
    
            firewall-cmd –reload 
    
    

    7.设置SELINUX

    # 输入命令:
    
    getenforce
    
    
    # 如果不是Permissive,做已下修改
    
    setenforce 0
    
    
    vim /etc/selinux/config
    
     
    SELINUX= Permissive

    8.开启数据库

    service mysqld start

    3.openssl

    3.1查看OpenSSL

    rpm -qa openssl

    3.2如需卸载openssl

    rpm -e --nodeps `rpm -qa|grep openssl`

    3.3编译安装

    mv /etc/ssl /etc/ssl.bak
    
    tar -zxvf ./openssl-1.0.2o.tar.gz
    
    cd openssl-1.0.2o
    
     
    
    ./config shared --prefix=/usr/local/ssl --openssldir=/usr/local/ssl
    
    make
    
    make install
    
     
    
    mv /usr/bin/openssl /usr/bin/openssl.lod
    
    mv /usr/include/openssl /usr/include/openssl.old
    ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
    ln -s /usr/local/ssl/include/openssl /usr/include/openssl
    echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
    echo "/usr/local/ssl/lib64" >> /etc/ld.so.conf
    ln -s /usr/local/ssl/lib/libssl.so.1.0.0 /usr/lib64/libssl.so.1.0.0
    ln -s /usr/local/ssl/lib/libcrypto.so.1.0.0 /usr/lib64/libcrypto.so.1.0.0
    ldconfig -v
    openssl version -a #查看OpenSSL版本

    4.openssh

    由openssh7.8 升级到openssh7.9

     

    四、升级openssh7.9(所有服务器)

    4.1 查看版本

    ssh -V

    4.2卸载旧版本openssh

    service sshd stop
    
    rpm -qa|grep openssh
    
    rpm -e --nodeps `rpm -qa|grep openssh`
    
    cp -r /etc/ssh /etc/sshold

    4.3编译安装

    tar -zxvf ./openssh-7.9p1.tar.gz
    
    cd openssh-7.9p1
    
     
    
    ./configure --prefix=/usr/local/openssh --with-ssl-dir=/usr/local/ssl --with-zlib=/usr/local/zlib
    
     
    
    make
    
    make install

    4.4拷贝配置文件

    cp  contrib/redhat/sshd.init /etc/init.d/sshd
    chkconfig --add sshd
    
    cp /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config
    cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd
    cp /usr/local/openssh/bin/ssh /usr/bin/ssh
    cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
    cp /usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub

     

    4.5启动ssh服务

    service sshd restart

    4.7检查版本

    ssh -V

    4.8 已经升级到最新版本7.9,但是漏洞扫描还是老版本ssh7.8

    这可能是ssh的banner信息,使用telnet ip 22测试一下

    上图,还是老版本7.8.修改banner信息后

    此时,版本信息是ssh7.9,顺利通过漏洞扫描

     

     

    5.zlib

    升级到zlib-1.2.11,这个是一个坑,注意顺序,如果提前卸载早了,会造成新zlib编译安装失败.

    5.1 安装依赖(先不用做)

    5.2 解压 zlib1.2.11到/usr/local/src/下

    tar -zxvf zlib-1.2.11.tar.gz  -C /usr/local/src/

    2.3 查看一下zlib安装文件

    rpm -ql zlib

    2.4 configure

    cd /usr/local/src/zlib-1.2.11
    
    ./configure -prefix=/usr/local/zlib/ -libdir=/lib64/

    2.5 用make进行编译

    make

    2.6 卸载zlib,掌握这个顺序很有必要,如果卸载早了的话,上一步就会提示失败。卸载完成之后,发现/lib64/目录下,zlib的库文件,libz.so*没有了

    rpm -e --nodeps zlib-1.2.7-17.el7.x86_64

    2.7用make install安装zlib,安装完成之后,可以看到/usr/local/zlib/目录下有个lib目录,里面存放的就是zlib的库文件

    make install

    2.8这时候用yum等工具,会提示确实libz.so*支持,所以必须把当前共享库文件注册到系统中,打开/etc/ld.so.conf,

     vim /etc/ld.so.conf

    在下面加入一行/usr/local/zlib/lib/,然后保存退出

    2.9用ldconfig重新更新一下cache,这时候再用yum等工具,发现运行正常了,至此,zlib就更新成功。

    ldconfig

    2.10查看版本

    find /usr/ -name zlib.pc
    
    cat /usr/lib64/pkgconfig/zlib.pc
  • 相关阅读:
    教程:如何手动安装Xamarin与Xamarin for VisualStudio
    安装matplotlib
    pycharm中文专业版安装使用
    在win7下安装PowerShell 5.0遇到的坑
    1997-2017
    系统界面截图
    组态与非组态结合的LT
    opencv mat转qimage
    QTableWidget 样式文件
    hiredis window 源码编译
  • 原文地址:https://www.cnblogs.com/xiaolinstudy/p/10069015.html
Copyright © 2011-2022 走看看