다음을 통해 공유


트래픽 분석 스키마 및 데이터 집계

트래픽 분석은 클라우드 네트워크의 사용자 및 애플리케이션 작업에 대한 가시성을 제공하는 클라우드 기반 솔루션입니다. 트래픽 분석은 Azure Network Watcher 흐름 로그를 분석하여 Azure 클라우드의 트래픽 흐름에 대한 인사이트를 제공합니다. 트래픽 분석을 사용하면 다음과 같은 작업을 수행할 수 있습니다.

  • Azure 구독에서 이루어지는 네트워크 작업을 시각화하고 핫스폿을 식별합니다.
  • 개방형 포트, 인터넷 액세스를 시도하는 애플리케이션, 불량 네트워크에 연결하는 VM(가상 머신) 같은 정보를 통해 보안 위협을 식별하고 네트워크를 보호합니다.
  • Azure 지역 및 인터넷의 트래픽 흐름 패턴을 파악하여 네트워크 성능 및 용량에 맞게 네트워크 배포를 최적화합니다.
  • 네트워크에서 연결 실패의 원인이 되는 네트워크 구성 오류를 정확히 파악합니다.
  • 네트워크 사용량(바이트, 패킷 또는 흐름)을 파악합니다.

데이터 집계

  • FlowIntervalStartTimeFlowIntervalEndTime 사이의 모든 흐름 로그는 스토리지 계정의 BLOB으로 1분 간격으로 캡처됩니다.
  • 트래픽 분석의 기본 처리 간격은 60분입니다. 즉, 매시간 트래픽 분석은 집계를 위해 스토리지 계정에서 BLOB을 선택합니다. 그러나 처리 간격이 10분인 경우 트래픽 분석은 대신 10분마다 스토리지 계정에서 BLOB을 선택합니다.
  • 동일한 Source IP, Destination IP, Destination port, NSG name, NSG rule, Flow DirectionTransport layer protocol (TCP or UDP)가 있는 흐름은 트래픽 분석을 통해 단일 흐름으로 연결됩니다(참고: 집계를 위해 원본 포트는 제외됨).
  • 이 단일 레코드는 트래픽 분석을 통해 Azure Monitor 로그에 데코레이팅되고(아래 섹션의 세부 정보) 수집됩니다. 이 프로세스는 최대 1시간까지 걸릴 수 있습니다.
  • FlowStartTime 필드는 FlowIntervalStartTimeFlowIntervalEndTime 사이의 흐름 로그 처리 간격에서 이러한 집계 흐름(동일한 4튜플)이 처음 발생했음을 나타냅니다.
  • 트래픽 분석의 모든 리소스에 대해 Azure Portal에 표시된 흐름은 보여지는 총 흐름이지만 Azure Monitor 로그에서 사용자는 축소된 단일 레코드만 볼 수 있습니다. 모든 흐름을 보려면 스토리지에서 참조할 수 있는 blob_id 필드를 사용합니다. 해당 레코드의 총 흐름 수는 BLOB에 있는 개별 흐름과 일치합니다.

다음 쿼리는 지난 30일 동안 Azure가 아닌 공용 IP와 상호 작용한 모든 서브넷을 확인하는 데 도움이 됩니다.

NTANetAnalytics
| where SubType == "FlowLog" and FlowStartTime >= ago(30d) and FlowType == "ExternalPublic"
| project SrcSubnet, DestSubnet

트래픽 분석 스키마

트래픽 분석은 Azure Monitor 로그 위에 빌드되었으므로 트래픽 분석을 통해 데코레이트된 데이터에 대해 사용자 지정 쿼리를 실행하고 경고를 설정할 수 있습니다.

다음 표에는 스키마의 필드와 가상 네트워크 흐름 로그에 대한 의미가 나열되어 있습니다. 자세한 내용은 NTANetAnalytics를 참조하세요.

