보안 분석가와 조사자는 보안 위협을 찾는 데 적극적으로 대처하려고 하지만 다양한 시스템 및 보안 어플라이언스는 의미 있는 이벤트로 구문 분석하고 필터링하기 어려울 수 있는 다양한 데이터를 생성합니다. Microsoft Sentinel organization 데이터 원본에서 보안 위협을 헌팅하는 강력한 헌팅 검색 및 쿼리 도구가 있습니다. 보안 분석가가 보안 앱이나 예약된 분석 규칙에 의해 검색되지 않는 새로운 변칙을 사전에 검색할 수 있도록 헌팅 쿼리를 통해 네트워크에 이미 있는 데이터에서 문제를 찾기 위한 올바른 질문을 할 수 있습니다.
예를 들어 기본 쿼리 중 하나는 인프라에서 실행되는 가장 드문 프로세스에 대한 데이터를 제공합니다. 실행할 때마다 경고를 원하지 않을 것입니다. 그들은 완전히 무죄가 될 수 있습니다. 하지만 경우에 따라 쿼리를 살펴보고 비정상적인 항목이 있는지 확인할 수 있습니다.
중요
2027년 3월 31일 이후에는 Microsoft Sentinel 더 이상 Azure Portal 지원되지 않으며 Microsoft Defender 포털에서만 사용할 수 있습니다. Azure Portal Microsoft Sentinel 사용하는 모든 고객은 Defender 포털로 리디렉션되고 Defender 포털에서만 Microsoft Sentinel 사용합니다.
Azure Portal Microsoft Sentinel 계속 사용하는 경우 원활한 전환을 보장하고 Microsoft Defender 제공하는 통합 보안 운영 환경을 최대한 활용하기 위해 Defender 포털로의 전환 계획을 시작하는 것이 좋습니다.
참고
Microsoft Sentinel 라이브 스트림을 더 오래 사용할 수 있습니다. 쿼리 및 알림을 자동화하려면 KQL 작업, 분석 규칙 또는 플레이북을 사용합니다. 이러한 대안은 지속적인 쿼리 결과와 다양한 메시징 플랫폼에 대한 지원을 제공합니다.
Microsoft Sentinel 헌팅(미리 보기)
Microsoft Sentinel 헌팅을 사용하면 가설을 만들고, 데이터를 검색하고, 가설의 유효성을 검사하고, 필요할 때 조치를 수행하여 검색되지 않은 위협 및 악의적인 동작을 검색합니다. 결과에 따라 새 분석 규칙, 위협 인텔리전스 및 인시던트 만들기
| 기능 | 설명 |
|---|---|
| 가설 정의 | 가설을 정의하려면 MITRE 맵, 최근 헌팅 쿼리 결과, 콘텐츠 허브 솔루션에서 영감을 찾거나 고유한 사용자 지정 헌팅을 생성합니다. |
| 쿼리 및 책갈피 결과 조사 | 가설을 정의한 후 헌팅 페이지 쿼리 탭으로 이동합니다. 가설 및 새 헌 팅과 관련된 쿼리를 선택하여 시작합니다. 헌트 관련 쿼리를 실행하고 로그 환경을 사용하여 결과를 조사합니다. 결과를 검색에 직접 책갈피로 표시하여 결과에 주석을 달고, 엔터티 식별자를 추출하고, 관련 쿼리를 유지합니다. |
| 조사 및 조치 수행 | UEBA 엔터티 페이지를 사용하여 더 자세히 조사합니다. 책갈피가 지정된 엔터티에서 엔터티별 플레이북을 실행합니다. 기본 제공 작업을 사용하여 결과에 따라 새 분석 규칙, 위협 지표 및 인시던트 만들기 |
| 결과 추적 | 사냥 결과를 기록합니다. 가설의 유효성이 검사되었는지 여부를 추적합니다. 메모에 자세한 메모를 남겨 둡니다. 헌팅은 새 분석 규칙 및 인시던트에 자동으로 연결됩니다. 메트릭 막대를 사용하여 헌팅 프로그램의 전반적인 영향을 추적합니다. |
시작하려면 Microsoft Sentinel 엔드 투 엔드 사전 위협 헌팅 수행을 참조하세요.
헌팅 쿼리
Defender의 Microsoft Sentinel 위협 관리>헌팅, 쿼리 탭을 차례로 선택하여 모든 쿼리 또는 선택한 하위 집합을 실행합니다. 쿼리 탭에는 콘텐츠 허브의 보안 솔루션과 함께 설치된 모든 헌팅 쿼리와 사용자가 만들거나 수정한 추가 쿼리가 나열됩니다. 각 쿼리는 검색 대상 및 실행되는 데이터의 종류에 대한 설명을 제공합니다. 이러한 쿼리는 MITRE ATT&CK 전술로 그룹 화됩니다. 위쪽의 아이콘은 초기 액세스, 지속성 및 반출과 같은 위협 유형을 분류합니다. MITRE ATT&CK 기술은기술 열에 표시되며 헌팅 쿼리로 식별되는 특정 동작을 설명합니다.
쿼리 탭을 사용하여 24시간 동안의 결과 수, 급증 또는 결과 수 변경을 확인하여 헌팅을 시작할 위치를 식별합니다. 즐겨찾기, 데이터 원본, MITRE ATT&CK 전술 또는 기술, 결과, 결과 델타 또는 결과 델타 백분율을 기준으로 정렬 및 필터링합니다. 여전히 연결된 데이터 원본이 필요한 쿼리를 보고 이러한 쿼리를 사용하도록 설정하는 방법에 대한 권장 사항을 가져옵니다.
다음 표에서는 헌팅 dashboard 사용할 수 있는 자세한 작업을 설명합니다.
| 작업 | 설명 |
|---|---|
| 쿼리가 사용자 환경에 적용되는 방식 확인 |
모든 쿼리 실행 단추를 선택하거나 각 행의 왼쪽에 있는 검사 상자를 사용하여 쿼리의 하위 집합을 선택하고 선택한 쿼리 실행 단추를 선택합니다. 쿼리를 실행하는 데는 선택한 쿼리 수, 시간 범위 및 쿼리되는 데이터의 양에 따라 몇 초에서 몇 분 정도 걸릴 수 있습니다. |
| 결과를 반환한 쿼리 보기 | 쿼리 실행이 완료되면 결과 필터를 사용하여 결과를 반환한 쿼리를 확인합니다. - 정렬하여 결과가 가장 적거나 가장 적은 쿼리를 확인합니다. - 결과 필터에서 N/A를 선택하여 환경에서 전혀 활성화되지 않은 쿼리를 봅니다. - N/A 옆에 있는 정보 아이콘(i)을 마우스로 가리키면 이 쿼리를 활성화하는 데 필요한 데이터 원본을 확인합니다. |
| 데이터의 급증 식별 |
결과 델타 또는 결과 델타 백분율을 정렬하거나 필터링하여 데이터의 급증을 식별합니다. 지난 24시간의 결과를 이전 24-48시간의 결과와 비교하여 큰 차이 또는 볼륨의 상대적 차이를 강조 표시합니다. |
| MITRE ATT&CK 전술에 매핑된 쿼리 보기 | 테이블 맨 위에 있는 MITRE ATT&CK 전술 막대에는 각 MITRE ATT&CK 전술에 매핑되는 쿼리 수를 나열합니다. 전술 표시줄은 현재 적용된 필터 집합에 따라 동적으로 업데이트됩니다. 지정된 결과 수, 높은 결과 델타, N/A 결과 또는 기타 필터 집합을 기준으로 필터링할 때 어떤 MITRE ATT&CK 전술이 표시되는지 확인할 수 있습니다. |
| MITRE ATT&CK 기술에 매핑된 쿼리 보기 | 쿼리는 MITRE ATT&CK 기술에 매핑할 수도 있습니다. 기술 필터를 사용하여 MITRE ATT&CK 기술을 기준으로 필터링하거나 정렬할 수 있습니다. 쿼리를 열면 기술을 선택하여 기술에 대한 MITRE ATT&CK 설명을 볼 수 있습니다. |
| 즐겨찾기에 쿼리 저장 | 즐겨찾기에 저장된 쿼리는 헌팅 페이지에 액세스할 때마다 자동으로 실행됩니다. 고유한 헌팅 쿼리를 만들거나 기존 헌팅 쿼리 템플릿을 복제하고 사용자 지정할 수 있습니다. |
| 쿼리 실행 | 헌팅 쿼리 세부 정보 페이지에서 쿼리 실행을 선택하여 헌팅 페이지에서 직접 쿼리를 실행합니다. 일치 항목 수는 결과 열의 테이블 내에 표시됩니다. 헌팅 쿼리 및 해당 일치 항목 목록을 검토합니다. |
| 기본 쿼리 검토 | 쿼리 세부 정보 창에서 기본 쿼리를 빠르게 검토합니다. 쿼리 결과 보기 링크(쿼리 창 아래) 또는 결과 보기 단추(창 아래쪽)를 클릭하여 결과를 볼 수 있습니다. 쿼리는 로그(Log Analytics ) 페이지를 열고 쿼리 아래에서 쿼리에 대한 일치 항목을 검토할 수 있습니다. |
손상 전, 도중 및 후에 쿼리를 사용하여 다음 작업을 수행합니다.
인시던트가 발생하기 전에: 검색 대기만으로는 충분하지 않습니다. 일주일에 한 번 이상 작업 영역에 수집하는 데이터와 관련된 위협 헌팅 쿼리를 실행하여 사전 조치를 취합니다.
사전 헌팅의 결과는 손상이 진행 중임을 확인하거나 적어도 위험에 처해 있고 주의가 필요한 환경에서 약한 영역을 표시할 수 있는 이벤트에 대한 초기 인사이트를 제공합니다.
손상 시: 이벤트를 적극적으로 모니터링하여 위협 행위자의 다음 작업을 확인하고, 적절한 사용자에게 알림을 보내고, 진행 중인 공격을 중지하기 위한 조치를 취합니다.
- KQL 작업을 사용하여 공격자 동작을 모니터링하고 Microsoft Sentinel 데이터 레이크에서 쿼리 결과를 유지합니다.
- Security Copilot, Jupyter Notebook, 고급 헌팅 및 KQL 쿼리와 같은 도구를 사용하여 지속형 결과를 분석합니다.
- Teams, 이메일 및 기타 메시징 플랫폼에 알림을 보냅니다.
손상 후: 손상 또는 인시던트가 발생한 후 향후 유사한 인시던트를 방지하기 위해 적용 범위 및 인사이트를 개선해야 합니다.
손상 또는 인시던트에서 얻은 인사이트를 기반으로 기존 쿼리를 수정하거나 새 쿼리를 만들어 조기 검색을 지원합니다.
가능한 공격에 대한 높은 가치의 인사이트를 제공하는 헌팅 쿼리를 검색하거나 만든 경우 해당 쿼리를 기반으로 사용자 지정 검색 규칙을 만들고 이러한 인사이트를 보안 인시던트 응답자에게 경고로 표시합니다.
쿼리 결과를 보고 새 경고 규칙>Microsoft Sentinel 경고 만들기를 선택합니다. 분석 규칙 마법사를 사용하여 쿼리에 따라 새 규칙을 만듭니다. 자세한 내용은 위협을 감지하는 사용자 지정 분석 규칙 만들기를 참조하세요.
결과를 내보내 고 향상된 SOC 협업을 위한 특정 사례에 연결합니다.
Azure Data Explorer 저장된 데이터에 대해 헌팅 쿼리를 만들 수도 있습니다. 자세한 내용은 Azure Monitor 설명서에서 리소스 간 쿼리를 생성하는 방법에 대한 세부 정보를 참조하세요.
더 많은 쿼리 및 데이터 원본을 찾으려면 Microsoft Sentinel 콘텐츠 허브로 이동하거나 Microsoft Sentinel GitHub 리포지토리와 같은 커뮤니티 리소스를 참조하세요.
기본 헌팅 쿼리
많은 보안 솔루션에는 기본 헌팅 쿼리가 포함됩니다. 콘텐츠 허브에서 헌팅 쿼리를 포함하는 솔루션을 설치한 후 해당 솔루션에 대한 기본 쿼리는 헌팅 쿼리 탭에 표시됩니다. 쿼리는 프로세스 만들기, DNS 이벤트 또는 기타 이벤트 유형과 같이 로그 테이블에 저장된 데이터에서 실행됩니다.
사용 가능한 많은 헌팅 쿼리는 Microsoft 보안 연구원이 지속적으로 개발합니다. 보안 솔루션에 새 쿼리를 추가하고 기존 쿼리를 미세 조정하여 새로운 검색 및 공격을 찾는 진입점을 제공합니다.
사용자 지정 헌팅 쿼리
쿼리를 만들거나 편집하고 사용자 고유의 쿼리로 저장하거나 동일한 테넌트에서 사용자와 공유합니다. Microsoft Sentinel 헌팅 쿼리 탭에서 사용자 지정 헌팅>쿼리를 만듭니다.
자세한 내용은 Microsoft Sentinel 사용자 지정 헌팅 쿼리 만들기를 참조하세요.
데이터를 추적하는 책갈피
위협 헌팅은 일반적으로 악의적인 동작의 증거를 찾는 로그 데이터의 산을 검토해야 합니다. 이 과정에서 조사자는 잠재적 가설의 유효성을 검사하고 타협의 전체 이야기를 이해하는 과정에서 기억하고, 다시 방문하고, 분석하려는 이벤트를 찾습니다.
헌팅 및 조사 프로세스 중에 비정상적이거나 의심스러운 쿼리 결과가 나타날 수 있습니다. 조사를 위해 인시던트를 만들거나 보강하는 경우와 같이 나중에 해당 항목을 다시 참조하도록 책갈피를 지정합니다. 잠재적 근본 원인, 손상 지표 또는 기타 주목할 만한 이벤트와 같은 이벤트를 책갈피로 발생시켜야 합니다. 책갈피를 지정한 주요 이벤트가 조사를 보증할 만큼 심각한 경우 인시던트로 에스컬레이션합니다.
결과에서 보존하려는 행의 확인란을 표시하고 책갈피 추가를 선택합니다. 그러면 행 결과와 결과를 만든 쿼리가 포함된 각 표시된 행에 대한 레코드인 책갈피가 만들어집니다. 각 책갈피에 고유한 태그와 노트를 추가할 수 있습니다.
- 예약된 분석 규칙과 마찬가지로 엔터티 매핑을 사용하여 책갈피를 보강하여 여러 엔터티 형식 및 식별자를 추출하고 MITRE ATT&CK 매핑을 통해 특정 전술과 기술을 연결할 수 있습니다.
- 책갈피는 기본적으로 책갈피가 지정된 결과를 생성한 헌팅 쿼리와 동일한 엔터티 및 MITRE ATT&CK 기술 매핑을 사용합니다.
기본 헌팅 페이지의 책갈피 탭을 클릭하여 책갈피가 지정된 모든 결과를 봅니다. 책갈피에 태그를 추가하여 필터링을 위해 분류합니다. 예를 들어 공격 캠페인을 조사하는 경우 캠페인에 대한 태그를 만들고, 관련 책갈피에 태그를 적용한 다음, 캠페인에 따라 모든 책갈피를 필터링할 수 있습니다.
책갈피를 선택한 다음 세부 정보 창에서 조사를 클릭하여 조사 환경을 열어 책갈피가 지정된 단일 찾기를 조사합니다. 대화형 엔터티 그래프 다이어그램 및 타임라인 사용하여 결과를 보고 조사하고 시각적으로 전달합니다. 나열된 엔터티를 직접 선택하여 해당 엔터티의 해당 엔터티 페이지를 볼 수도 있습니다.
하나 이상의 책갈피에서 인시던트를 만들거나 하나 이상의 책갈피를 기존 인시던트에 추가할 수도 있습니다. 사용하려는 책갈피 왼쪽에 있는 확인란을 선택한 다음, 인시던트 작업 새 인시던>트 만들기 또는 기존인시던트에 추가를 선택합니다. 다른 인시던트와 마찬가지로 인시던트 심사 및 조사
Log Analytics 작업 영역의 HuntingBookmark 테이블에서 책갈피 가 지정된 데이터를 직접 봅니다. 예시:
테이블에서 책갈피를 보면 책갈피가 지정된 데이터를 필터링, 요약 및 다른 데이터 원본과 조인할 수 있으므로 증거를 쉽게 찾을 수 있습니다.
책갈피 사용을 시작하려면 Microsoft Sentinel 사용하여 헌팅하는 동안 데이터 추적을 참조하세요.
전원 조사에 대한 Notebook
헌팅 및 조사가 더 복잡해지면 Microsoft Sentinel Notebook을 사용하여 기계 학습, 시각화 및 데이터 분석을 사용하여 활동을 향상시킵니다.
Notebook은 전체 조사를 수행할 수 있는 자체 커널이 포함된 일종의 가상 샌드박스를 제공합니다. Notebook에는 원시 데이터, 해당 데이터에서 실행하는 코드, 결과 및 시각화가 포함될 수 있습니다. 전자 필기장을 다른 사용자와 공유하여 organization 재사용할 수 있도록 전자 필기장을 저장합니다.
Notebook은 헌팅 또는 조사가 너무 커져서 쉽게 기억하거나, 세부 정보를 보거나, 쿼리와 결과를 저장해야 하는 경우에 유용할 수 있습니다. Notebook을 만들고 공유할 수 있도록 Microsoft Sentinel Microsoft Sentinel Notebook 페이지에 직접 통합된 오픈 소스, 대화형 개발 및 데이터 조작 환경인 JupyterNotebook을 제공합니다.
자세한 내용은 다음 항목을 참조하세요.
- Jupyter Notebook 사용하여 보안 위협 찾기
- Jupyter 프로젝트 설명서
- Jupyter 소개 설명서.
- The Infosec Jupyter Book
- 실제 Python 자습서
다음 표에서는 Jupyter Notebook을 사용하여 Microsoft Sentinel 프로세스를 돕는 몇 가지 방법을 설명합니다.
| 방법 | 설명 |
|---|---|
| 데이터 지속성, 반복성 및 역추적 | 많은 쿼리 및 결과 집합으로 작업하는 경우 몇 가지 막다른 골목이 있을 수 있습니다. 유지할 쿼리 및 결과와 단일 보고서에서 유용한 결과를 누적하는 방법을 결정해야 합니다. Jupyter Notebook을 사용하여 쿼리 및 데이터를 저장하고, 변수를 사용하여 다른 값이나 날짜가 있는 쿼리를 다시 실행하거나, 쿼리를 저장하여 향후 조사를 다시 실행합니다. |
| 스크립팅 및 프로그래밍 | Jupyter Notebook을 사용하여 다음을 포함하여 쿼리에 프로그래밍을 추가합니다. - 논리를 복잡한 단일 문으로 인코딩하기 위한 Kusto 쿼리 언어(KQL) 또는 SQL과 같은 선언적 언어입니다. - 일련의 단계에서 논리를 실행하기 위한 절차적 프로그래밍 언어입니다. 논리를 단계로 분할하여 중간 결과를 보고 디버그하고, 쿼리 언어에서 사용할 수 없는 기능을 추가하고, 이후 처리 단계에서 부분 결과를 다시 사용할 수 있습니다. |
| 외부 데이터에 대한 링크 | Microsoft Sentinel 테이블에는 대부분의 원격 분석 및 이벤트 데이터가 있지만 Jupyter Notebook은 네트워크 또는 파일을 통해 액세스할 수 있는 모든 데이터에 연결할 수 있습니다. Jupyter Notebook을 사용하면 다음과 같은 데이터를 포함할 수 있습니다. - 지리적 위치 데이터 또는 위협 인텔리전스 원본과 같이 소유하지 않은 외부 서비스의 데이터 - 인적 자원 데이터베이스 또는 고부가가치 자산 목록과 같이 organization 내에만 저장되는 중요한 데이터 - 아직 클라우드로 마이그레이션하지 않은 데이터입니다. |
| 특수 데이터 처리, 기계 학습 및 시각화 도구 | Jupyter Notebook은 더 많은 시각화, 기계 학습 라이브러리 및 데이터 처리 및 변환 기능을 제공합니다. 예를 들어 다음 Python 기능과 함께 Jupyter Notebook을 사용합니다. - 데이터 처리, 정리 및 엔지니어링을 위한 pandas - 시각화를 위한 Matplotlib, HoloViews 및 Plotly - 고급 숫자 및 과학적 처리를 위한 NumPy 및 SciPy - 기계 학습을 위한 scikit-learn - 딥 러닝을 위한 TensorFlow, PyTorch 및 Keras 팁: Jupyter Notebook은 여러 언어 커널을 지원합니다. 매직을 사용하여 다른 언어를 사용하여 개별 셀을 실행할 수 있도록 하여 동일한 Notebook 내에서 언어를 혼합합니다. 예를 들어 PowerShell 스크립트 셀을 사용하여 데이터를 검색하고, Python에서 데이터를 처리하고, JavaScript를 사용하여 시각화를 렌더링할 수 있습니다. |
MSTIC, Jupyter 및 Python 보안 도구
MSTIC(Microsoft Threat Intelligence Center)는 여러 Microsoft 플랫폼에 대한 보안 검색을 작성하고 위협 식별 및 조사에 작업하는 Microsoft 보안 분석가 및 엔지니어로 구성된 팀입니다.
MSTIC는 Jupyter Notebooks에서 정보 보안 조사 및 헌팅을 위한 라이브러리인 MSTICPy를 빌드했습니다. MSTICPy는 전자 필기장 만들기 속도를 높이고 사용자가 Microsoft Sentinel 전자 필기장을 더 쉽게 읽을 수 있도록 하는 재사용 가능한 기능을 제공합니다.
예를 들어 MSTICPy는 다음을 수행할 수 있습니다.
- 여러 원본의 로그 데이터를 쿼리합니다.
- 위협 인텔리전스, 지리적 위치 및 Azure 리소스 데이터를 사용하여 데이터를 보강합니다.
- 로그에서 IoA(활동 표시기)를 추출하고 인코딩된 데이터의 압축을 풉니다.
- 비정상적인 세션 검색 및 시계열 분해와 같은 정교한 분석을 수행합니다.
- 대화형 타임라인, 프로세스 트리 및 다차원 모핑 차트를 사용하여 데이터를 시각화합니다.
MSTICPy에는 쿼리 시간 경계를 설정하고, 목록에서 항목을 선택 및 표시하고, Notebook 환경을 구성하는 위젯과 같은 몇 가지 시간 절약형 Notebook 도구도 포함되어 있습니다.
자세한 내용은 다음 항목을 참조하세요.
- MSTICPy 설명서
- Microsoft Sentinel 헌팅 기능이 있는 Jupyter Notebook
- Microsoft Sentinel Jupyter Notebook 및 MSTICPy에 대한 고급 구성
유용한 연산자 및 함수
헌팅 쿼리는 IntelliSense 언어를 사용하는 강력한 쿼리 언어인 KQL(Kusto 쿼리 언어)을 기반으로 하며, 이를 통해 헌팅을 다음 단계로 끌어올리는 데 필요한 성능과 유연성을 제공합니다.
분석 규칙 및 Microsoft Sentinel 다른 곳에서 쿼리에서 사용하는 것과 동일한 언어입니다. 자세한 내용은 쿼리 언어 참조를 참조하세요.
다음 연산자는 헌팅 쿼리를 Microsoft Sentinel 특히 유용합니다.
where - 조건자를 충족하는 행의 하위 집합으로 테이블을 필터링합니다.
summarize - 입력 테이블의 내용을 집계하는 테이블을 생성합니다.
join - 두 테이블의 행을 병합하여 각 테이블의 지정된 열 값을 일치시켜 새 테이블을 형성합니다.
count - 입력 레코드 집합의 레코드 수를 반환합니다.
top - 지정된 열을 기준으로 정렬된 첫 번째 N 레코드를 반환합니다.
limit - 지정된 행 수까지 반환합니다.
project - 포함할 열을 선택하고 이름을 바꾸거나 삭제하고 새 계산 열을 삽입합니다.
extend - 계산 열을 만들고 결과 집합에 추가합니다.
makeset - Expr이 그룹에 사용하는 고유 값 집합의 동적(JSON) 배열을 반환합니다.
find - 테이블 집합에서 조건자와 일치하는 행을 찾습니다.
adx() - 이 함수는 Microsoft Sentinel 헌팅 환경 및 Log Analytics에서 Azure Data Explorer 데이터 원본의 리소스 간 쿼리를 수행합니다. 자세한 내용은 Azure Monitor를 사용하여 리소스 간 쿼리 Azure Data Explorer 참조하세요.
관련 문서
- Microsoft Sentinel 헌팅 기능이 있는 Jupyter Notebook
- Microsoft Sentinel 사용하여 헌팅하는 동안 데이터 추적
- 사용자 지정 커넥터를 사용하여 Zoom을 모니터링할 때 사용자 지정 분석 규칙을 사용하는 예제에서 알아봅니다.