Share via


마이크로 에이전트 이벤트 수집

Defender for IoT 보안 에이전트는 로컬 디바이스에서 데이터 및 시스템 이벤트를 수집하고 처리를 위해 데이터를 Azure 클라우드에 보냅니다.

Log Analytics 작업 영역을 구성하고 연결한 경우 Log Analytics에 이러한 이벤트가 표시됩니다. 자세한 내용은 자습서: 보안 경고 조사를 참조하세요.

Defender for IoT 마이크로 에이전트는 새 프로세스 및 모든 새 연결 이벤트를 포함하여 다양한 유형의 디바이스 이벤트를 수집합니다. 새 프로세스와 새 연결 이벤트는 디바이스에서 여러 번 발생할 수도 있습니다. 이 기능은 포괄적인 보안에 중요합니다. 그러나 보안 에이전트가 보내는 메시지 수가 IoT Hub 할당량 및 비용 제한을 빠르게 충족하거나 초과할 수 있습니다. 이러한 메시지와 이벤트에는 디바이스를 보호하는 데 매우 중요한 보안 정보가 포함됩니다.

디바이스의 보안을 유지하면서 메시지 수와 비용을 줄이기 위해 Defender for IoT 에이전트는 다음 유형의 이벤트를 집계합니다.

  • 이벤트 처리(Linux만 해당)

  • 네트워크 활동 이벤트

  • 파일 시스템 이벤트

  • 통계 이벤트

자세한 내용은 프로세스 및 네트워크 수집기에 대한 이벤트 집계를 참조하세요.

이벤트 기반 수집기는 디바이스 내에서 해당 작업을 기반으로 트리거되는 수집기입니다. 예: a process was started in the device.

트리거 기반 수집기는 고객의 구성에 따라 예약된 방식으로 트리거되는 수집기입니다.

프로세스 이벤트(이벤트 기반 수집기)

프로세스 이벤트는 Linux 운영 체제에서 지원됩니다.

명령줄userid가 동일할 때 프로세스 이벤트는 동일하다고 간주합니다.

프로세스 이벤트의 기본 버퍼는 256개 프로세스입니다. 이 제한에 도달하면 버퍼가 순환되고 가장 최근에 처리된 이벤트를 위한 공간을 만들기 위해 가장 오래된 프로세스 이벤트가 삭제됩니다. 캐시 크기를 늘리라는 경고가 기록됩니다.

각 이벤트에 대해 수집된 데이터는 다음과 같습니다.

매개 변수 설명
Timestamp 프로세스가 처음으로 관찰된 시간입니다.
process_id Linux PID입니다.
parent_process_id Linux 부모 PID입니다(있는 경우).
Commandline 명령줄
Type fork 또는 exec일 수 있습니다.
hit_count 집계 수입니다. 이벤트가 클라우드로 전송될 때까지 동일한 시간 프레임 동안 동일한 프로세스의 실행 수입니다.

네트워크 활동 이벤트(이벤트 기반 수집기)

네트워크 활동 이벤트는 로컬 포트, 원격 포트, 전송 프로토콜, 로컬 주소 및 원격 주소가 동일할 때 동일한 것으로 간주됩니다.

네트워크 활동 이벤트의 기본 버퍼는 256입니다. 캐시가 가득 찬 경우:

  • Eclipse ThreadX 디바이스: 다음 컬렉션 주기가 시작될 때까지 새 네트워크 이벤트가 캐시되지 않습니다.

  • Linux 디바이스: 가장 오래된 이벤트가 모든 새 이벤트로 대체됩니다. 캐시 크기를 늘리라는 경고가 기록됩니다.

Linux 디바이스의 경우 IPv4만 지원됩니다.

각 이벤트에 대해 수집된 데이터는 다음과 같습니다.

매개 변수 설명
로컬 주소 연결의 원본 주소입니다.
원격 주소 연결의 대상 주소입니다.
로컬 포트 연결의 원본 포트입니다.
원격 포트 연결의 대상 포트입니다.
Bytes_in 연결의 총 집계된 RX 바이트입니다.
Bytes_out 연결의 총 집계된 TX 바이트입니다.
Transport_protocol TCP, UDP 또는 ICMP일 수 있습니다.
애플리케이션 프로토콜 연결과 관련된 애플리케이션 프로토콜입니다.
확장 속성 연결의 추가 세부 정보입니다. 예: host name.
적중 횟수 관찰된 패킷 수

로그인 수집기(이벤트 기반 수집기)

