Microsoft Sentinel의 분석 규칙 문제 해결

이 문서에서는 Microsoft Sentinel에서 예약된 분석 규칙을 실행할 때 발생할 수 있는 특정 문제를 처리하는 방법에 대해 설명합니다.

문제: 쿼리 결과에 이벤트가 표시되지 않습니다.

이벤트 그룹화각 이벤트에 대한 경고를 트리거하도록 설정된 경우 나중에 본 쿼리 결과가 누락되거나 예상과 다른 것으로 나타날 수 있습니다. 예를 들어 나중에 관련 인시던트를 조사할 때 쿼리 결과를 볼 수 있으며 해당 조사의 일부로 이 쿼리의 이전 결과로 다시 피벗하기로 할 수 있습니다.

결과는 경고와 함께 자동으로 저장됩니다. 그러나 결과가 너무 크면 결과가 저장되지 않으며 쿼리 결과를 다시 볼 때 데이터가 나타나지 않습니다.

수집 지연이 있거나 집계로 인해 쿼리가 결정적이지 않은 경우 경고의 결과는 쿼리를 수동으로 실행하여 표시되는 결과와 다를 수 있습니다.

이 문제를 해결하기 위해 규칙에 이 이벤트 그룹화 설정이 있는 경우 Microsoft Sentinel은 쿼리 결과에 OriginalQuery 필드를 추가합니다. 기존 Query 필드와 새 필드를 비교한 결과는 다음과 같습니다.

필드 이름 포함 이 필드에서 쿼리 실행
결과
쿼리 경고의 이 인스턴스를 생성한 이벤트의 압축된 레코드. 경고의 이 인스턴스를 생성한 이벤트
10킬로바이트로 제한됩니다.
OriginalQuery 분석 규칙에 따라 작성된 원래 쿼리. 쿼리가 실행되는 시간대의 가장 최근 이벤트로, 쿼리에 정의된 매개 변수에 적합합니다.

즉, OriginalQuery 필드는 기본 이벤트 그룹화 설정에서 Query 필드가 작동하는 것처럼 작동합니다.

문제: 예약된 규칙을 실행하지 못했거나 이름에 AUTO DISABLED이 추가된 상태로 표시됩니다.

예약된 쿼리 규칙이 실행되지 않는 경우는 드물지만 발생할 수 있습니다. Microsoft Sentinel은 실패의 특정 유형과 그 원인이 되는 상황을 기반으로 하여 일시적 또는 영구적으로 오류를 미리 분류합니다.

일시적 오류

일시적인 상황으로 인해 일시적인 장애가 발생하고 곧 정상으로 돌아오면 규칙 실행이 성공합니다. 다음은 Microsoft Sentinel에서 임시로 분류하는 오류에 대한 몇 가지 예입니다.

  • 규칙 쿼리를 실행하는 데 시간이 너무 오래 걸리고 시간이 초과되었습니다.
  • 데이터 원본 및 Log Analytics 간 또는 Log Analytics와 Microsoft Sentinel 간의 연결 문제가 있습니다.
  • 다른 모든 새롭고 알려지지 않은 오류는 일시적인 것으로 간주됩니다.

일시적인 오류가 발생하는 경우 Microsoft Sentinel은 미리 정해지고 지속적으로 증가하는 간격 후 일정 지점까지 규칙을 계속 실행하려고 합니다. 그 후에는 다음 예약된 시간에만 규칙이 다시 실행됩니다. 일시적인 장애로 인해 규칙을 자동으로 사용하지 않도록 설정되는 일은 없습니다.

영구적인 장애 - 규칙 자동 사용 안 함

영구적인 장애는 규칙을 실행할 수 있는 조건의 변경으로 인해 발생하며, 사람의 개입 없이는 이전 상태로 돌아갈 수 없습니다. 다음은 영구적으로 분류되는 오류의 몇 가지 예입니다.

  • 규칙 쿼리가 실행된 대상 작업 영역이 삭제되었습니다.
  • 규칙 쿼리가 수행된 대상 테이블이 삭제되었습니다.
  • Microsoft Sentinel이 대상 작업 영역에서 제거되었습니다.
  • 규칙 쿼리에 사용된 함수가 수정되었거나 제거되어 더 이상 유효하지 않습니다.
  • 규칙 쿼리의 데이터 원본 중 하나에 대한 권한이 변경되었습니다(예 참조).
  • 규칙 쿼리의 데이터 원본 중 하나가 삭제되었습니다.

