Azure Data Explorer를 사용한 장기 보안 로그 보존

Azure Data Explorer
Azure Data Lake Storage
Azure Event Hubs
Azure Log Analytics
Microsoft Sentinel

이 솔루션은 장기적으로 Azure Data Explorer에 보안 로그를 저장합니다. 이 솔루션은 비용을 최소화하며 데이터를 쿼리해야 하는 경우 쉽게 액세스할 수 있도록 합니다.

GrafanaJupyter Notebooks 는 해당 회사의 상표입니다. 이러한 상표의 사용은 어떠한 보증도 의미하지 않습니다.

아키텍처

보안 로그 데이터의 흐름을 보여 주는 아키텍처 다이어그램. 주요 구성 요소에는 단기 데이터의 경우 Sentinel, 장기 스토리지의 경우 Azure Data Explorer가 포함됨

이 아키텍처의 Visio 파일을 다운로드합니다.

데이터 흐름

  1. SIEM 및 SOAR의 경우 엔터프라이즈는 Sentinel 및 엔드포인트용 Defender를 사용합니다.

  2. 엔드포인트용 Defender는 네이티브 기능을 사용하여 Azure Event Hubs 및 Azure Data Lake로 데이터를 내보냅니다. Sentinel은 엔드포인트용 Defender 데이터를 수집하여 디바이스를 모니터링합니다.

  3. Sentinel은 Log Analytics를 데이터 플랫폼으로 사용하여 Event Hubs 및 Azure Data Lake로 데이터를 내보냅니다.

  4. Azure Data Explorer는 Event Hubs, Azure Blob StorageAzure Data Lake Storage용 커넥터를 사용하여 대기 시간이 짧고 처리량이 높은 데이터를 수집합니다. 이 프로세스에서는 Azure Data Explorer 수집 파이프라인을 트리거하는 Azure Event Grid를 사용합니다.

  5. 필요한 경우 Azure Data Explorer는 보안 로그를 Azure Storage로 지속적으로 내보냅니다. 이 로그는 압축되고 분할된 Parquet 형식이며 쿼리할 준비가 되어 있습니다.

  6. 규정 요구 사항을 따르기 위해 Azure Data Explorer는 보관을 위해 미리 집계된 데이터를 Data Lake Storage로 내보냅니다.

  7. Log Analytics 및 Sentinel은 Azure Data Explorer를 사용하여 서비스 간 쿼리를 지원합니다. SOC 분석가는 이 기능을 사용하여 보안 데이터에 대한 전체 범위 조사를 실행합니다.

  8. Azure Data Explorer는 데이터를 처리, 집계, 분석하기 위한 네이티브 기능을 제공합니다.

  9. 다양한 도구에서 인사이트를 신속하게 제공하는 거의 실시간 분석 대시보드를 제공합니다.

구성 요소

  • 엔드포인트용 Defender는 디바이스, ID, 앱, 메일, 데이터 및 클라우드 워크로드에 대한 위협으로부터 조직을 보호합니다.

  • Sentinel은 클라우드 네이티브 SIEM 및 SOAR 솔루션입니다. 고급 AI 및 보안 분석을 사용하여 엔터프라이즈 기업 전체에서 위협을 탐지, 헌팅, 방지하고 이에 대응합니다.

  • Monitor는 환경과 Azure 리소스에 대한 데이터를 수집하고 분석하는 SaaS(Software as a Service) 솔루션입니다. 이 데이터에는 성능 메트릭, 활동 로그 등의 앱 원격 분석이 포함됩니다. Monitor는 경고 기능도 제공합니다.

  • Log Analytics는 Monitor 로그 데이터를 쿼리하고 검사하는 데 사용할 수 있는 Monitor 서비스입니다. Log Analytics는 쿼리 결과를 차트로 작성하고 통계적으로 분석하는 기능도 제공합니다.

  • Event Hubs는 간단하고 스케일링 가능한 완전 관리형 실시간 데이터 수집 서비스입니다.

  • Data Lake Storage는 대량의 데이터를 데이터 고유의 원시 형식으로 포함하는 스케일링 가능한 스토리지 리포지토리입니다. 이 데이터 레이크는 Blob Storage를 기반으로 빌드되며 데이터를 저장하고 처리하는 기능을 제공합니다.

  • Azure Data Explorer는 빠르고 스케일링 성능이 뛰어난 완전 관리형 데이터 분석 플랫폼입니다. 대량의 데이터에 대한 실시간 분석에 이 클라우드 서비스를 사용할 수 있습니다. Azure Data Explorer는 대화형 임시 쿼리에 최적화되어 있습니다. 애플리케이션, 웹 사이트, IoT 디바이스 및 기타 원본의 다양한 데이터 스트림을 처리할 수 있습니다.

  • Azure Data Explorer 대시보드는 기본적으로 Azure Data Explorer 웹 UI 쿼리에서 데이터를 가져옵니다. 이 최적화된 대시보드는 쿼리 결과를 표시하고 탐색하는 방법을 제공합니다.

