업계의 많은 글과 제 블로그 ‘ SASE 해독하기 ‘에서는 SASE의 주요 구성 요소에 대해 매우 명확하게 설명합니다. SASE 보안의 경우 보안 웹 게이트웨이(SWG), 클라우드 액세스 보안 브로커(CASB), 제로 트러스트 네트워크 액세스(ZTNA), 차세대 방화벽(NGFW)이 주요 구성 요소로 논의되고 있습니다. 이러한 구성 요소의 보안 기능은 IP 주소, 도메인, URL, 파일 평판 기반 액세스 제어, 멀웨어 방지, 데이터 손실 방지, 침입 방지 등 다양한 수준의 정책 기반 액세스 제어와 더불어 L3/L4 액세스 제어, URL 카테고리 기반 액세스 제어, 서비스로서의 소프트웨어 기능 수준 액세스 제어 등을 포함합니다. HTTP(하이퍼텍스트 전송 프로토콜)는 인터넷, 서비스형 소프트웨어, 심지어 엔터프라이즈 애플리케이션 액세스를 위한 가장 일반적인 프로토콜이므로 많은 문서에서 하이퍼텍스트 전송 프로토콜의 맥락에서 보안 기능을 설명합니다. 이 문서에서는 DNS(도메인 이름 시스템) 프로토콜과 DNS 프록시를 통해 달성할 수 있는 위협 보호에 중점을 둡니다. 아리아카는 SASE에 DNS 기반 보안이 포함되어야 한다고 믿습니다. DNS란 무엇인가요? DNS는 사람이 읽을 수 있는 도메인 이름을 IP 주소로 변환하는 시스템입니다. 컴퓨터는 IP 주소를 사용하여 서로 통신하지만 도메인 이름은 사람이 기억하고 사용하기가 더 쉽습니다. 사용자가 웹사이트나 서비스에 액세스하기 위해 브라우저에 도메인 이름을 입력하면 브라우저는 도메인 이름과 연결된 IP 주소를 조회하기 위해 DNS 확인업체에 DNS 쿼리 요청을 보냅니다. 확인자는 DNS 계층 구조라는 분산 데이터베이스에서 IP 주소를 조회하여 브라우저에 반환하고, 브라우저는 이 IP 주소를 사용하여 웹사이트 또는 서비스를 호스팅하는 서버에 연결을 설정합니다. DNS 및 DNS 보안을 통한 보안 ‘DNS 보안’이라는 용어는 일반적으로 권한 있는 DNS 서버 및 DNS 확인자를 포함하여 기업 DNS 인프라를 보호하기 위해 취하는 조치를 지칭하는 데 사용됩니다. “DNS를 통한 보안”은 일반적으로 투명한 DNS 프록시를 통해 위협 보호 및 액세스 제어를 위해 DNS 프로토콜을 사용하는 것을 말합니다. SASE는 여러 네트워크 보안 서비스를 하나로 통합하고 있기 때문에 ‘DNS를 통한 보안’과 ‘DNS 보안’ 기능을 모두 포함해야 한다고 생각합니다. 이 두 가지 기능은 모두 DNS 프록시 메커니즘을 통해 SASE에서 구현할 수 있습니다. SASE의 SD-WAN 부분은 DNS 트래픽을 가로채서 DNS 프록시로 전달하여 다양한 보안 기능을 수행할 수 있습니다. 또한 DNS 프록시는 단순(비재귀적) DNS 확인자 역할을 수행하여 DNS 쿼리를 업스트림 DNS 확인자/서버로 보내야 합니다. SASE DNS 프록시의 일반적인 기능프라이버시 보장: 기본 클라이언트 애플리케이션/브라우저와 같은 클라이언트에서 생성된 DNS 쿼리는 암호화되지 않습니다. 따라서 트래픽에 액세스할 수 있는 모든 중간 주체는 사용자가 어떤 웹사이트를 방문하고 있는지 확인할 수 있습니다. 이렇게 개인정보가 보호되지 않으면 중간자 공격자가 사용자의 온라인 행동을 더 쉽게 추적할 수 있습니다. SASE의 DNS 프록시는 DNS 쿼리가 엔터프라이즈의 논리적 경계를 벗어나기 전에 개입할 수 있으므로 업스트림 DNS 확인자를 통해 DNS-over-TLSDNS-over-HTTP를 통해 사용자의 온라인 행동에 대한 개인 정보를 보호할 수 있습니다. DNS 프록시는 클라이언트의 DNS 쿼리를 가로채서 DNS-over-HTTPS/TLS를 통해 업스트림 DNS 확인자에게 전달할 수 있습니다. DNS 응답의 무결성 및 인증을 보장합니다: DNS 시스템은 신뢰를 기반으로 구축됩니다. DNS 클라이언트와 DNS 확인자는 업스트림 DNS 서버 및 확인자로부터 받는 DNS 응답을 신뢰합니다. 업스트림 DNS 시스템이 손상되면 공격자가 진짜 도메인 이름에 대한 공격자의 사이트 IP 주소로 DNS 응답을 보낼 수 있습니다. 이를 DNS 스푸핑 또는 DNS 캐시 중독 공격이라고 합니다. DNS 스푸핑을 차단하기 위한 솔루션 중 하나는 DNS 프로토콜의 DNSSEC(보안 DNS) 향상입니다. DNSSEC는 DNS 클라이언트/리졸브가 데이터의 신뢰성을 검증할 수 있도록 DNS 응답 데이터를 디지털 서명하여 공격으로부터 보호함으로써 조작/위조된 DNS 데이터로부터 보호합니다. 그러나 모든 DNS 클라이언트와 확인자가 DNSSEC를 수행할 수 있는 것은 아닙니다. DNS 클라이언트와 업스트림 DNS 서버를 방해하는 DNS 프록시는 DNSSEC 기능을 사용하여 데이터의 유효성을 확인할 수 있습니다. DNS 폭주 공격으로부터 보호: 문서에서는 DNS 인프라에 대한 DDoS 공격, 특히 피해자를 압도할 수 있는 DNS 증폭 및 DNS 반사 공격에 대해 매우 포괄적으로 설명합니다. 여기에는 DNS 서버/확인자가 실행 중인 인프라와 DNS 서비스 자체가 모두 포함됩니다. 또 다른 유형의 공격은 리소스(CPU 및 메모리)를 고갈시키는 것을 목표로 합니다. 이러한 유형의 예로는 공격자가 존재하지 않는 도메인과 임의의 레이블이 있는 하위 도메인으로 DNS 쿼리를 보내는 NXDOMAIN 플러드 공격과 물 고문 공격이 있습니다. L3/L4 방화벽 서비스를 갖춘 SASE는 피해자에 대한 DNS 쿼리가 없는 경우 DNS 응답이 피해자에게 도달하지 못하도록 차단하여 리플렉션 공격을 효과적으로 차단할 수 있습니다. 또한 일반적인 속도 제한 서비스를 제공하는 SASE를 사용하면 소스 IP/서브넷당 쿼리 수를 제한하여 DNS 서비스(리졸버 및 서버)의 홍수를 완화할 수 있습니다. NXDOMAIN 플러드 및 물 고문 공격을 포함한 플러드 공격에 대한 지능적인 보호를 위해서는 SASE DNS 프록시가 필요합니다. SASE DNS 프록시는 DNS 프로토콜 수준의 속도 제한과 비정상적인 도메인 이름 탐지 방법을 사용한 임의 레이블 탐지를 통해 이러한 공격을 완화합니다. DNS 기반 익스플로잇으로부터 보호: 공격자는 DNS 인프라의 취약성 및 잘못된 구성을 악용하여 DNS 서비스를 손상시킬 수 있습니다. DNS 서비스가 손상되면 공격자는 자신의 IP 주소로 DNS 응답을 스푸핑할 수 있습니다. 버퍼 오버플로 취약점의 몇 가지 예로는 Bind9 TKEY 취약점 및 역 쿼리 오버플로 취약점이 있습니다. 일부 익스플로잇은 관련 RFC의 준수 여부를 확인하여 탐지할 수 있습니다. 그러나 일부 경우 익스플로잇 페이로드는 DNS 서비스 구현의 취약점을 이용하면서 RFC를 준수합니다. SASE 보안에는 일반적으로 알려진 익스플로잇을 탐지하는 데 사용할 수 있는 IDPS(침입 탐지 및 보호 시스템)가 포함됩니다. 제로데이 보호를 위해서는 SASE DNS 프록시가 프로토콜 준수 여부를 확인하고 이상 탐지 기능을 사용하여 일반적으로 관찰되는 것과 비교하여 비정상적인 DNS 페이로드 콘텐츠를 식별하는 것이 중요합니다. 사용자가 평판이 나쁜 사이트를 방문하지 못하도록 액세스 제어 및 방지: 위의 ‘DNS란 무엇인가요’ 섹션에서 설명한 대로, 도메인 이름 쿼리는 사용자가 웹사이트를 방문할 때 가장 먼저 수행하는 단계입니다. Via-DNS 보안은 사용자가 멀웨어 및 피싱 콘텐츠를 호스팅하는 사이트에 액세스하는 것을 방지하는 데 중요한 역할을 할 수 있습니다. 많은 위협 인텔리전스 공급업체가 IP 주소와 도메인 이름에 대한 평판 점수를 제공합니다. 이 인텔리전스를 활용하여 악성 도메인 이름에 대한 DNS 쿼리를 차단하고 잘못된 IP 주소가 포함된 DNS 응답을 방지할 수 있습니다. SASE DNS 프록시의 기능을 통해 사용자를 위한 1단계 안티 멀웨어 및 피싱 방지 보안을 구현할 수 있습니다. SASE DNS 프록시는 여러 위협 인텔리전스 공급업체와 통합하여 정기적으로 IP/도메인 평판 데이터베이스를 확보하고 악성 IP 주소 및 도메인 이름과 관련된 DNS 쿼리 및 응답을 필터링합니다. 그러나 위협 인텔리전스 피드에 오탐이 있을 수 있으므로 SASE 제공업체가 예외를 생성할 수 있는 기능을 제공하는지 확인하는 것이 중요합니다. 또한 SASE DNS 프록시를 사용하면 관리자가 사용자 지정 도메인 이름과 IP 주소를 필터링할 수 있으므로 사용자가 기업의 관심사에 맞지 않는 사이트에 액세스하는 것을 방지할 수 있습니다. 손상된 업스트림 DNS 서비스로부터 보호: 앞서 언급했듯이 DNSSEC는 DNS 응답 유효성 문제를 해결하고 스푸핑된 IP 주소로 DNS 응답을 방지할 수 있습니다. 하지만 모든 DNS 서비스가 DNSSEC를 구현하는 것은 아닙니다. 사용자가 피싱 및 멀웨어 사이트에 액세스하지 못하도록 하려면 DNSSEC 기반이 아닌 손상된 DNS 서비스에서 DNS 스푸핑을 탐지하는 것이 중요합니다. 한 가지 기술은 여러 업스트림 DNS 확인자를 활용하고 각 확인자의 응답을 비교하여 결과가 일치하는 경우에만 DNS 응답을 전달하는 것입니다. SASE DNS 프록시의 기능을 사용하면 다양한 업스트림 DNS 확인자로부터 받은 여러 DNS 응답을 교차 검증할 수 있습니다. 응답 간의 일관성을 확인하고 성공적인 확인이 이루어진 경우에만 응답합니다. 이 접근 방식은 여러 업스트림 DNS 확인자의 응답을 기다려야 하기 때문에 DNS 쿼리에 추가적인 지연 시간이 발생할 수 있으므로, 여러 개의 DNS 쿼리를 보내고 위협 인텔리전스 데이터베이스에 쿼리된 도메인 이름에 대한 답변이 없는 경우에만 교차 확인을 수행하는 것이 일반적입니다. 침해 지표(IoC): DNS 트래픽에 대한 보안 분석은 중요한 인사이트와 침해 지표를 제공할 수 있습니다. SASE DNS 보안이 제공할 수 있는 몇 가지 인사이트와 IoC는 다음과 같습니다:

  • 위협 인텔리전스 피드를 사용하는 의심스러운 도메인 이름.
  • “손상된 업스트림 DNS 서비스로부터 보호” 섹션에 설명된 대로 DNS 응답 분석을 통한 DNS 스푸핑 시도 탐지 및 기타 기술.
  • NXDOMAIN 및 SERVFAIL과 같은 비정상적이고 예기치 않은 DNS 응답 코드를 식별합니다.
  • 특정 도메인에 대한 대량의 요청 또는 반복되는 쿼리 실패와 같은 비정상적인 쿼리 패턴 탐지.
  • 멀웨어가 명령 및 제어 센터와 통신하기 위해 일반적으로 사용하는 도메인 생성 알고리즘(DGA)을 탐지합니다.
  • 도메인에 연결된 IP 주소가 빠르게 변경되는 빠른 플럭스 네트워크 식별. 이 동작은 멀웨어를 호스팅하는 사이트에서 일반적으로 관찰됩니다.

SASE DNS 프록시, IDPS, 방화벽은 사용자의 위험을 완화할 뿐만 아니라 SASE 시스템에서 생성된 로그를 통해 중요한 인사이트를 제공하는 데도 중요한 역할을 합니다. 요약 실제 데이터 트랜잭션이 발생하기 전에 DNS가 참조되므로 DNS 기반 보안은 사용자와 DNS 인프라 모두를 위한 첫 번째 방어선 역할을 합니다. 효과적인 보안을 위해서는 가능한 한 빨리 공격을 탐지하는 것이 중요합니다. DNS 기반 보안은 현재 SASE/SSE 관련 문헌에서 크게 부각되지 않을 수 있지만, 저희는 SASE/SSE 서비스가 DNS 기반 보안을 통합해야 한다고 굳게 믿고 있습니다. SASE 및 보안 주제에 대한 이전 블로그 게시물은 여기에서 확인하세요.

  • CTO 인사이트 블로그

    아리아카 CTO 인사이트 블로그 시리즈는 네트워크, 보안 및 SASE 주제에 대한 사고 리더십을 제공합니다.
    아리아카 제품 사양은 아리아카 데이터시트를 참조하세요.