로그인 수집기는 사용자 로그인, 로그아웃 및 실패한 로그인 시도를 수집합니다.

로그인 수집기는 다음 형식의 컬렉션 메서드를 지원합니다.

  • UTMP 및 SYSLOG. UTMP는 SSH 대화형 이벤트, 텔넷 이벤트 및 터미널 로그인은 물론 SSH, 텔넷 및 터미널에서 실패한 모든 로그인 이벤트를 catch합니다. 디바이스에서 SYSLOG가 사용하도록 설정된 경우 로그인 수집기는 auth.log라는 SYSLOG 파일을 통해 SSH 로그인 이벤트도 수집합니다.

  • PAM(Pluggable Authentication Module). SSH, 텔넷 및 로컬 로그인 이벤트를 수집합니다. 자세한 내용은 로그인 이벤트를 감사하도록 PAM(Pluggable Authentication Module) 구성을 참조하세요.

다음 데이터가 수집됩니다.

매개 변수 설명
작업 다음 중 하나입니다. Login, Logout, LoginFailed
process_id Linux PID입니다.
user_name Linux 사용자입니다.
executable 터미널 디바이스입니다. 예를 들어 tty1..6 또는 pts/n입니다.
remote_address 로컬 연결을 나타내는 연결 원본으로, IPv6 또는 IPv4 형식의 원격 IP 주소이거나 127.0.0.1/0.0.0.0입니다.

시스템 정보(트리거 기반 수집기)

각 이벤트에 대해 수집된 데이터는 다음과 같습니다.

매개 변수 설명
hardware_vendor 디바이스 공급업체의 이름입니다.
hardware_model 디바이스의 모델 번호입니다.
os_dist 운영 체제 배포입니다. 예: Linux.
os_version 운영 체제의 버전입니다. 예를 들면 Windows 10 또는 Ubuntu 20.04.1과 같습니다.
os_platform 디바이스의 OS입니다.
os_arch OS 아키텍처입니다. 예: x86_64.
agent_type 에이전트 유형(Edge/독립 실행형)입니다.
agent_version 에이전트의 버전입니다.
nics 네트워크 인터페이스 컨트롤러입니다. 전체 속성 목록은 아래에 나열되어 있습니다.

nics 속성은 다음으로 구성됩니다.

매개 변수 설명
type 다음 값 중 하나입니다. UNKNOWN, ETH, WIFI, MOBILE 또는 SATELLITE.
vlans 네트워크 인터페이스와 연결된 가상 LAN입니다.
공급업체 네트워크 컨트롤러 공급업체입니다.
info 네트워크 컨트롤러와 연결된 IP 및 MAC입니다. 여기에는 다음 필드가 포함됩니다.
- ipv4_address: IPv4 주소입니다.
- ipv6_address: IPv6 주소입니다.
- mac: MAC 주소입니다.

기준(트리거 기반 수집기)

기준 수집기가 주기적으로 CIS 검사를 수행하고 실패, 통과건너뛰기 검사 결과가 Defender for IoT 클라우드 서비스로 전송됩니다. Defender for IoT는 결과를 집계하고 오류를 기반으로 권장 사항을 제공합니다.

각 이벤트에 대해 수집된 데이터는 다음과 같습니다.

매개 변수 설명
검사 ID CIS 형식입니다. 예: CIS-debian-9-Filesystem-1.1.2.
검사 결과 Fail, Pass, Skip 또는 Error일 수 있습니다. 예를 들어, 검사를 실행할 수 없는 상황에서는 Error입니다.
오류 오류 정보 및 설명입니다.
설명 CIS의 검사에 대한 설명입니다.
수정 CIS의 수정 권장 사항입니다.
심각도 심각도 수준입니다.

SBoM(트리거 기반 수집기)

SBoM(소프트웨어 제품 구성 정보) 수집기는 디바이스에 설치된 패키지를 주기적으로 수집합니다.

각 패키지에서 수집되는 데이터는 다음과 같습니다.

매개 변수 Description
이름 패키지 이름입니다.
버전 패키지 버전입니다.
공급업체 Deb 패키지의 유지 관리자 필드인 패키지 공급업체

주변 장치 이벤트(이벤트 기반 수집기)

주변 장치 이벤트 수집기는 USB 및 이더넷 이벤트의 연결 및 연결 끊기를 수집합니다.

수집된 필드는 이벤트 유형에 따라 달라집니다.

USB 이벤트