필드 형식 주석
테이블 이름 NTANet분석 트래픽 분석 데이터에 대한 표입니다.
하위 유형 플로우로그 흐름 로그의 하위 유형. FlowLog만 사용하고 SubType의 다른 값은 내부용입니다.
FASchemaVersion 3 스키마 버전. 가상 네트워크 흐름 로그 버전을 반영하지 않습니다.
처리 시간 날짜 및 시간(UTC) 트래픽 분석이 스토리지 계정의 원시 흐름 로그를 처리한 시간입니다.
플로우인터벌스타트타임 날짜 및 시간(UTC) 흐름 로그 처리 간격의 시작 시간(흐름 간격이 측정되는 시간)입니다.
플로우 인터벌 엔드 타임 날짜 및 시간(UTC) 흐름 로그 처리 간격의 종료 시간입니다.
플로우스타트타임 날짜 및 시간(UTC) FlowIntervalStartTimeFlowIntervalEndTime 사이의 흐름 로그 처리 간격에서 흐름의 처음 발생입니다(집계됨). 이 흐름은 집계 논리에 따라 집계됩니다.
플로우 종료 시간 날짜 및 시간(UTC) FlowIntervalStartTimeFlowIntervalEndTime 사이의 흐름 로그 처리 간격에서 흐름의 마지막 발생입니다(집계됨).
플로우타입 - 인트라VNet
- 인터VNet
- S2에스
- P2S
- Azure퍼블릭
- ExternalPublic
- MaliciousFlow
- 알 수 없는 프라이빗
- 알 수 없음
정의에 대한 참고를 참조하세요.
srcIp 원본 IP 주소 AzurePublic 및 ExternalPublic 흐름에서 비어 있습니다.
DestIp 대상 IP 주소 AzurePublic 및 ExternalPublic 흐름에서 비어 있습니다.
TargetResourceId 리소스그룹이름/리소스이름 흐름 로깅 및 트래픽 분석을 사용하는 리소스의 ID입니다.
대상 자원 유형 가상 네트워크/서브넷/네트워크 인터페이스 흐름 로깅 및 트래픽 분석을 사용하는 리소스 유형(가상 네트워크, 서브넷, NIC 또는 네트워크 보안 그룹)입니다.
플로우로그리소스ID 리소스그룹이름/네트워크감시자이름/흐름로그이름 흐름 로그의 리소스 ID입니다.
데스트포트 대상 포트 트래픽이 들어오는 포트입니다.
L4프로토콜 - T
- U
전송 프로토콜. T = TCP
U = UDP
L7프로토콜 프로토콜 이름 대상 포트에서 파생됩니다.
플로우 방향 - I = 인바운드
- O = 아웃바운드
흐름 방향: 흐름 로그당 대상 리소스 내부/외부.
플로우 상태 - A = 허용됨
- D = 거부됨
흐름 상태: 흐름 로그당 대상 리소스에서 허용되거나 거부됩니다.
AclList <SubscriptionID>/<resourcegroup_Name>/<NSG_Name> 흐름과 연결된 네트워크 보안 그룹입니다.
AclRule NSG_Rule_Name 흐름을 허용하거나 거부한 네트워크 보안 그룹 규칙입니다.
MAC 주소 MAC 주소 흐름이 캡처된 NIC의 MAC 주소입니다.
SrcSubscription 구독 ID 흐름의 원본 IP가 속한 가상 네트워크/네트워크 인터페이스/가상 머신의 구독 ID입니다.
DestSubscription 구독 ID 흐름의 대상 IP가 속한 가상 네트워크/네트워크 인터페이스/가상 머신의 구독 ID입니다.
SrcRegion Azure 지역 흐름의 원본 IP가 속한 가상 네트워크/네트워크 인터페이스/가상 머신의 Azure 지역입니다.
DestRegion Azure 지역 흐름의 대상 IP가 속한 가상 네트워크의 Azure 지역입니다.
SrcNic <resourcegroup_Name>/<NetworkInterfaceName> 흐름의 원본 IP와 연결된 NIC입니다.
데스트닉 <resourcegroup_Name>/<NetworkInterfaceName> 흐름의 대상 IP와 연결된 NIC입니다.
SrcVm <resourcegroup_Name>/<VirtualMachineName> 흐름의 원본 IP와 연결된 가상 머신입니다.
데스트VM <resourcegroup_Name>/<VirtualMachineName> 흐름의 대상 IP와 연결된 가상 머신입니다.
SrcSubnet <ResourceGroup_Name>/<VirtualNetwork_Name>/<서브넷 이름> 흐름의 원본 IP와 연결된 서브넷입니다.
DestSubnet <ResourceGroup_Name>/<VirtualNetwork_Name>/<서브넷 이름> 흐름의 대상 IP와 연결된 서브넷입니다.
srcApplicationGateway <SubscriptionID>/<ResourceGroupName>/<ApplicationGatewayName> 흐름의 원본 IP와 연결된 애플리케이션 게이트웨이입니다.
DestApplicationGateway <SubscriptionID>/<ResourceGroupName>/<ApplicationGatewayName> 흐름의 대상 IP와 연결된 애플리케이션 게이트웨이입니다.
SrcExpressRouteCircuit <SubscriptionID>/<ResourceGroupName>/<ExpressRouteCircuitName> ExpressRoute 회로 ID - 흐름이 ExpressRoute를 통해 사이트에서 전송되는 경우입니다.
DestExpressRouteCircuit <SubscriptionID>/<ResourceGroupName>/<ExpressRouteCircuitName> ExpressRoute 회로 ID - ExpressRoute에서 클라우드에서 흐름을 수신하는 경우입니다.
ExpressRouteCircuitPeeringType - AzurePrivatePeering
- AzurePublicPeering
- 마이크로소프트 피어링
흐름에 관련된 ExpressRoute 피어링 유형입니다.
SrcLoadBalancer <SubscriptionID>/<ResourceGroupName>/<LoadBalancerName> 흐름의 원본 IP와 연결된 부하 분산 장치입니다.
DestLoadBalancer <SubscriptionID>/<ResourceGroupName>/<LoadBalancerName> 흐름의 대상 IP와 연결된 부하 분산 장치입니다.
SrcLocalNetworkGateway <SubscriptionID>/<ResourceGroupName>/<LocalNetworkGatewayName> 흐름의 원본 IP와 연결된 로컬 네트워크 게이트웨이입니다.
DestLocalNetworkGateway <SubscriptionID>/<ResourceGroupName>/<LocalNetworkGatewayName> 흐름의 대상 IP와 연결된 로컬 네트워크 게이트웨이입니다.
ConnectionType - VNetPeering
- VPN게이트웨이
- 익스프레스라우트
연결 형식입니다.
연결 이름 <SubscriptionID>/<ResourceGroupName>/<ConnectionName> 연결 이름입니다. 흐름 유형 P2S의 경우 <GatewayName>_<VPNClientIP>로 형식이 지정됩니다.
VNet 연결하기 공백으로 구분된 가상 네트워크 이름 목록입니다. 허브 및 스포크 토폴로지에서 허브 가상 네트워크가 여기에 채워집니다.
국가 두 자로 된 국가 번호(ISO 3166-1 alpha-2) 흐름 유형이 ExternalPublic인 경우에 채워집니다. PublicIPs 필드의 모든 IP 주소는 동일한 국가 번호를 공유합니다.
AzureRegion Azure 지역 위치 흐름 유형이 AzurePublic인 경우에 채워집니다. PublicIPs 필드의 모든 IP 주소는 Azure 지역을 공유합니다.
AllowedInFlows - 허용된 인바운드 흐름의 수이며, 흐름이 캡처된 네트워크 인터페이스로 인바운드되는 동일한 4튜플을 공유한 흐름 수를 나타냅니다.
DeniedInFlows - 거부된 인바운드 흐름 수 (흐름이 캡처된 네트워크 인터페이스로 인바운드됨).
AllowedOutFlows - 허용된 아웃바운드 흐름 수입니다(흐름이 캡처된 네트워크 인터페이스로 아웃바운드됨).
DeniedOutFlows - 거부된 아웃바운드 흐름 수입니다(흐름이 캡처된 네트워크 인터페이스로 아웃바운드됨).
PacketsDestToSrc - 대상에서 흐름의 원본으로 전송된 패킷을 나타냅니다.
PacketsSrcToDest - 원본에서 흐름의 대상으로 전송된 패킷을 나타냅니다.
BytesDestToSrc - 대상에서 흐름의 원본으로 전송된 바이트를 나타냅니다.
BytesSrcToDest - 원본에서 흐름의 대상으로 전송된 바이트를 나타냅니다.
완료된 흐름 - 완료된 총 흐름 수(흐름이 완료된 이벤트를 가져오면 0이 아닌 값으로 채워짐)
SrcPublicIPs <SOURCE_PUBLIC_IP>|<FLOW_STARTED_COUNT>|<FLOW_ENDED_COUNT>|<OUTBOUND_PACKETS>|<INBOUND_PACKETS>|<OUTBOUND_BYTES>|<INBOUND_BYTES> 막대로 구분된 항목입니다.
DestPublicIP <DESTINATION_PUBLIC_IP>|<FLOW_STARTED_COUNT>|<FLOW_ENDED_COUNT>|<OUTBOUND_PACKETS>|<INBOUND_PACKETS>|<OUTBOUND_BYTES>|<INBOUND_BYTES> 막대로 구분된 항목입니다.
플로우 암호화 - 암호화된
- 암호화되지 않은
- 지원되지 않는 하드웨어
- 소프트웨어가 준비되지 않음
- 암호화가 없어서 삭제
- 검색이 지원되지 않음
- 동일한 호스트의 대상
- 암호화되지 않음으로 대체합니다.
흐름의 암호화 수준입니다.
PrivateEndpointResourceId <리소스 그룹/프라이빗 엔드포인트 리소스> 프라이빗 엔드포인트 리소스의 리소스 ID입니다. 트래픽이 프라이빗 엔드포인트 리소스로 들어오거나 나갈 때 채워집니다.
PrivateLinkResourceId <ResourceGroup/ResourceType/privateLinkResource> 프라이빗 링크 서비스의 리소스 ID입니다. 트래픽이 프라이빗 엔드포인트 리소스로 들어오거나 나갈 때 채워집니다.
PrivateLinkResourceName 일반 텍스트 프라이빗 링크 서비스의 리소스 이름입니다. 트래픽이 프라이빗 엔드포인트 리소스로 들어오거나 나갈 때 채워집니다.
IsFlowCapturedAtUDRHop - 참
- 거짓
흐름이 UDR 홉에서 캡처된 경우 값은 True입니다.

