Az - Monitoring

Reading time: 5 minutes

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE) Azure 해킹 배우기 및 연습하기: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks 지원하기

Entra ID - Logs

Entra ID에서 사용할 수 있는 로그의 유형은 3가지입니다:

  • Sign-in Logs: Sign-in logs는 성공 여부에 관계없이 모든 인증 시도를 기록합니다. 이들은 IP 주소, 위치, 장치 정보 및 적용된 조건부 액세스 정책과 같은 세부 정보를 제공하며, 이는 사용자 활동을 모니터링하고 의심스러운 로그인 행동이나 잠재적인 보안 위협을 감지하는 데 필수적입니다.
  • Audit Logs: Audit logs는 Entra ID 환경 내에서 이루어진 모든 변경 사항의 기록을 제공합니다. 예를 들어 사용자, 그룹, 역할 또는 정책에 대한 업데이트를 캡처합니다. 이러한 로그는 누가 어떤 변경을 언제 했는지 검토할 수 있게 해주므로 준수 및 보안 조사에 중요합니다.
  • Provisioning Logs: Provisioning logs는 타사 서비스(예: 온프레미스 디렉토리 또는 SaaS 애플리케이션)를 통해 테넌트에 프로비저닝된 사용자에 대한 정보를 제공합니다. 이러한 로그는 신원 정보가 어떻게 동기화되는지 이해하는 데 도움이 됩니다.

warning

이러한 로그는 무료 버전에서 7일, P1/P2 버전에서 30일, 위험한 로그인 활동에 대한 보안 신호에서 추가로 60일 동안만 저장됩니다. 그러나 글로벌 관리자가 이들을 더 일찍 수정하거나 삭제할 수는 없습니다.

Entra ID - Log Systems

  • Diagnostic Settings: 진단 설정은 리소스에서 수집하려는 플랫폼 로그 및/또는 메트릭의 카테고리 목록과 이를 스트리밍할 하나 이상의 대상을 지정합니다. 대상에 대한 정상 사용 요금이 발생합니다. 다양한 로그 카테고리 및 해당 로그의 내용에 대해 자세히 알아보세요.
  • Destinations:
  • Analytics Workspace: Azure Log Analytics를 통한 조사 및 경고 생성.
  • Storage account: 정적 분석 및 백업.
  • Event hub: 외부 시스템(예: 타사 SIEM)으로 데이터 스트리밍.
  • Monitor partner solutions: Azure Monitor와 기타 비Microsoft 모니터링 플랫폼 간의 특별한 통합.
  • Workbooks: Workbooks는 텍스트, 로그 쿼리, 메트릭 및 매개변수를 결합하여 풍부한 대화형 보고서를 생성합니다.
  • Usage & Insights: Entra ID에서 가장 일반적인 활동을 확인하는 데 유용합니다.

Azure Monitor

Azure Monitor의 주요 기능은 다음과 같습니다:

  • Activity Logs: Azure Activity Logs는 구독 수준의 이벤트 및 관리 작업을 캡처하여 리소스에 대한 변경 사항 및 수행된 작업에 대한 개요를 제공합니다.
  • Activily logs는 수정하거나 삭제할 수 없습니다.
  • Change Analysis: Change Analysis는 Azure 리소스 전반에 걸쳐 구성 및 상태 변경을 자동으로 감지하고 시각화하여 문제를 진단하고 시간에 따른 수정 사항을 추적하는 데 도움을 줍니다.
  • Alerts: Azure Monitor의 경고는 Azure 환경에서 지정된 조건이나 임계값이 충족될 때 트리거되는 자동화된 알림입니다.
  • Workbooks: Workbooks는 Azure Monitor 내에서 다양한 출처의 데이터를 결합하고 시각화하여 포괄적인 분석을 가능하게 하는 대화형 맞춤형 대시보드입니다.
  • Investigator: Investigator는 로그 데이터 및 경고를 깊이 분석하고 사건의 원인을 식별하는 데 도움을 줍니다.
  • Insights: Insights는 분석, 성능 메트릭 및 실행 가능한 권장 사항(예: Application Insights 또는 VM Insights의 권장 사항)을 제공하여 애플리케이션 및 인프라의 건강과 효율성을 모니터링하고 최적화하는 데 도움을 줍니다.

