EnvoyProxy、Diffie Hellman Key 和 ssl 安全
EnvoyProxy, Diffie Hellman Key and ssl security
我正在尝试在我的服务器上获得 A+ 100% ssl 实验室排名。
当我有 Nginx 时,我可以在配置中设置 Diffie Hellman key (ssl_dhparam).
现在我迁移到 EnvoyProxy 但我找不到指定 Diffie Hellman 密钥的方法。
Envoy 使用 BoringSSL 而不是 OpenSSL。
我深入研究了 BoringSSL 的代码,它引用了 Diffie Hellman,但 envoy 没有。
你怎么看? Envoy 是否不如其他反向代理安全?
经过进一步调查,我发现 BoringSSL 没有实现使用 Diffie Hellman (DH) 的削片器,但这并不意味着它不太安全。
我无法获得 100% 的 SSL 评级,因为目前只有少数 chippers "secure" 而且它们并未在所有旧参考浏览器上实现,因此,我必须处理真实的故事。
由于加密和 MAC 之间的顺序缺陷,TLS 中的所有 CBC-mode 密码都容易受到 Lucky 13 攻击。 ECDHE-ECDSA-AES256-SHA384 和 ECDHE-RSA-AES256-SHA384(标准名称为 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 和 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384)将 HMAC-SHA-1 切换为 HMAC-SHA- 384,但 SHA-1 并不是这些密码的主要问题。
TLS 1.2 中唯一的强密码套件是 ECDHE 与 AEAD 批量密码(基于 AES-GCM 或 ChaCha20-Poly1305)配对。其他一切都是遗留的,应该随着时间的推移逐步淘汰。
这是我的配置:
tls_params:
tls_maximum_protocol_version: TLSv1_3
tls_minimum_protocol_version: TLSv1_2
cipher_suites: [
"ECDHE-RSA-CHACHA20-POLY1305",
"ECDHE-RSA-AES256-GCM-SHA384",
"ECDHE-RSA-AES256-SHA"
]
ecdh_curves: [
"P-256"
]
出于兼容性目的,我保留了 ECDHE-RSA-AES256-SHA。
我正在尝试在我的服务器上获得 A+ 100% ssl 实验室排名。 当我有 Nginx 时,我可以在配置中设置 Diffie Hellman key (ssl_dhparam).
现在我迁移到 EnvoyProxy 但我找不到指定 Diffie Hellman 密钥的方法。
Envoy 使用 BoringSSL 而不是 OpenSSL。 我深入研究了 BoringSSL 的代码,它引用了 Diffie Hellman,但 envoy 没有。
你怎么看? Envoy 是否不如其他反向代理安全?
经过进一步调查,我发现 BoringSSL 没有实现使用 Diffie Hellman (DH) 的削片器,但这并不意味着它不太安全。
我无法获得 100% 的 SSL 评级,因为目前只有少数 chippers "secure" 而且它们并未在所有旧参考浏览器上实现,因此,我必须处理真实的故事。
由于加密和 MAC 之间的顺序缺陷,TLS 中的所有 CBC-mode 密码都容易受到 Lucky 13 攻击。 ECDHE-ECDSA-AES256-SHA384 和 ECDHE-RSA-AES256-SHA384(标准名称为 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 和 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384)将 HMAC-SHA-1 切换为 HMAC-SHA- 384,但 SHA-1 并不是这些密码的主要问题。
TLS 1.2 中唯一的强密码套件是 ECDHE 与 AEAD 批量密码(基于 AES-GCM 或 ChaCha20-Poly1305)配对。其他一切都是遗留的,应该随着时间的推移逐步淘汰。
这是我的配置:
tls_params:
tls_maximum_protocol_version: TLSv1_3
tls_minimum_protocol_version: TLSv1_2
cipher_suites: [
"ECDHE-RSA-CHACHA20-POLY1305",
"ECDHE-RSA-AES256-GCM-SHA384",
"ECDHE-RSA-AES256-SHA"
]
ecdh_curves: [
"P-256"
]
出于兼容性目的,我保留了 ECDHE-RSA-AES256-SHA。