Microsoft 365 Defender 고급 헌팅 API
참고
Microsoft 365 Defender를 경험해 보고 싶으신가요? Microsoft 365 Defender 평가하고 파일럿하는 방법에 대해 자세히 알아보세요.
적용 대상:
- Microsoft 365 Defender
중요
일부 정보는 상용으로 출시되기 전에 실질적으로 수정될 수 있는 사전 릴리스된 제품과 관련이 있습니다. Microsoft는 여기에서 제공하는 정보와 관련하여 명시적이거나 묵시적인 어떠한 보증도 제공하지 않습니다.
고급 헌팅은 특별히 구성된 쿼리를 사용하여 지난 30일간의 Microsoft 365 Defender 이벤트 데이터를 검사하는 위협 헌팅 도구입니다. 고급 헌팅 쿼리를 사용하여 비정상적인 활동을 검사하고, 가능한 위협을 감지하고, 공격에 대응할 수도 있습니다. 고급 헌팅 API를 사용하면 프로그래밍 방식으로 이벤트 데이터를 쿼리할 수 있습니다.
할당량 및 리소스 할당
다음 조건은 모든 쿼리와 관련이 있습니다.
- 쿼리는 지난 30일 동안의 데이터를 탐색하고 반환합니다.
- 결과는 최대 100,000개의 행을 반환할 수 있습니다.
- 테넌트당 분당 최대 45건의 호출을 수행할 수 있습니다.
- 다음 15분 주기가 지날 때까지 테넌트가 100%에 도달하면 쿼리가 차단됩니다.
- 단일 요청이 10분 이상 실행되는 경우 시간이 초과되고 오류가 반환됩니다.
- HTTP 응답 코드는
429전송된 요청 수 또는 할당된 실행 시간으로 할당량에 도달했음을 나타냅니다. 응답 본문을 읽어 도달한 제한을 이해합니다.
참고
위에 나열된 모든 할당량(예: 분당 15개 호출)은 테넌트 전체입니다. 이러한 할당량은 최소입니다.
권한
고급 헌팅 API를 호출하려면 다음 권한 중 하나가 필요합니다. 사용 권한을 선택하는 방법을 포함하여 자세한 내용은 Microsoft 365 Defender 보호 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합니다.
응답 개체에는 다음 세 가지 최상위 속성이 포함됩니다.
- 통계 - 쿼리 성능 통계의 사전입니다.
- 스키마 - 응답의 스키마, 각 열에 대한 Name-Type 쌍의 목록입니다.
- 결과 - 고급 헌팅 이벤트 목록입니다.
예제
다음 예제에서 사용자는 아래 쿼리를 보내고 , 및 Results를 포함하는 API 응답 개체를 Stats``Schema받습니다.
쿼리
{
"Query":"DeviceProcessEvents | where InitiatingProcessFileName =~ \"powershell.exe\" | project Timestamp, FileName, InitiatingProcessFileName | order by Timestamp desc | limit 2"
}
응답 개체
{
"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"
}
]
}