自查方法
- 查看当前支持的加密算法
man sshd_config |grep -A 40 -w KexAlgorithms
修复方法
Linux平台
修改sshd_config配置文件,删除不安全的加密算法
重启服务
systemctl restart sshd
3.查看修改后的配置文件
sshd -T | grep -w kexalgorithms
SSH 弱密钥交换算法已启用
登录到您的SSH服务器。
编辑SSH配置文件:打开/etc/ssh/sshd_config文件(在某些系统上可能是其他位置),例如使用vim编辑器:
sudo vim /etc/ssh/sshd_config
在该文件中,找到"KexAlgorithms"行,这是决定密钥交换算法的地方。
注释掉或删除"KexAlgorithms"行,并添加一行新的配置,例如:
KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256
上述配置中,是根据安全性而选择支持的密钥交换算法,排除了弱密钥交换算法。您可以根据需求选择适当的安全的密钥交换算法。
保存并关闭SSH配置文件。
重新启动SSH服务,以使更改生效。例如,使用以下命令重启OpenSSH服务:
通过禁用CBC模式解决SSH服务器CBC加密模式漏洞(CVE-2008-5161)
OpenSSH CBC模式信息泄露漏洞(CVE-2008-5161)怎么解决
-
更新 OpenSSH:首先确保你的 OpenSSH 服务是最新版本,因为新版本可能已经修复了这个漏洞。可以使用包管理器进行更新,例如在 CentOS 上可以使用
yum update openssh
命令。 -
修改加密算法:在
/etc/ssh/sshd_config
配置文件中,找到Ciphers
配置项,并修改它以禁用 CBC 模式的加密算法。可以将其设置为使用 CTR 模式的加密算法,例如:Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com
修改后,需要重启 sshd 服务以使配置生效,可以使用
systemctl restart sshd
命令。 -
验证配置:使用
ssh -Q cipher
命令来查看当前 SSH 客户端支持的加密算法,确保 CBC 模式的加密算法没有被列出。 -
客户端配置:如果你控制了客户端,也可以在客户端配置中指定不使用 CBC 模式的加密算法。例如,在命令行中使用
-oCiphers=aes128-ctr
参数。 -
检查依赖的加密策略:在某些系统中,加密策略可能由系统级的加密策略管理,例如
crypto-policies
。如果是这种情况,你可能需要更新系统加密策略以禁用 CBC 模式的加密算法。 -
使用漏洞扫描工具复测:修复完成后,可以使用漏洞扫描工具重新测试以确保漏洞已经被修复。
TCP时间戳 低危
要在linux上禁用TCP时间戳,请将“net.ipv4.tcp_timestamps = 0”行添加到/etc/sysctl.conf。 执行'sysctl -p'以在运行时应用设置。 要在Windows上禁用TCP时间戳,请执行'netsh int tcp set global timestamps = disabled' 从Windows Server 2008和Vista开始,无法完全禁用时间戳。 此系统上TCP / IP堆栈的默认行为是在启动TCP连接时不使用Timestamp选项,但如果TCP对等方使用它们 即启动通信包括它们在同步(SYN)段中。
ICMP权限许可和访问控制漏洞(CVE-1999-0524)
Topvas建议您采取以下措施以降低威胁: * 在您的防火墙上过滤外来的ICMP timestamp(类型 13)报文以及外出的ICMP timestamp回复报文。