동일한 유형 및 동일한 규칙에 대해 미리 정해진 수의 연속적인 영구적 오류가 발생하는 경우 Microsoft Sentinel은 규칙 실행 시도를 중지하고 다음 단계도 수행합니다.

  1. 규칙을 사용하지 않도록 설정합니다.
  2. 규칙 이름의 시작 부분에 "자동 사용 안 함"이라는 단어를 추가합니다.
  3. 규칙의 설명에 실패 이유(및 사용하지 않음)를 추가합니다.

규칙 목록을 이름별로 정렬하여 자동 사용 안 함 규칙이 있는지 간편하게 확인할 수 있습니다. 자동 사용 안 함 규칙은 목록의 맨 위 또는 그 근처에 표시됩니다.

SOC 관리자는 규칙 목록에서 자동 사용 안 함 규칙이 있는지 정기적으로 확인해야 합니다.

리소스 드레이닝으로 인한 영구적 실패

또 다른 종류의 영구적 실패는 규칙이 과도한 컴퓨팅 리소스를 사용하고 시스템에서 성능 드레이닝 위험을 일으키는 부적절하게 빌드된 쿼리로 인해 발생합니다. Microsoft Sentinel은 이러한 규칙을 식별할 때 다른 영구적인 장애의 유형에 대해 위에서 언급한 것과 동일한 세 단계를 수행합니다. 규칙을 사용하지 않도록 설정하고 규칙 이름 앞에 “AUTO DISABLED”를 추가하고 설명에 장애 이유를 추가합니다.

규칙을 다시 사용하도록 설정하려면 쿼리에서 너무 많은 리소스를 사용하는 문제를 해결해야 합니다. Kusto 쿼리를 최적화하는 모범 사례는 다음 문서를 참조하세요.

추가 지원은 Microsoft Sentinel에서 Kusto 쿼리 언어로 작업하기 위한 유용한 리소스를 참조하세요.

구독/테넌트 간 액세스 손실로 인한 영구적 실패

데이터 원본의 사용 권한 변경(목록 참조)으로 인해 영구 장애가 발생할 수 있는 한 가지 구체적인 예는 MSSP(Microsoft 보안 솔루션 공급자)의 경우 또는 구독 또는 테넌트에서 분석 규칙이 쿼리되는 기타 시나리오와 관련이 있습니다.

분석 규칙을 만들면 액세스 권한 토큰이 규칙에 적용되고 함께 저장됩니다. 이 토큰은 규칙이 규칙의 쿼리가 참조하는 테이블이 포함된 작업 영역에 액세스할 수 있도록 하며, 규칙 작성자가 해당 작업 영역에 대한 액세스 권한을 잃더라도 이 액세스 권한이 유지되도록 합니다.

그러나 한 가지 예외 상황이 있습니다. MSSP의 경우와 같이 다른 구독 또는 테넌트에서 작업 영역에 액세스하기 위한 규칙이 만들어지면 Microsoft Sentinel은 고객 데이터에 대한 무단 액세스를 방지하기 위해 추가 보안 조치를 취합니다. 이러한 종류의 규칙에는 독립적인 액세스 토큰 대신 규칙을 생성한 사용자의 자격 증명이 적용됩니다. 사용자가 더 이상 다른 테넌트에 액세스할 수 없게 되면 규칙이 작동을 중지합니다.

구독 간 또는 테넌트 간 시나리오에서 Microsoft Sentinel을 운영하는 경우 분석가 또는 엔지니어 중 한 명이 특정 작업 영역에 액세스할 수 없게 되면 해당 사용자가 만든 모든 규칙이 작동을 중지합니다. “리소스에 대한 액세스 권한 부족”에 대한 상태 모니터링 메시지가 표시되고 규칙은 이전에 설명한 절차에 따라 규칙이 자동으로 사용하지 않도록 설정됩니다.

다음 단계

자세한 내용은 다음을 참조하세요.

또한 사용자 지정 커넥터를 사용한 Zoom 모니터링 시 사용자 지정 분석 규칙을 사용하는 예제를 알아봅니다.