##@TOC
近期甲方系统漏洞扫描,发现服务器存在一些漏洞如下:OpenSSH安全漏洞(CVE-2021-41617),OpenSSH命令注入漏洞(CVE-2020-15778),OpenSSH安全漏洞(CVE-2017-15906),OpenSSH安全漏洞(CVE-2019-6111),OpenSSH欺骗安全漏洞(CVE-2019-6110),OpenSSH欺骗安全漏洞(CVE-2019-6109),OpenSSH访问限制绕过漏洞(CVE-2018-20685),OpenSSH用户枚举漏洞(CVE-2018-15919),OpenSSH信息泄露漏洞(CVE-2020-14145),OpenSSH安全漏洞(CVE-2016-20012)。
相关漏洞还提供了参考解决方案:
漏洞 | 参考措施 |
---|---|
OpenSSH安全漏洞(CVE-2021-41617) | 厂商补丁:建议使用此软件的用户随时关注厂商主页或参考网址以获取解决办法; http://www.openssh.com/security.html |
OpenSSH命令注入漏洞(CVE-2020-15778) | 厂商补丁:目前暂未发布修复措施解决此安全问题,建议使用此软件的用户随时关注厂商主页或参考网址以获取解决办法;http://www.openssh.com/ 临时缓解措施:可以禁用scp,改用rsync等缓解风险(可能会导致小文件机器内拷贝变慢) |
OpenSSH安全漏洞(CVE-2017-15906) | 厂商补丁:目前厂商已发布升级补丁以修复漏洞,补丁获取链接:https://www.openssh.com/txt/release-7.6 |
OpenSSH安全漏洞(CVE-2019-6111) | 厂商补丁:目前厂商已发布升级补丁以修复漏洞,详情请关注厂商主页:https://www.openssh.com/ |
OpenSSH欺骗安全漏洞(CVE-2019-6110) | 厂商补丁:OpenSSH 目前厂商已发布了升级补丁以修复这个安全问题,请到厂商的主页下载:https://www.openssh.com/ 参考:https://vigilance.fr/vulnerability/OpenSSH-scp-PuTTY-PSCP-spoofing-via-Scp-Client-ANSI-Codes-stderr-File-Hidding-28262 |
OpenSSH欺骗安全漏洞(CVE-2019-6109) | 厂商补丁:OpenSSH 目前厂商已发布了升级补丁以修复这个安全问题,请到厂商的主页下载:https://www.openssh.com/ 参考:https://vigilance.fr/vulnerability/OpenSSH-scp-PuTTY-PSCP-spoofing-via-Scp-Client-ANSI-Codes-stderr-File-Hidding-28261 |
OpenSSH访问限制绕过漏洞(CVE-2018-20685) | 厂商补丁:OpenSSH 目前厂商已发布了升级补丁以修复这个安全问题,请到厂商的主页下载: https://www.openssh.com/ https://github.com/openssh/openssh-portable/commit/6010c0303a422a9c5fa8860c061bf7105eb7f8b2 https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/scp.c.diff?r1=1.197&r2=1.198&f=h |
OpenSSH用户枚举漏洞(CVE-2018-15919) | 修复版本:openssh > 7.8版本 厂商升级:OpenSSH 请用户关注OpenBSD官方发布的补丁修复漏洞: https://www.openssh.com/ https://www.openssh.com/portable.html |
OpenSSH信息泄露漏洞(CVE-2020-14145) | 厂商补丁:OpenBSD 目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本。 http://www.openbsd.org/security.html |
OpenSSH安全漏洞(CVE-2016-20012) | 厂商补丁:目前厂商暂未发布修复补丁,请及时关注厂商最新公告。 |
$ cat /proc/version
>> Linux version 4.4.0-19041-Microsoft ([email protected]) (gcc version 5.4.0 (GCC) ) #488-Microsoft Mon Sep 01 13:43:00 PST 2020
备注:本机测试采用的是Win10商店的Ubuntu
。甲方服务器系统版本是 Linux 3.10.0 RedHat 4.8.5
。亲测,两种系统均可以按照如下流程,成功升级OpenSSH_8.8p1
$ ssh -V
>> OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 21 Jun 2017
在这个链接
结尾加上漏洞编号,可以查看官方漏洞说明和解决方案。https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE--*
查了不少链接和博客,发现好多漏洞只影响低版本的OpenSSH,在高版本的OpenSSH上已经修复了,所以后续内容暂且关注如何离线升级 OpenSSH 至 OpenSSH 8.8p1
。
---- CVE-2021-41617
安全版本:OpenSSH >= 8.8
修复建议:升级到OpenSSH最新安全版本
---- CVE-2020-15778
影响:无 - 不再被视为漏洞。 解决方法:目前没有。
禁用scp,使用 rsync 缓解风险
或者 升级到OpenSSH 8.3p1之后的版本
---- CVE-2019-6111
对于稳定发行版(stretch),这些问题已在版本 1: 7.4p1-10+deb9u5 中修复。
我们建议您升级您的 openssh 软件包。
---- CVE-2019-6110
---- CVE-2019-6109
对于稳定发行版(stretch),这些问题已在版本 1: 7.4p1-10+deb9u5 中修复。
我们建议您升级您的 openssh 软件包。
…………
升级OpenSSH的过程需要依赖ZLIB
、Perl
、OpenSSL
,升级OpenSSL可能会报错,可能还需要依赖PAM
。所以先要离线下载这些依赖对应的包:zlib-1.2.12.tar.gz
,perl-5.16.1.tar.gz
,Linux-PAM-1.3.1.tar.xz
,openssl-1.1.1p.tar.gz
,openssh-8.8p1.tar.gz
。(安装顺序)
源码包下载地址:
zlib:http://www.zlib.net/
perl: http://www.cpan.org/src/5.0/
PAM: https://www.linuxfromscratch.org/blfs/view/9.0/postlfs/linux-pam.html
OpenSSL: https://www.openssl.org/source/
OpenSSH: http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/
**注意:**
建议按照如下
顺序安装
,否则 可能因缺少依赖报错
建议将上述安装包放到/home/apps
路径下,并且以root
用户进行升级操作。
$ tar -xzvf zlib-1.2.12.tar.gz
$ cd zlib-1.2.12
$ ./configure --prefix=/usr/local/zlib
$ make && make install
$ tar -xzf perl-5.16.1.tar.gz
$ cd perl-5.16.1
$ ./Configure -de
$ make && make install
# 如下命令查看是否安装成功,查看perl版本
$ perl -v
$ sudo tar -xf Linux-PAM-1.3.1.tar.xz
$ cd Linux-PAM-1.3.1
$ ./configure
$ make && make install
$ openssl version -a
$ tar -zxvf openssl-1.1.1p.tar.gz
$ cd openssl-1.1.1p
$ ./config --prefix=/usr/local/ssl -d shared
## make
## make test
## make install
$ make && make install
$ echo '/usr/local/ssl/lib' >> /etc/ld.so.conf
$ ldconfig -v
$ tar -zxvf openssh-8.8p1.tar.gz
$ cd openssh-8.8p1
$ sudo ./configure --prefix=/usr/local/openssh --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/ssl
## ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-openssl-includes=/usr --with-privsep-path=/var/lib/sshd
$ sudo make clean && sudo make && sudo make install
# sshd_config 文件 修改
$ echo 'PermitRootLogin yes' >>/usr/local/openssh/etc/sshd_config
$ echo 'PubkeyAuthentication yes' >>/usr/local/openssh/etc/sshd_config
$ echo 'PasswordAuthentication yes' >>/usr/local/openssh/etc/sshd_config
# 备份原有文件,并将新的配置复制到指定目录
$ mv /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
$ cp /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config
$ mv /usr/sbin/sshd /usr/sbin/sshd.bak
$ cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd
$ mv /usr/bin/ssh /usr/bin/ssh.bak
$ cp /usr/local/openssh/bin/ssh /usr/bin/ssh
$ mv /usr/bin/ssh-keygen /usr/bin/ssh-keygen.bak
$ cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
$ mv /etc/ssh/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub.bak
$ cp /usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub
# 【这几句我在自己测试的时候并不需要执行】
# OpenSSH安装后环境配置:在openssh编译目录, 执行如下命令:
# install -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-****
# install -v -m644 INSTALL LICENCE OVERVIEW README* /usr/share/doc/openssh-****
# 验证是否升级成功
$ ssh -V
>> OpenSSH_8.8p1, OpenSSL 1.1.1p 21 Jun 2022
# 重启sshd服务
$ systemctl restart sshd.service
# 或者
$ systemctl restart sshd
验证是否升级成功
:
注意
:重启
sshd服务的命令运行之后
,需要重新远程
连接服务器。
原因是缺少 zlib ,或者 zlib安装未成功
解决方案: 重新按照步骤 4. 安装/升级 zlib
$ tar zxf zlib***.tar.gz
$ cd zlib-***/
$ ./configure
$ make test
$ make install
$ make clean
$ ./configure --shared
$ make test
$ make install
$ cp zutil.h /usr/local/include/
$ cp zutil.c /usr/local/include/
解决方案:
- 在/etc/ld.so.conf.d/libc.conf 文件中添加一行 /usr/lib
- 运行 ldconfig 命令
$ echo '/usr/lib ' >> /etc/ld.so.conf.d/libc.conf
$ ldconfig
原因是缺少PAM,或者 pam安装失败
解决方案:
- 联网安装 yum -y install pam-devel
- 离线安装 pam-devel , 参考
步骤6. 安装pam-devel
$ echo '/usr/lib ' >> /etc/ld.so.conf.d/libc.conf
$ ldconfig
原因:权限不足
解决方法:
- cd … 到上层目录,或更上层,例如/usr/目录
- 给存放代码/包的目录加权限,以/usr/apps/目录为例:
$ cd /usr/
$ sudo chmod -R 777 /usr/apps/
原因:./configure之后,由于运行make时候的权限或者其他原因,导致了make或make install 失败,需要重新操作。
解决方案:
- 执行
make clean
清除上一次生成的可执行文件,再次执行 make 等命令,大概率可以解决
$ make clean
$ sudo make && sudo make install
文章浏览阅读9.2k次,点赞19次,收藏51次。图形学基础|景深效果(Depth of Field/DOF)文章目录图形学基础|景深效果(Depth of Field/DOF)一、前言二、景深效果2.1 物理原理2.2 弥散圆量化三、景深实现3.1 非物理的简单实现3.2 基于物理的景深效果参考博文一、前言**景深(DOF)**是模拟摄像机镜头对焦特性的一种常见的后处理效果。在现实生活中,相机只能对特定距离内的物体进行锐利的聚焦,离相机较近或较远的物体会有些失焦。模糊不仅提供了一个关于物体距离的视觉提示,还引入了焦外成像(Bokeh,散景)。_dof 景深
文章浏览阅读235次。桌面系统:Ubuntu 10.10内核版本:Linux 2.6.28.6交叉工具链:arm-linux-gcc4.4.1gcc版本: 4.4.51.解压内核tar xzvf linux2.6.28.6.tar.gz2.进入内核cd linux2.6.28.63.选择编译内核的配置文件cp config_mini6410_n43 .configmake menuconfig选择 Networking..._linux rt2571
文章浏览阅读935次。文章目录金属工作流高光反射工作流光照面板反射探针探针类型互相反射要先在Edit–Project Settings–Player–Other Settings–Color Space中选择Linear,因为基于物理的渲染需要使用线性空间;金属高光反射强,非金属漫反射强金属工作流Albedo对应物体的整体颜色高光反射工作流Albedo定义了表面的漫反射强度;光照面板mode中实时光照比较耗费性能,改为baked会将光照效果烘焙到光照纹理(lightmap)中,但动态的物体的阴影无法改变,最_unity shader 光照探针采样
文章浏览阅读2.3w次。Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.dakun.jianzhong.client.AppPictureService]: Constructor threw exception; nested exception is java.lang.NullPo..._caused by: org.springframework.beans.beaninstantiationexception: failed to i
文章浏览阅读1k次。windows10环境下安装caffe-cpu安装前提cmake编译器(下载最新版,因为安装caffe有版本限制,所以这里直接下载最新版就行了),可以在官网下载:链接: cmake.python3.5或python2.7,因为caffe现在只支持这两个版本,网上有很多使用python3.7的,但是试了很久没成功。python的安装建议使用anaconda,但是现在anaconda默认安装最..._caffe_cpu
文章浏览阅读4.7k次。【写在前面的话】:鉴于最近公司算法推荐相关的项目都是go语言写的,所以需要在mac本的pycharm上安装golang插件,方便查看、开发、测试代码。但是可惜的是:IDEA发布了GoLand这个新的IDE for GoLang,所以原来可以用的Go插件在现在的PyCharm 2018.2上都不能用了。详细可以参考这篇文章废话不多说:下面是参考上面文章自己的安装过程。1、下载一个Go..._pycharm go插件
文章浏览阅读754次。刚才遇到了一个问题,选择文件播放的时候,namewindow的大小和picture控件大小不一样的问题,原来的代码如下://CWnd *pWnd1 = GetDlgItem(IDC_STATIC_PIC);//CWnd是MFC窗口类的基类,提供了微软基础类库中所有窗口类的基本功能。//pWnd1->GetClientRect(&rect1);//GetClientRect为获得..._mfc启动opencv namewindow
文章浏览阅读145次。题解:Every_SG2,Every-SG 定义: 1,Every-SG 游戏规定,对于还没有结束的单一游戏,游戏者必须对该游 戏进行一步决策,也就是每轮操作要对所有单一游戏进行操作。 2,Every-SG 游戏的其他规则与普通SG游戏相同。 定理: 对于Every-SG 游戏先手必胜当且..._a - gg and mm
文章浏览阅读3.1w次,点赞7次,收藏6次。Error in mounted hook: “TypeError: handler.call is not a function”在进入vue组件页面时,后台显示错误Error in mounted hook: “TypeError: handler.call is not a function”具体如下图所示:报错原因:生命周期钩子函数mounted: {}是否有声明了未定义方法或是只声名了钩子函数。解决方案:1.将mounted: {} 删除掉2. 将mounted: {} 改_vue.esm.js?65d7:5105 [vue warn]: error in mounted hook: "typeerror: this.get
文章浏览阅读3.6w次。文章目录clickhouse-clientHTTP 接口JDBCPython接口clickhouse-client你可以通过clickhouse-client命令行进行连接,使用方法如下:clickhouse-client --multiline --passwordHTTP 接口你可以通过HTTP直接连上ClickHouse:root@ubuntu:~# curl 'http:/..._clickhouse连接
文章浏览阅读391次。转自:http://blog.chinaunix.net/uid-28413840-id-4654479.名称描述继承自模板NamedSectionA fixed configuration section defined by its nameNamedSection = class(AbstractSection)cbi/nsection..._cbi控件
文章浏览阅读80次。单例模式双重校验锁实现对象单例(线程安全)public class Singleton { private volatile static Singleton uniqueInstance; private Singleton() { } public static Singleton getUniqueInstance() { //先判断对象是否已经实例过,没有实例化过才进入加锁代码 if (uniqueInstance == ..._多线程题讲解