참고

가상 네트워크 흐름 로그의 NTANetAnalytics는 네트워크 보안 그룹 흐름 로그에 사용되는 AzureNetworkAnalytics_CL을 바꿉니다.

공용 IP 세부 정보 스키마

트래픽 분석은 사용자 환경의 모든 공용 IP에 대한 WHOIS 데이터 및 지리적 위치를 제공합니다. 악성 IP의 경우, 트래픽 분석은 Microsoft 보안 인텔리전스 솔루션에서 식별한 DNS 도메인, 위협 유형, 스레드 설명을 제공합니다. IP 세부 정보는 사용자 지정 쿼리를 생성하고 경고를 표시할 수 있도록 Log Analytics 작업 영역에 게시됩니다. 트래픽 분석 대시보드에서 미리 채워진 쿼리에 액세스할 수도 있습니다.

다음 표에서는 공용 IP 스키마에 대해 자세히 설명합니다. 자세한 내용은 NTAIpDetails를 참조하세요.

필드 형식 주석
테이블 이름 NTAIp세부사항 트래픽 분석 IP 세부 정보 데이터가 포함된 표입니다.
하위 유형 플로우로그 흐름 로그의 하위 유형. FlowLog만 사용합니다. SubType의 다른 값은 제품의 내부 작업용입니다.
FASchemaVersion 2 스키마 버전. 가상 네트워크 흐름 로그 버전을 반영하지 않습니다.
플로우인터벌스타트타임 날짜 및 시간(UTC) 흐름 로그 처리 간격의 시작 시간(흐름 간격이 측정되는 시간)입니다.
플로우 인터벌 엔드 타임 날짜 및 시간(UTC) 흐름 로그 처리 간격의 종료 시간입니다.
플로우타입 - Azure퍼블릭
- ExternalPublic
- MaliciousFlow
정의에 대한 참고를 참조하세요.
IP 공용 IP 레코드에 정보가 제공되는 공용 IP입니다.
PublicIP세부 정보 IP에 대한 정보 AzurePublic IP의 경우: IP를 소유하는 Azure 서비스 또는 IP 168.63.129.16에 대한 Microsoft 가상 공용 IP입니다.
ExternalPublic/악성 IP: IP의 WhoIS 정보입니다.
위협 유형 악성 IP로 인한 위협 악성 IP에만 해당합니다. 현재 허용되는 값 목록의 위협 중 하나입니다. 자세한 내용은 참고를 참조하세요.
DNS도메인 DNS 도메인 악성 IP에만 해당합니다. 이 IP와 연결된 도메인 이름입니다.
위협 설명 위협에 대한 설명 악성 IP에만 해당합니다. 악성 IP에 의해 제기되는 위협에 대한 설명입니다.
위치 IP의 위치 Azure 공용 IP의 경우: IP가 속한 가상 네트워크/네트워크 인터페이스/가상 머신의 Azure 지역 또는 IP 168.63.129.16에 대한 글로벌
외부 공용 IP 및 악성 IP의 경우: IP가 있는 두 자로 된 국가 번호(ISO 3166-1 alpha-2)입니다.
Url 악성 IP에 해당하는 URL 악성 IP에만 해당합니다.
포트 악성 IP에 해당하는 포트 악성 IP에만 해당합니다.