매개 변수 설명
Timestamp 이벤트가 발생한 시간입니다.
ActionType 이벤트가 연결 또는 연결 끊기 이벤트인지 여부입니다.
bus_number 특정 컨트롤러 식별자로, 각 USB 디바이스에는 여러 가지가 있을 수 있습니다.
kernel_device_number 고유하지 않고 디바이스가 연결될 때마다 사용할 수 있는 디바이스의 커널 표현입니다.
device_class 디바이스 클래스를 지정하는 식별자입니다.
device_subclass 디바이스 유형을 지정하는 식별자입니다.
device_protocol 디바이스 프로토콜을 지정하는 식별자입니다.
interface_class 디바이스 클래스가 0인 경우 디바이스 유형을 나타냅니다.
interface_subclass 디바이스 클래스가 0인 경우 디바이스 유형을 나타냅니다.
interface_protocol 디바이스 클래스가 0인 경우 디바이스 유형을 나타냅니다.

이더넷 이벤트

매개 변수 설명
Timestamp 이벤트가 발생한 시간입니다.
ActionType 이벤트가 연결 또는 연결 끊기 이벤트인지 여부입니다.
bus_number 특정 컨트롤러 식별자로, 각 USB 디바이스에는 여러 가지가 있을 수 있습니다.
인터페이스 이름 인터페이스 이름입니다.

파일 시스템 이벤트(이벤트 기반 수집기)

파일 시스템 이벤트 수집기는 디렉터리 및 파일의 만들기, 삭제, 이동 및 수정과 같은 조사식 디렉터리에 변경 내용이 있을 때마다 이벤트를 수집합니다. 모니터링할 디렉터리와 파일을 정의하려면 시스템 정보 수집기 특정 설정을 참조하세요.

다음 데이터가 수집됩니다.

매개 변수 설명
Timestamp 이벤트가 발생한 시간입니다.
마스크 파일 시스템 이벤트와 관련된 Linux inotify 마스크, 마스크는 작업의 형식을 식별하며 Access/Modified/Metadata changed/Closed/Opened/Moved/Created/Deleted 중 하나일 수 있습니다.
Path 이벤트가 생성된 디렉터리/파일 경로입니다.
Hitcount 이 이벤트가 집계된 횟수입니다.

통계 데이터(트리거 기반 수집기)

통계 수집기는 다양한 마이크로 에이전트 수집기에서 다양한 통계를 생성합니다. 이러한 통계는 이전 컬렉션 주기에서 수집기의 성능에 대한 정보를 제공합니다. 가능한 통계의 예로는 성공적으로 전송된 이벤트 수와 삭제된 이벤트 수와 실패 이유가 있습니다.

수집된 필드:

매개 변수 설명
Timestamp 이벤트가 발생한 시간입니다.
이름 수집기의 이름입니다.
이벤트 설명 및 적중 횟수가 있는 JSON 형식의 쌍 배열입니다.
설명 메시지가 전송/삭제되었는지 여부 및 삭제 이유입니다.
Hitcount 각 메시지의 수입니다.

프로세스 및 네트워크 수집기에 대한 이벤트 집계

프로세스 이벤트네트워크 활동 이벤트에 대한 이벤트 집계 작동 방식:

Defender for IoT 에이전트는 Process_MessageFrequency 또는 NetworkActivity_MessageFrequency와 같은 각 수집기에 대한 메시지 빈도 구성에 정의된 전송 간격 동안 이벤트를 집계합니다. 보내기 간격이 지나면 에이전트는 추가 분석을 위해 집계된 이벤트를 Azure 클라우드로 보냅니다. 집계된 이벤트는 Azure 클라우드로 전송될 때까지 메모리에 저장됩니다.

에이전트의 메모리 공간을 줄이기 위해 에이전트는 이미 메모리에 저장된 이벤트와 유사한 이벤트를 수집할 때 에이전트는 이 특정 이벤트의 적중 횟수를 늘립니다. 집계 기간이 지나면 에이전트는 발생한 이벤트 유형 각각에 대한 적중 횟수를 보냅니다. 이벤트 집계는 유사한 이벤트의 적중 횟수에 대한 집계입니다. 예를 들어, 동일한 원격 호스트 및 동일한 포트에 대한 네트워크 활동은 각 패킷에 대한 별도의 이벤트가 아니라 하나의 이벤트로 집계됩니다.

참고 항목

기본적으로 마이크로 에이전트는 문제 해결 및 모니터링 목적으로 로그 및 원격 분석을 클라우드로 전송합니다. 이 동작은 쌍을 통해 구성하거나 해제할 수 있습니다.

다음 단계

자세한 내용은 다음을 참조하세요.