Log Analytics Workspaces

Log Analytics 작업 공간은 Azure Monitor에서 Azure 리소스 및 온프레미스 환경의 로그 및 성능 데이터를 수집, 분석 및 시각화할 수 있는 중앙 저장소입니다. 주요 사항은 다음과 같습니다:

  • Centralized Data Storage: 진단 로그, 성능 메트릭 및 애플리케이션과 서비스에서 생성된 사용자 정의 로그를 저장하는 중앙 위치로 사용됩니다.
  • Powerful Query Capabilities: Kusto Query Language (KQL)를 사용하여 데이터를 분석하고 인사이트를 생성하며 문제를 해결하기 위해 쿼리를 실행할 수 있습니다.
  • Integration with Monitoring Tools: Log Analytics 작업 공간은 Azure Monitor, Azure Sentinel 및 Application Insights와 같은 다양한 Azure 서비스와 통합되어 대시보드를 생성하고 경고를 설정하며 환경에 대한 포괄적인 뷰를 얻을 수 있습니다.

요약하자면, Log Analytics 작업 공간은 Azure에서 고급 모니터링, 문제 해결 및 보안 분석에 필수적입니다.

리소스의 진단 설정에서 데이터를 분석 작업 공간으로 전송하도록 리소스를 구성할 수 있습니다.

Enumeration

Entra ID

bash
# Get last 10 sign-ins
az rest --method get --uri 'https://graph.microsoft.com/v1.0/auditLogs/signIns?$top=10'

# Get last 10 audit logs
az rest --method get --uri 'https://graph.microsoft.com/v1.0/auditLogs/directoryAudits?$top=10'

# Get last 10 provisioning logs
az rest --method get --uri ‘https://graph.microsoft.com/v1.0/auditLogs/provisioning?$top=10’

# Get EntraID Diagnostic Settings
az rest --method get --uri "https://management.azure.com/providers/microsoft.aadiam/diagnosticSettings?api-version=2017-04-01-preview"

# Get Entra ID Workbooks
az rest \
--method POST \
--url "https://management.azure.com/providers/microsoft.resourcegraph/resources?api-version=2021-03-01" \
--headers '{"commandName": "AppInsightsExtension.GetWorkbooksListArg"}' \
--body '{
"subscriptions": ["9291ff6e-6afb-430e-82a4-6f04b2d05c7f"],
"query": "where type =~ \"microsoft.insights/workbooks\" \n| extend sourceId = tostring(properties.sourceId) \n| where sourceId =~ \"Azure Active Directory\" \n| extend DisplayName = tostring(properties.displayName) \n| extend WorkbookType = tostring(properties.category), LastUpdate = todatetime(properties.timeModified) \n| where WorkbookType == \"workbook\"\n| project DisplayName, name, resourceGroup, kind, location, id, type, subscriptionId, tags, WorkbookType, LastUpdate, identity, properties",
"options": {"resultFormat": "table"},
"name": "e4774363-5160-4c09-9d71-2da6c8e3b00a"
}' | jq '.data.rows'

Azure Monitor

bash
# Get last 10 activity logs
az monitor activity-log list --max-events 10

# Get Resource Diagnostic Settings
az rest --url "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<res-group>/providers/Microsoft.DocumentDb/databaseAccounts/<db-name>/providers/microsoft.insights/diagnosticSettings?api-version=2021-05-01-preview"

# Get Entra ID Workbooks
az rest \
--method POST \
--url "https://management.azure.com/providers/microsoft.resourcegraph/resources?api-version=2021-03-01" \
--headers '{"commandName": "AppInsightsExtension.GetWorkbooksListArg"}' \
--body '{
"content": {},
"commandName": "AppInsightsExtension.GetWorkbooksListArg"
}'

# List Log Analytic groups
az monitor log-analytics workspace list --output table

# List alerts
az monitor metrics alert list --output table
az monitor activity-log alert list --output table

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE) Azure 해킹 배우기 및 연습하기: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks 지원하기