설명
보안 그룹에서 필요 이상으로 넓은 TCP·UDP 인바운드 포트 범위를 열면, 허용된 출발지에서 의도하지 않은 서비스에 접속할 수 있습니다. 실제 노출 여부는 수신 서비스, 라우팅과 다른 네트워크 통제에도 달려 있습니다.
단일 포트만 필요하면 FromPort와 ToPort를 같은 값으로 설정하세요. 여러 포트가 필요한 서비스에는 범위 지정이 유효하므로 일률적으로 없애지 마세요. ICMP에서는 두 필드가 포트가 아니라 타입과 코드를 나타냅니다.
잠재적 영향
- 불필요하게 허용된 포트에서 실행하는 서비스가 스캔이나 공격 대상이 될 수 있습니다.
- 필요 여부를 확인하지 않고 포트를 닫으면 정상적인 클라이언트 연결이 중단될 수 있습니다.
해결 방법
- 필요한 서비스의 포트를 확인해 단일 TCP·UDP 포트 또는 최소 범위만 허용하세요.
- 출발지 CIDR이나 보안 그룹을 필요한 클라이언트로 제한하고, 다른 연결 그룹의 허용도 검토하세요.
- 사용하지 않는 허용을 정리한 뒤 정상 연결과 서비스 인증·권한을 시험하세요.
예시
TargetSG와 필수 출발지를 생략한 발췌입니다. 실제 규칙에는 출발지 CIDR, 접두사 목록 또는 보안 그룹 중 하나를 지정해야 합니다.
변경 전
yaml
Resources:
InboundRule:
Type: AWS::EC2::SecurityGroupIngress
Properties:
IpProtocol: tcp
FromPort: 0
ToPort: 65535
GroupId: !GetAtt TargetSG.GroupId
출발지를 구성하면 TCP 전체 포트를 허용합니다.
변경 후
yaml
Resources:
InboundRule:
Type: AWS::EC2::SecurityGroupIngress
Properties:
IpProtocol: tcp
FromPort: 443
ToPort: 443
GroupId: !GetAtt TargetSG.GroupId
이 규칙을 TCP 443으로 제한합니다. 포트 번호만으로 HTTPS나 인증이 구성되지는 않으므로 실제 서비스 설정을 확인하세요.