대안

  • 보안 로그의 장기 스토리지에 Azure Data Explorer를 사용하는 대신 Storage를 사용할 수 있습니다. 이 접근 방식은 아키텍처를 간소화하며 비용을 제어하는 데 도움이 될 수 있습니다. 단점은 보안 감사와 대화형 조사 쿼리에 대한 로그를 리하이드레이션해야 한다는 것입니다. Azure Data Explorer를 사용하면 정책을 변경하여 콜드 파티션에서 핫 파티션으로 데이터를 이동할 수 있습니다. 이 기능은 데이터 탐색 속도를 높입니다.

  • 이 솔루션의 또 다른 옵션은 보안 값에 관계없이 모든 데이터를 동시에 Sentinel 및 Azure Data Explorer에 보내는 것입니다. 일부 중복 결과가 있지만 비용이 상당히 절감됩니다. Azure Data Explorer는 장기 스토리지를 제공하므로 이 접근 방식을 사용하여 Sentinel 보존 비용을 줄일 수 있습니다.

  • Log Analytics는 현재 사용자 지정 로그 테이블 내보내기를 지원하지 않습니다. 이 시나리오에서는 Azure Logic Apps를 사용하여 Log Analytics 작업 영역에서 데이터를 내보낼 수 있습니다. 자세한 내용은 Logic Apps를 사용하여 Log Analytics 작업 영역에서 Azure Storage로 데이터 보관을 참조하세요.

시나리오 정보

보안 로그는 위협을 식별하고 데이터에 대한 무단 액세스 시도를 추적하는 데 유용합니다. 보안 공격은 발견되기 전에 시작될 수 있습니다. 따라서 장기 보안 로그에 액세스할 수 있는 것이 중요합니다. 위협의 영향을 식별하고 불법 액세스 시도의 확산을 조사하려면 장기 로그 쿼리가 중요합니다.

이 문서에서는 보안 로그의 장기 보존을 위한 솔루션을 간략하게 설명합니다. 아키텍처의 핵심은 Azure Data Explorer입니다. 이 서비스는 최소한의 비용으로 보안 데이터에 대한 스토리지를 제공하지만 해당 데이터를 쿼리할 수 있는 형식으로 유지합니다. 기타 주요 구성 요소는 다음과 같습니다.

  • 다음 기능을 위한 Microsoft Defender for Endpoint 및 Microsoft Sentinel:

    • 포괄적인 엔드포인트 보안
    • SIEM(보안 정보 및 이벤트 관리)
    • SOAR(보안 오케스트레이션 자동화 응답)
  • Sentinel 보안 로그의 단기 스토리지를 위한 Log Analytics.

잠재적인 사용 사례

이 솔루션은 다양한 시나리오에 적용됩니다. 특히 SOC(보안 운영 센터) 분석가는 다음을 위해 이 솔루션을 사용할 수 있습니다.

  • 전면적인 조사.
  • 법정 분석.
  • 위협을 헌팅합니다.
  • 보안 감사.

한 고객이 솔루션의 유용성을 증명합니다. “거의 1년 반 전에 Azure Data Explorer 클러스터를 배포했습니다. 마지막 Solorigate 데이터 위반에서 법정 분석을 위해 Azure Data Explorer 클러스터를 사용했습니다. 또한 Microsoft Dart 팀은 Azure Data Explorer 클러스터를 사용하여 조사를 완료했습니다. 장기 보안 데이터 보존은 전면적인 데이터 조사에 매우 중요합니다.”

