考题解析 | 在 AWS ALB 中使用 perfect forward secrecy (PFS) 加密通信流量


  题目

A company deploys a distributed web application on a fleet of Amazon EC2 instances. The fleet is behind an Application Load Balancer (ALB) that will be configured to terminate the TLS connection. All TLS traffic to the ALB must stay secure, even if the certificate private key is compromised.
How can a security engineer meet this requirement?
A. Create an HTTPS listener that uses a certificate that is managed by AWS Certificate Manager (ACM).
B. Create an HTTPS listener that uses a security policy that uses a cipher suite with perfect forward secrecy (PFS).
C. Create an HTTPS listener that uses the Server Order Preference security feature.
D. Create a TCP listener that uses a custom security policy that allows only cipher suites with perfect forward secrecy.

  参考答案

B

  需求概括

一家公司在多台亚马逊弹性计算云(Amazon EC2)实例上部署了一个分布式 Web 应用程序。这些实例位于一个应用程序负载均衡器(Application Load Balancer,ALB)后面,该均衡器将被配置为终止传输层安全(Transport Layer Security,TLS)连接。即使证书私钥被泄露,所有发送到 ALB 的 TLS 流量也必须保持安全。安全工程师如何才能满足这一要求?
公司在多台 Amazon EC2 实例上部署分布式 Web 应用,ALB 将终止 TLS 连接,要求即使在证书私钥被泄露的情况下,所有到 ALB 的 TLS 流量仍保持安全,安全工程师需找出满足该要求的方案。

  参考解析

技巧:排除明显错误选项,在没有明显错误的选项中选择最合理的选项。

A. 不正确。创建使用由 AWS Certificate Manager(ACM)管理的证书的 HTTPS 监听器。此操作主要是利用 ACM 简化证书管理,方便配置 HTTPS 监听器,但无法解决证书私钥泄露后流量仍安全的问题,不能满足要求。
B. 正确。创建使用具有完美前向保密(PFS)的密码套件的安全策略的 HTTPS 监听器。使用具有 PFS 的密码套件,即使证书私钥被泄露,过去的会话密钥也无法被解密,能保证之前通信的安全性,满足在证书私钥泄露情况下流量仍安全的要求。
C. 不正确。创建使用 Server Order Preference 安全特性的 HTTPS 监听器。Server Order Preference 主要影响服务器和客户端协商加密套件的顺序,与解决证书私钥泄露后流量安全的问题无关,不能满足要求。
D. 不正确。创建使用仅允许具有完美前向保密的密码套件的自定义安全策略的 TCP 监听器。TCP 监听器通常不用于直接处理 TLS 流量,且配置复杂,相比 HTTPS 监听器,不是解决此问题的合适方式,不能满足要求。

  技术总结

AWS Certificate Manager(ACM):ACM 可用于管理证书,创建使用 ACM 管理证书的 HTTPS 监听器,主要作用是简化证书管理,方便配置和使用证书,但本身不能直接解决证书私钥泄露后流量仍安全的问题。
安全策略与密码套件:安全策略定义了 ALB 使用的加密算法等安全设置,完美前向保密(Perfect Forward Secrecy,PFS)是一种密码套件特性,使用具有 PFS 的密码套件,即使长期私钥被泄露,过去的会话密钥也无法被解密,可保证之前通信的安全性。
Server Order Preference 安全特性:该特性主要涉及服务器和客户端在协商加密套件时的顺序偏好,影响双方选择加密算法的方式,对解决证书私钥泄露后流量安全的问题没有直接作用。
TCP 监听器与自定义安全策略:TCP 监听器工作在传输层,与 HTTPS 监听器(应用层)不同。创建使用自定义安全策略且仅允许具有 PFS 的密码套件的 TCP 监听器,需考虑 TCP 层处理 TLS 流量的复杂性,且通常 ALB 使用 HTTPS 监听器处理 TLS 更合适。