보안 그룹 ingress 포트 범위 점검

인바운드 TCP·UDP 포트 범위와 접속 출발지를 서비스에 필요한 범위로 제한하세요.

설명

보안 그룹에서 필요 이상으로 넓은 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나 인증이 구성되지는 않으므로 실제 서비스 설정을 확인하세요.

참조