모니터링 스택

다음 다이어그램은 Azure 모니터링 스택을 보여 줍니다.

모니터링 솔루션을 보여 주는 아키텍처 다이어그램. Sentinel 및 Log Analytics는 모니터링 및 경고를 제공함. Azure Data Explorer는 플랫폼 역할을 함

  • Sentinel은 Log Analytics 작업 영역을 사용하여 보안 로그를 저장하고 SIEM 및 SOAR 솔루션을 제공합니다.
  • Monitor는 IT 자산의 상태를 추적하고 필요할 때 경고를 보냅니다.
  • Azure Data Explorer는 Log Analytics 작업 영역, Monitor 및 Sentinel의 보안 로그를 저장하는 기본 데이터 플랫폼을 제공합니다.

주요 기능

다음 섹션의 설명대로 솔루션의 주요 기능은 많은 이점을 제공합니다.

장기 쿼리 가능 데이터 저장소

Azure Data Explorer는 스토리지 프로세스 중에 데이터를 인덱싱하여 데이터를 쿼리에 사용할 수 있도록 합니다. 감사 및 조사 실행에 초점을 맞추어야 하는 경우 데이터를 처리할 필요가 없습니다. 데이터 쿼리는 간단합니다.

전면적인 법정 분석

Azure Data Explorer, Log Analytics 및 Sentinel은 서비스 간 쿼리를 지원합니다. 따라서 단일 쿼리에서 해당 서비스에 저장된 데이터를 참조할 수 있습니다. SOC 분석가는 KQL(Kusto 쿼리 언어)을 사용하여 전체 범위 조사를 실행할 수 있습니다. 헌팅을 위해 Sentinel에서 Azure Data Explorer 쿼리를 사용할 수도 있습니다. 자세한 내용은 새로운 기능: Sentinel 헌팅에서 ADX 리소스 간 쿼리 지원을 참조하세요.

주문형 데이터 캐싱

Azure Data Explorer는 기간 기반 핫 캐싱을 지원합니다. 이 기능은 선택한 기간의 데이터를 핫 캐시로 이동하는 방법을 제공합니다. 그런 다음, 데이터에 대한 빠른 쿼리를 실행하여 보다 효율적으로 조사할 수 있습니다. 이 목적을 위해 컴퓨팅 노드를 핫 캐시에 추가해야 할 수 있습니다. 조사가 완료된 후 핫 캐시 정책을 변경하여 데이터를 콜드 파티션으로 이동할 수 있습니다. 클러스터를 원래 크기로 복원할 수도 있습니다.

보관 데이터로 연속 내보내기

규정 요구 사항을 따르기 위해 일부 엔터프라이즈에서는 보안 로그를 무기한 저장해야 합니다. Azure Data Explorer는 데이터의 연속 내보내기를 지원합니다. 이 기능을 통해 보안 로그를 Storage에 저장하여 보관 계층을 빌드할 수 있습니다.

검증된 쿼리 언어

Kusto 쿼리 언어는 Azure Data Explorer에 기본 제공됩니다. 이 언어는 Log Analytics 작업 영역과 Sentinel 위협 헌팅 환경에서도 사용할 수 있습니다. 이 가용성은 SOC 분석가의 학습 곡선을 크게 줄입니다. Sentinel에서 실행하는 쿼리는 Azure Data Explorer 클러스터에 저장하는 데이터에서도 작동합니다.

고려 사항

이러한 고려 사항은 워크로드의 품질을 향상시키는 데 사용할 수 있는 일단의 지침 원칙인 Azure Well-Architected Framework의 핵심 요소를 구현합니다. 자세한 내용은 Microsoft Azure Well-Architected Framework를 참조하세요.

이 솔루션을 구현할 때 다음 사항에 유의하세요.

확장성

다음 스케일링 성능 문제를 고려합니다.

데이터 내보내기 방법

Log Analytics에서 대량의 데이터를 내보내야 하는 경우 Event Hubs 용량 한도에 도달할 수 있습니다. 이 상황을 방지하려면:

  • Log Analytics에서 Blob Storage로 데이터를 내보냅니다.
  • Azure Data Factory 워크로드를 사용하여 데이터를 Azure Data Explorer로 주기적으로 내보냅니다.

