-
Notifications
You must be signed in to change notification settings - Fork 4
Closed
Description
版本信息(Version)
2506
问题描述(Describe)
- dms启动https服务时支持了过时的密码组件:TLS_RSA_WITH_3DES_EDE_CBC_SHA,该密码组件存在SSL/TLS 协议信息泄露漏洞(CVE-2016-2183)
- 支持tls1.0、1.1,需要禁用
- 需要禁用rsa密钥交换
截图或日志(Log)
如何复现(To Reproduce)
配置dms以https协议启动,使用nmap扫描支持的加密组件
nmap -p 443 --script ssl-enum-ciphers localhost
Starting Nmap 7.97 ( https://nmap.org ) at 2025-07-25 11:01 +0800
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000072s latency).
Other addresses for localhost (not scanned): ::1
PORT STATE SERVICE
443/tcp open https
| ssl-enum-ciphers:
| TLSv1.0:
| ciphers:
| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A
| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A
| TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
| TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A
| TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA (secp256r1) - C
| TLS_RSA_WITH_3DES_EDE_CBC_SHA (rsa 2048) - C
| compressors:
| NULL
| cipher preference: server
| warnings:
| 64-bit block cipher 3DES vulnerable to SWEET32 attack
| TLSv1.1:
| ciphers:
| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A
| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A
| TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
| TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A
| TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA (secp256r1) - C
| TLS_RSA_WITH_3DES_EDE_CBC_SHA (rsa 2048) - C
| compressors:
| NULL
| cipher preference: server
| warnings:
| 64-bit block cipher 3DES vulnerable to SWEET32 attack
| TLSv1.2:
| ciphers:
| TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (secp256r1) - A
| TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (secp256r1) - A
| TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (secp256r1) - A
| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A
| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A
| TLS_RSA_WITH_AES_128_GCM_SHA256 (rsa 2048) - A
| TLS_RSA_WITH_AES_256_GCM_SHA384 (rsa 2048) - A
| TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
| TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A
| TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA (secp256r1) - C
| TLS_RSA_WITH_3DES_EDE_CBC_SHA (rsa 2048) - C
| compressors:
| NULL
| cipher preference: server
| warnings:
| 64-bit block cipher 3DES vulnerable to SWEET32 attack
| TLSv1.3:
| ciphers:
| TLS_AKE_WITH_AES_128_GCM_SHA256 (ecdh_x25519) - A
| TLS_AKE_WITH_AES_256_GCM_SHA384 (ecdh_x25519) - A
| TLS_AKE_WITH_CHACHA20_POLY1305_SHA256 (ecdh_x25519) - A
| cipher preference: server
|_ least strength: C
问题原因
在使用 github.com/labstack/echo/v4 v4.10.2 通过 StartTLS 启动 HTTPS 服务时被检测出存在 SWEET32 (CVE-2016-2183) 漏洞,这意味着你的服务允许客户端协商并使用 64 位块大小的弱密码套件,主要是 3DES。
修复这个漏洞的关键在于禁用所有基于 3DES/DES 的弱密码套件,并强制服务器优先使用更强大、更现代的密码算法。
解决方案
echo 框架本身不直接处理 TLS 配置,它底层依赖 Go 语言标准库的 net/http 和 crypto/tls 包。因此,你需要通过配置 http.Server 的 TLSConfig 字段来解决这个问题。
变更影响面
受影响的模块或功能
外部引用的潜在问题或风险
版本兼容性
测试建议
Metadata
Metadata
Assignees
Labels
verified已经由测试验证过的issue已经由测试验证过的issue