고급 헌팅 API Microsoft Defender XDR

적용 대상:

  • Microsoft Defender XDR

경고

이 고급 헌팅 API는 기능이 제한된 이전 버전입니다. 고급 헌팅 API의 보다 포괄적인 버전은 이미 Microsoft Graph 보안 API에서 사용할 수 있습니다. Microsoft Graph 보안 API를 사용한 고급 헌팅을 참조하세요.

중요

일부 정보는 상용으로 출시되기 전에 실질적으로 수정될 수 있는 사전 릴리스된 제품과 관련이 있습니다. Microsoft는 여기에서 제공하는 정보와 관련하여 명시적이거나 묵시적인 어떠한 보증도 제공하지 않습니다.

고급 헌팅은 특별히 구성된 쿼리를 사용하여 Microsoft Defender XDR 지난 30일간의 이벤트 데이터를 검사하는 위협 헌팅 도구입니다. 고급 헌팅 쿼리를 사용하여 비정상적인 활동을 검사하고, 가능한 위협을 감지하고, 공격에 대응할 수도 있습니다. 고급 헌팅 API를 사용하면 프로그래밍 방식으로 이벤트 데이터를 쿼리할 수 있습니다.

할당량 및 리소스 할당

다음 조건은 모든 쿼리와 관련이 있습니다.

  1. 쿼리는 지난 30일 동안의 데이터를 탐색하고 반환합니다.
  2. 결과는 최대 100,000개의 행을 반환할 수 있습니다.
  3. 테넌트당 분당 최대 45개 이상의 호출을 수행할 수 있습니다. 호출 수는 크기에 따라 테넌트마다 다릅니다.
  4. 각 테넌트는 테넌트 크기에 따라 CPU 리소스를 할당합니다. 테넌트가 다음 15분 주기 이후까지 할당된 리소스의 100%에 도달하면 쿼리가 차단됩니다. 과도한 사용으로 인해 차단된 쿼리를 방지하려면 CPU 할당량에 도달하지 않도록 쿼리 최적화의 지침을 따르세요.
  5. 단일 요청이 3분 이상 실행되면 시간 초과되고 오류가 반환됩니다.
  6. 429 HTTP 응답 코드는 전송된 요청 수 또는 할당된 실행 시간으로 할당된 CPU 리소스에 도달했음을 나타냅니다. 응답 본문을 읽고 도달한 제한을 이해합니다.

권한

고급 헌팅 API를 호출하려면 다음 권한 중 하나가 필요합니다. 사용 권한을 선택하는 방법을 포함하여 자세한 내용은 Microsoft Defender XDR 보호 API 액세스를 참조하세요.

사용 권한 유형 사용 권한 사용 권한 표시 이름
응용 프로그램 AdvancedHunting.Read.All 고급 쿼리 실행
위임됨(회사 또는 학교 계정) AdvancedHunting.Read 고급 쿼리 실행

참고

사용자 자격 증명을 사용하여 토큰을 가져오는 경우:

  • 사용자에게 '데이터 보기' 역할이 있어야 합니다.
  • 사용자는 디바이스 그룹 설정에 따라 디바이스에 액세스할 수 있어야 합니다.

HTTP 요청

POST https://api.security.microsoft.com/api/advancedhunting/run

요청 헤더

헤더
권한 부여 전달자 {token} 참고: 필수
Content-Type application/json

요청 본문

요청 본문에서 JSON 개체에 다음 매개 변수를 제공합니다.

매개 변수 형식 설명
쿼리 텍스트 실행할 쿼리입니다. (필수)

응답

성공하면 이 메서드는 응답 본문에 및 QueryResponse 개체를 반환200 OK합니다.

응답 개체에는 다음과 같은 세 가지 최상위 속성이 포함됩니다.

  1. 통계 - 쿼리 성능 통계의 사전입니다.
  2. 스키마 - 응답의 스키마, 각 열에 대한 Name-Type 쌍 목록입니다.
  3. 결과 - 고급 헌팅 이벤트 목록입니다.

예제

다음 예제에서 사용자는 아래 쿼리를 보내고 , SchemaResults를 포함하는 API 응답 개체를 Stats받습니다.

쿼리

{
    "Query":"DeviceProcessEvents | where InitiatingProcessFileName =~ \"powershell.exe\" | project Timestamp, FileName, InitiatingProcessFileName | order by Timestamp desc | limit 2"
}

Response 개체

{
    "Stats": {
        "ExecutionTime": 4.621215,
        "resource_usage": {
            "cache": {
                "memory": {
                    "hits": 773461,
                    "misses": 4481,
                    "total": 777942
                },
                "disk": {
                    "hits": 994,
                    "misses": 197,
                    "total": 1191
                }
            },
            "cpu": {
                "user": "00:00:19.0468750",
                "kernel": "00:00:00.0156250",
                "total cpu": "00:00:19.0625000"
            },
            "memory": {
                "peak_per_node": 236822432
            }
        },
        "dataset_statistics": [
            {
                "table_row_count": 2,
                "table_size": 102
            }
        ]
    },
    "Schema": [
        {
            "Name": "Timestamp",
            "Type": "DateTime"
        },
        {
            "Name": "FileName",
            "Type": "String"
        },
        {
            "Name": "InitiatingProcessFileName",
            "Type": "String"
        }
    ],
    "Results": [
        {
            "Timestamp": "2020-08-30T06:38:35.7664356Z",
            "FileName": "conhost.exe",
            "InitiatingProcessFileName": "powershell.exe"
        },
        {
            "Timestamp": "2020-08-30T06:38:30.5163363Z",
            "FileName": "conhost.exe",
            "InitiatingProcessFileName": "powershell.exe"
        }
    ]
}

더 자세히 알아보고 싶으신가요? 기술 커뮤니티: Microsoft Defender XDR Tech Community의 Microsoft 보안 커뮤니티와 Engage.