참고

  • 가상 네트워크 흐름 로그의 NTAIPDetails는 네트워크 보안 그룹 흐름 로그에 사용되는 AzureNetworkAnalyticsIPDetails_CL을 바꿉니다.

  • 트래픽 분석은 악의적인 흐름에 대해 IP에 연결된 모든 악성 FQDN을 기록할 수 있습니다. 필터링하려면 필요에 따라 포트, URL, 도메인 필드를 사용합니다.

위협 유형

다음 표에서는 트래픽 분석 IP 세부 정보 스키마의 ThreatType 필드에 대해 현재 허용되는 값을 나열합니다.

설명
봇네트 봇넷 노드/멤버를 자세히 설명하는 표시기입니다.
C2 봇넷의 명령 및 제어 노드를 자세히 설명하는 표시기입니다.
크립토마이닝 이 네트워크 주소/URL과 관련된 트래픽은 CyrptoMining/리소스 남용을 나타냅니다.
다크넷 Darknet 노드/네트워크의 표시기입니다.
디도스 공격(Distributed Denial of Service Attack) 활성 또는 예정된 DDoS 캠페인과 관련된 지표입니다.
악성 URL 맬웨어를 처리하는 URL입니다.
맬웨어 악성 파일을 설명하는 표시기입니다.
피싱 피싱 캠페인과 관련된 표시기입니다.
Proxy 프록시 서비스의 표시기입니다.
푸아(PUA) 사용자 동의 없이 설치된 애플리케이션.
WatchList 위협이 무엇인지 정확하게 확인할 수 없거나 수동 해석이 필요한 경우 표시기가 배치되는 일반 버킷입니다. WatchList는 일반적으로 데이터를 시스템으로 전송하는 파트너가 사용하지 않아야 합니다.

