설명
Classic ELB의 TLS 리스너에서 RC4나 DES 같은 약한 암호군을 허용하면 클라이언트와 로드 밸런서 사이의 통신 보호가 약화될 수 있습니다. 실제 리스너에 연결된 정책의 활성 프로토콜과 암호군을 확인해야 합니다.
정책을 정의하는 것과 리스너에 적용하는 것은 별도 작업입니다. 인증서의 키 유형과 클라이언트가 선택한 암호군을 지원하는지도 함께 확인하세요.
잠재적 영향
- 약한 암호군으로 협상된 연결에서 통신 내용의 보호 수준이 낮아질 수 있습니다.
- 요구되는 TLS 보안 기준을 충족하지 못하거나 호환되지 않는 클라이언트 연결이 실패할 수 있습니다.
해결 방법
약한 암호군을 제거하고 해당 Classic Load Balancer가 지원하며 요구사항에 맞는 보안 정책을 사용하세요. 선택한 정책을 TLS 리스너에 연결하고 프로토콜, 암호군 및 인증서 호환성을 확인하세요. 정상 클라이언트 연결은 성공하고 허용하지 않은 암호군은 거부되는지 시험하세요.
예시
Classic ELB 사용자 정의 정책의 발췌입니다. 로드 밸런서, 인증서와 리스너 연결 설정은 생략했습니다.
변경 전
hcl
resource "aws_load_balancer_policy" "elb_ssl_policy" {
load_balancer_name = aws_elb.wu_tang.name
policy_name = "wu-tang-ssl"
policy_type_name = "SSLNegotiationPolicyType"
policy_attribute {
name = "RC4-SHA"
value = "true"
}
}
RC4-SHA 암호군을 활성화합니다. 운영 정책에서는 제거하세요.
변경 후
hcl
resource "aws_load_balancer_policy" "elb_ssl_policy" {
load_balancer_name = aws_elb.wu_tang.name
policy_name = "wu-tang-ssl"
policy_type_name = "SSLNegotiationPolicyType"
policy_attribute {
name = "ECDHE-ECDSA-AES128-GCM-SHA256"
value = "true"
}
policy_attribute {
name = "Protocol-TLSv1.2"
value = "true"
}
}
TLS 1.2와 ECDHE-ECDSA-AES128-GCM-SHA256을 선택합니다. 이 ECDSA 전용 예시에 맞는 인증서가 필요하며, RSA 인증서를 쓰는 경우 RSA 호환 암호군을 선택하세요.