MITRE ATT&CK 대시보드 조회
지정한 기간과 필터 조건에 따라 MITRE ATT&CK 대시보드 데이터를 조회합니다.
필요 권한
사용자 이상의 계정으로 이용할 수 있습니다.
HTTP 요청
GET /api/sonar/mitre-attack/dashboard
cURL 예시
curl -H "Authorization: Bearer <API_KEY>" \
"https://HOSTNAME/api/sonar/mitre-attack/dashboard?from=2024-01-01+00:00:00%2B0900&to=2024-01-31+23:59:59%2B0900"
요청 매개변수
| 키 | 필수 | 타입 | 설명 | 비고 |
|---|---|---|---|---|
| from | X | 날짜 | 시작 일시 | yyyy-MM-dd HH:mm:ssZ 형식 |
| to | X | 날짜 | 끝 일시 | yyyy-MM-dd HH:mm:ssZ 형식 |
| addrs | X | 문자열 목록 | IP/CIDR 주소 | 쉼표(,)로 구분된 IP/CIDR 목록 |
| hosts | X | 문자열 목록 | 호스트 목록 | 쉼표(,)로 구분된 호스트 목록 |
정상 응답
{
"dashboard": {
"tactics": [
{
"mitre_id": "TA0001",
"name": "Initial Access",
"url": "https://attack.mitre.org/tactics/TA0001",
"order": 1,
"host_count": 5,
"event_count": 42,
"techniques_count": 2,
"techniques": [
{
"mitre_id": "T1190",
"name": "Exploit Public-Facing Application",
"display_name": "Exploit Public-Facing Application",
"url": "https://attack.mitre.org/techniques/T1190",
"host_count": 3,
"event_count": 18,
"last_seen": "2024-01-31 12:30:00+0900",
"blink": true
}
]
}
]
}
}
- dashboard (맵): 대시보드 데이터
- tactics (배열): 택틱별 탐지 현황 목록. 택틱 순서(
order) 오름차순으로 정렬됩니다.- mitre_id (문자열): MITRE ATT&CK 택틱 ID
- name (문자열): 택틱 이름
- url (문자열): MITRE ATT&CK 공식 문서 URL
- order (32비트 정수): 택틱 정렬 순서
- host_count (32비트 정수): 탐지된 호스트 수
- event_count (32비트 정수): 탐지된 이벤트 수
- techniques_count (32비트 정수): 택틱에 연관된 테크닉 수
- techniques (배열): 택틱에 속한 테크닉별 탐지 현황 목록. 호스트 수 내림차순으로 정렬됩니다.
- mitre_id (문자열): MITRE ATT&CK 테크닉 ID
- name (문자열): 테크닉 이름
- display_name (문자열): 테크닉 표시 이름. 상위 테크닉이 있으면 "상위 테크닉 이름: 이름" 형식입니다.
- url (문자열): MITRE ATT&CK 공식 문서 URL
- host_count (32비트 정수): 탐지된 호스트 수
- event_count (32비트 정수): 탐지된 이벤트 수
- last_seen (문자열): 마지막 탐지 시각. 탐지 이력이 없으면 null입니다.
- blink (불리언): 최근 탐지 발생으로 강조 표시할지 여부
- tactics (배열): 택틱별 탐지 현황 목록. 택틱 순서(
오류 응답
날짜 포맷이 잘못된 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "'from' parameter should be date format (yyyy-MM-dd HH:mm:ss+0000)"
}
addrs에 유효하지 않은 IP 주소가 포함된 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "invalid IP address: 999.999.999.999"
}
addrs에 유효하지 않은 CIDR 표기가 포함된 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "invalid IP address in CIDR notation: 999.999.999.999/24"
}
addrs에 CIDR 마스크가 0~32 범위를 벗어난 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "CIDR mask must be between 0 and 32: 10.0.0.0/33"
}