메모

  • AzurePublicExternalPublic 흐름의 경우 고객 소유의 Azure 가상 머신 IP는 VMIP_s 필드에 채워지고 공용 IP 주소는 PublicIPs_s 필드에 채워집니다. 이러한 두 흐름 형식의 경우 SrcIP_sDestIP_s 필드 대신 VMIP_sPublicIPs_s 필드를 사용해야 합니다. AzurePublic 및 ExternalPublic IP 주소의 경우 Log Analytics 작업 영역에 수집된 레코드 수가 최소화되도록 추가로 집계합니다. (이 필드는 더 이상 사용되지 않습니다. 가상 머신이 흐름의 원본인지 대상인지에 따라 SrcIP_s 및 DestIP_s를 사용합니다).
  • 일부 필드 이름은 원본 및 대상을 의미하지는 않지만 각각 데이터 형식 문자열10진수를 나타내는 _s 또는 _d와 함께 추가됩니다.
  • 흐름과 관련된 IP 주소를 기준으로 흐름은 다음과 같은 흐름 유형으로 분류됩니다.
    • IntraVNet: IntraVNet – 흐름의 IP 주소가 모두 동일한 Azure Virtual Network에 상주합니다.
    • InterVNet: InterVNet - 흐름의 IP 주소가 서로 다른 두 개의 Azure Virtual Network에 상주합니다.
    • S2S(사이트 간): IP 주소 중 하나는 Azure Virtual Network에 속하지만 다른 IP 주소는 VPN Gateway 또는 ExpressRoute를 통해 Virtual Network에 연결된 고객 네트워크(사이트)에 속합니다.
    • P2S(지점 및 사이트 간): IP 주소 중 하나는 Azure Virtual Network에 속하지만 다른 IP 주소는 VPN Gateway를 통해 Azure Virtual Network에 연결된 고객 네트워크(사이트)에 속합니다.
    • AzurePublic: IP 주소 중 하나는 Azure Virtual Network에 속하지만 다른 IP 주소는 Microsoft가 소유한 Azure 공용 IP 주소입니다. 고객 소유 공용 IP 주소는 이 흐름 유형의 일부가 아닙니다. 예를 들어 Azure 서비스(스토리지 엔드포인트)로 트래픽을 전송하는 고객 소유 VM은 이 흐름 유형으로 분류됩니다.
    • ExternalPublic: IP 주소 중 하나는 Azure Virtual Network에 속하지만 다른 IP 주소는 Microsoft가 소유하지 않거나 고객 소유 구독의 일부가 트래픽 분석에 표시되지 않으며 트래픽 분석이 FlowIntervalStartTime_tFlowIntervalEndTime_t사이의 처리 간격에 사용하는 ASC 피드에서 악의적인 것으로 보고되지 않는 공용 IP입니다.
    • MaliciousFlow: IP 주소 중 하나는 Azure Virtual Network에 속하지만 다른 IP 주소는 Microsoft가 소유하지 않거나 일부가 트래픽 분석에 표시되지 않으며 트래픽 분석이 FlowIntervalStartTime_tFlowIntervalEndTime_t 사이의 처리 간격에 사용하는 ASC 피드에서 악성으로 보고되지 않는 공용 IP입니다.
    • UnknownPrivate: IP 주소 중 하나는 Azure Virtual Network에 속하지만 다른 IP 주소는 RFC 1918에 정의된 대로 개인 IP 범위에 속하며 트래픽 분석을 통해 고객 소유 사이트 또는 Azure Virtual Network에 매핑할 수 없습니다.
    • Unknown: 흐름의 IP 주소 중 하나를 Azure의 고객 토폴로지 및 온-프레미스(사이트)와 매핑할 수 없습니다.

참고

구독은 해당 작업 영역에 구성된 흐름 로그가 포함된 경우 Log Analytics 작업 영역의 트래픽 분석에 표시됩니다.