Azure 활동 로그 위협 분석은(는) 무엇을 하나요?
사용 시점
- Azure 활동 로그에서 위협을 분석해야 하는 보안 침해 사고 조사 시
- 이 도메인에 대한 탐지 규칙 또는 위협 헌팅 쿼리를 구축할 때
- SOC 분석가가 이 분석 유형에 대한 구조화된 절차가 필요할 때
- 관련 공격 기법에 대한 보안 모니터링 범위를 검증할 때
사전 요구 사항
- 보안 운영 개념 및 도구에 대한熟悉성
- 안전한 실행을 위한 테스트 또는 실습 환경 접근 권한
- Python 3.8+ 및 필요한 종속성 설치
- 모든 테스트 활동에 대한 적절한 권한
지침
azure-monitor-query를 사용하여 Azure Log Analytics 작업 영역에 대해 KQL 쿼리를 실행하고, 의심스러운 관리자 작업 및 로그인 이상 징후를 탐지합니다.
from azure.identity import DefaultAzureCredential
from azure.monitor.query import LogsQueryClient
from datetime import timedelta
credential = DefaultAzureCredential()
client = LogsQueryClient(credential)
response = client.query_workspace(
workspace_id="WORKSPACE_ID",
query="AzureActivity | where OperationNameValue has 'MICROSOFT.AUTHORIZATION/ROLEASSIGNMENTS/WRITE' | take 10",
timespan=timedelta(hours=24),
)
주요 탐지 쿼리:
- 역할 할당 변경 (권한 상승)
- 리소스 그룹 및 구독 수정
- 새 IP에서의 Key Vault 비밀 액세스
- 네트워크 보안 그룹 규칙 변경
- 조건부 액세스 정책 수정
예제
# 새 Global Admin 역할 할당 탐지
query = '''
AuditLogs
| where OperationName == "Add member to role"
| where TargetResources[0].modifiedProperties[0].newValue has "Global Administrator"
'''