Infoblox 기반의 DNS Armor는 Google Cloud 워크로드에 DNS 계층 보안을 제공하는 완전 관리형 서비스로, 추가 소프트웨어 설치가 필요하지 않습니다. 고급 위협 감지기는 운영 복잡성이나 성능 오버헤드를 추가하지 않고 공격 체인의 가장 초기 지점인 DNS 쿼리에서 악의적인 활동을 감지하도록 설계되었습니다. 위협 확인은 Compute Engine 및 GKE 인스턴스에서 지원됩니다.
DNS Armor를 사용하면 기존 클라우드 인프라 내에서 직접 DNS 쿼리를 처리하고 분석할 수 있습니다. 이렇게 하면 민감한 트래픽을 서드 파티 프록시로 리디렉션할 필요가 없습니다.
위협이 감지되면 Cloud Logging을 통해 DNS 위협에 대한 실행 가능한 유용한 정보를 얻을 수 있습니다.
DNS Armor의 작동 방식
프로젝트에 DNS 위협 감지기를 사용 설정하면 DNS Armor에서 인터넷에 연결된 DNS 쿼리 로그를 Google Cloud내 Infoblox 위협 엔진의 전용 배포로 안전하게 전송합니다. 이 엔진은 위협 인텔리전스 피드와 AI 기반 행동 분석을 결합하여 위협을 식별합니다.
감지된 의심스럽거나 악의적인 활동은 DNS Armor 위협 로그를 자동으로 생성하며, 이 로그는 프로젝트로 다시 전송되고 Cloud Logging에 기록되어 사용자가 확인하고 조치를 취할 수 있습니다.
DNS Armor의 고급 위협 탐지를 사용하면 다음과 같은 위협을 감지할 수 있습니다.
- 데이터 유출을 위한 DNS 터널링: 네트워크에서 데이터를 비밀리에 전송하도록 구조화된 DNS 쿼리로, 기존 방화벽을 우회하는 경우가 많습니다.
- 멀웨어 명령 및 제어(C2): 공격자의 서버에 지시를 요청하기 위해 연락을 시도하는 손상된 워크로드의 DNS 통신입니다.
- 도메인 생성 알고리즘(DGA): 멀웨어가 명령 및 제어 서버를 찾아 연결하기 위해 만드는 무작위로 보이는 머신 생성 도메인에 대한 DNS 쿼리입니다.
- Fast Flux: 연결된 IP 주소를 빠르게 변경하는 도메인에 대한 DNS 쿼리입니다. 악성 인프라를 추적하고 차단하기 어렵게 만드는 데 사용되는 기법입니다.
- 제로데이 취약점 DNS: 새로 등록된 도메인에 대한 DNS 쿼리입니다. 이러한 도메인은 알려진 나쁜 평판이 생기기 전에 공격자가 악의적인 활동에 사용합니다.
- 멀웨어 배포: 멀웨어를 호스팅 또는 배포하는 것으로 알려져 있거나 향후 멀웨어를 호스팅 또는 배포할 수 있는 공격자가 소유한 악성 및 고위험 도메인에 대한 DNS 쿼리입니다.
- 유사 도메인: 합법적이고 신뢰할 수 있는 브랜드처럼 보이도록 의도적으로 맞춤법이 틀리거나 형식이 지정된 악성 도메인에 대한 DNS 쿼리입니다.
- 익스플로잇 키트: 클라우드 워크로드의 취약점을 자동으로 악용하여 멀웨어를 설치하려는 웹사이트에 대한 DNS 쿼리입니다.
- 지능형 지속 위협(APT): 스파이 활동이나 데이터 도용을 위해 정교한 그룹이 장기간에 걸쳐 진행하는 타겟팅된 공격 캠페인과 관련된 도메인에 대한 DNS 쿼리입니다.
위협 감지기 작동
고급 위협 감지기는 프로젝트 수준에서 사용할 수 있는 전역적으로 구성된 서비스이지만 각 리전에서 독립적으로 작동합니다 (지원되는 리전 목록은 DNS Armor 위치 참고). 하지만 DNS 위협 감지기 구성은 위협이 분석되는 로컬 리전과 관계없이 동일합니다. 최대 100개의 특정 네트워크를 제외할 수 있는 기능과 함께 프로젝트의 모든 VPC 네트워크에 대해 사용 설정할 수 있습니다.
감지 엔진은 리전별로 배포되며 동일한 리전에서 DNS 트래픽을 수신합니다. 예를 들어 us-central1의 클라이언트에서 발생하는 DNS 트래픽은 us-central1에 배포된 감지 엔진으로 전달됩니다.
단일 도메인 이름이 여러 위협 카테고리와 일치할 수 있습니다. 이 경우 동일한 DNS 쿼리에 대해 여러 위협 이벤트가 표시됩니다.
DNS Armor는 쿼리 해결과 독립적입니다. 위협 분석은 쿼리 분석 후 비동기식으로 실행되므로 워크로드의 실제 DNS 분석 경로에 추가 지연 시간이 발생하지 않습니다. 표준 VPC 흐름 로그 또는 DNS 쿼리 로그를 사용 설정하거나 사용 중지해도 DNS Armor의 작동에는 영향을 미치지 않습니다.
CNAME 체인에 대한 위협 확인
DNS Armor를 사용하면 DNS CNAME 체인에 대한 위협 확인도 가능합니다. 쿼리 확인의 첫 번째 이름이 공개 CNAME 레코드인 경우 쿼리가 범위 내에 있습니다.
CNAME 체인의 도메인이 위협 발견 항목을 트리거하면 쿼리에 대해 단일 위협 로그 항목이 생성됩니다. dnsQuery.queryName 필드에는 워크로드에서 쿼리한 초기 도메인이 포함되고 threatInfo.threatIndicator 필드에는 감지를 트리거한 체인의 특정 도메인이 포함됩니다.
위협 감지기 제외
다음은 DNS Armor 검사에서 제외됩니다.
- VPC 제외: VPC 네트워크가 DNS Armor 제외 목록에 있습니다.
- 지원되지 않는 워크로드 및 구성:
- 서버리스: Cloud Run, Cloud Run 함수, App Engine 표준 환경은 지원되지 않습니다.
- Cloud DNS 리졸버 우회: Cloud DNS (169.254.169.254)를 우회하고
8.8.8.8와 같은 다른 DNS 서버 또는 서비스에 직접 쿼리를 전송하도록 구성된 워크로드의 쿼리는 지원되지 않습니다. - DNS 기반 허브 및 스포크 설계: 스포크 VPC 네트워크가 인터넷 바운드 쿼리를 포함한 모든 쿼리를 중앙 허브 VPC 네트워크로 전달하는 DNS 피어링 영역 (예: 루트
.영역)과 연결된 경우 이러한 쿼리는 검사되지 않습니다. 쿼리가 소스의 피어링 영역과 일치하고 허브와 스포크 VPC 모두에서 내부 트래픽으로 처리되기 때문입니다.
- 인터넷 외 경로 확인:
제외 쿼리
.internal 및 RFC 2606 예약 최상위 도메인 (TLD)은 Cloud DNS에서 기본적으로 삭제되며 요금이 청구되지 않습니다. 여기에는 .test, .example, .invalid, .localhost이 포함됩니다.
제한사항
DNS Armor에는 다음과 같은 제한이 있습니다.
비공개 DNS 확인: DNS Armor는 인터넷에 연결되는 DNS 트래픽만 검사합니다.
서버리스 워크로드 (Cloud Run): DNS Armor는 서버리스 워크로드의 DNS 쿼리를 검사하지 않습니다.
인바운드 전달: DNS Armor는 Cloud DNS 인바운드 전달 엔드포인트로 전송된 쿼리를 검사하지 않습니다.
DNS 피어링 영역: DNS Armor는 DNS 피어링 연결을 통과하는 쿼리 (인터넷에 연결된 쿼리 포함)를 검사하지 않습니다.
보안 웹 프록시: DNS Armor는 보안 웹 프록시에서 실행한 DNS 쿼리를 검사하지 않습니다.
결제 영향
워크로드에서 생성되고 위협 분석이 실행되는 인터넷 연결 DNS 쿼리 수에 따라 요금이 청구됩니다. 제외 목록은 위협 감지기 제외를 참고하세요.
DNS Armor는 위협 발견 결과가 프로젝트의 Cloud Logging 계정에 기록되므로 Cloud Logging 청구서에도 영향을 미칩니다. 자세한 내용은 Google Cloud Observability 가격 책정: Cloud Logging을 참고하세요.
DNS Armor 쿼리 볼륨 및 비용 최적화 추정에 대한 자세한 내용은 DNS Armor 비용 추정 및 최적화를 참고하세요.
일반적인 Cloud DNS 가격 책정에 대한 자세한 내용은 Cloud DNS 가격 책정을 참고하세요.
기타 보안 옵션
DNS Armor 외에도 사용할 수 있는 또 다른 보안 옵션은 Google Security Operations입니다. 이 서비스는 프로젝트에서 수동으로 구성해야 합니다.
Google Security Operations는 보안 및 네트워크 원격 분석 데이터를 정규화하고, 색인을 생성하고, 상관관계를 지정하고, 분석하는 서비스입니다. 자세한 내용은 Google SecOps 문서를 참고하세요.