이 방법을 사용하면 데이터가 Sentinel 또는 Log Analytics의 보존 한도에 근접한 경우에만 Data Factory에서 데이터를 복사할 수 있습니다. 따라서 데이터 복제를 방지할 수 있습니다. 자세한 내용은 Log Analytics의 데이터를 Azure Data Explorer로 내보내기를 참조하세요.

쿼리 사용량 및 감사 준비

일반적으로 데이터는 Azure Data Explorer 클러스터의 콜드 캐시에서 유지합니다. 이 접근 방식은 클러스터 비용을 최소화하며 이전 달의 데이터를 포함하는 대부분의 쿼리에 충분합니다. 그러나 큰 데이터 범위를 쿼리하는 경우 클러스터를 스케일 아웃하고 데이터를 핫 캐시에 로드해야 할 수 있습니다.

이 목적을 위해 핫 캐시 정책의 핫 기간 기능을 사용할 수 있습니다. 장기 데이터를 감사하는 경우에도 이 기능을 사용할 수 있습니다. 핫 기간을 사용하는 경우 클러스터를 스케일 업 또는 스케일 아웃하여 핫 캐시에서 추가 데이터에 사용할 공간을 확보합니다. 큰 데이터 범위 쿼리를 완료한 후 핫 캐시 정책을 변경하여 컴퓨팅 비용을 줄입니다.

Azure Data Explorer 클러스터에서 최적화된 자동 스케일링 기능을 켜면 캐싱 정책에 따라 클러스터 크기를 최적화할 수 있습니다. Azure Data Explorer에서 콜드 데이터를 쿼리하는 방법에 관한 자세한 내용은 핫 기간을 사용하여 콜드 데이터 쿼리를 참조하세요.

성능 효율성

성능 효율성은 사용자가 배치된 요구 사항을 효율적인 방식으로 충족하기 위해 워크로드의 크기를 조정할 수 있는 기능입니다. 자세한 내용은 성능 효율성 핵심 요소 개요를 참조하세요.

보안 데이터를 장기간 또는 무기한 저장해야 하는 경우 로그를 Storage로 내보냅니다. Azure Data Explorer는 데이터의 연속 내보내기를 지원합니다. 이 기능을 사용하면 데이터를 압축되고 분할된 Parquet 형식으로 Storage로 내보낼 수 있습니다. 그런 다음, 해당 데이터를 원활하게 쿼리할 수 있습니다. 자세한 내용은 연속 데이터 내보내기 개요를 참조하세요.

비용 최적화

비용 최적화는 불필요한 비용을 줄이고 운영 효율성을 높이는 방법을 찾는 것입니다. 자세한 내용은 비용 최적화 핵심 요소 개요를 참조하세요.

Azure Data Explorer 클러스터 비용은 주로 핫 캐시에 데이터를 저장하는 데 사용되는 컴퓨팅 성능을 기준으로 결정됩니다. 핫 캐시 데이터에 대한 쿼리는 콜드 캐시 쿼리보다 더 나은 성능을 제공합니다. 이 솔루션은 대부분의 데이터를 콜드 캐시에 저장하여 컴퓨팅 비용을 최소화합니다.

환경에서 이 솔루션을 실행하는 비용을 살펴보려면 Azure 가격 계산기를 사용합니다.

시나리오 배포

배포를 자동화하려면 이 PowerShell 스크립트를 사용합니다. 이 스크립트는 다음 구성 요소를 만듭니다.

  • 대상 테이블
  • 원시 테이블
  • Event Hubs 레코드가 원시 테이블에 도착하는 방식을 정의하는 테이블 매핑
  • 보존 및 업데이트 정책
  • Event Hubs 네임스페이스
  • Log Analytics 작업 영역의 데이터 내보내기 규칙
  • Event Hubs와 Azure Data Explorer 원시 데이터 테이블 간 데이터 연결

참가자

Microsoft에서 이 문서를 유지 관리합니다. 원래 다음 기여자가 작성했습니다.

보안 주체 작성자:

비공개 LinkedIn 프로필을 보려면 LinkedIn에 로그인합니다.

다음 단계