Wazuh 로그 수집

다음에서 지원:

개요

이 Wazuh 파서는 SYSLOG 및 JSON 형식 로그를 처리하고 필드를 공통 형식으로 정규화하며 Wazuh별 메타데이터로 보강합니다. 그런 다음 event_typerule_id 필드를 기반으로 일련의 조건문을 사용하여 원시 로그 데이터를 적절한 UDM 이벤트 유형 및 필드에 매핑하여 Wazuh 생태계 내에서 다양한 로그 형식과 특이 사례를 처리합니다.

시작하기 전에

  • Google SecOps 인스턴스가 있는지 확인합니다.
  • 활성 Wazuh 인스턴스가 있는지 확인합니다.
  • Wazuh 구성 파일에 대한 권한이 있는지 확인합니다.

Wazuh 로그를 수집하도록 Google SecOps에서 피드 구성

  1. SIEM 설정 > 피드로 이동합니다.
  2. 새로 추가를 클릭합니다.
  3. 피드 이름 필드에 피드 이름을 입력합니다 (예: Wazuh Logs).
  4. 소스 유형으로 Webhook을 선택합니다.
  5. 로그 유형으로 Wazuh를 선택합니다.
  6. 다음을 클릭합니다.
  7. 선택사항: 다음 입력 매개변수의 값을 지정합니다.
    • 분할 구분 기호: 로그 줄을 구분하는 데 사용되는 구분 기호입니다(예: \n).
    • 애셋 네임스페이스: 애셋 네임스페이스입니다.
    • 수집 라벨: 이 피드의 이벤트에 적용된 라벨입니다.
  8. 다음을 클릭합니다.
  9. 확정 화면에서 피드 구성을 검토한 다음 제출을 클릭합니다.
  10. 보안 비밀 키 생성을 클릭하여 이 피드를 인증하기 위한 보안 비밀 키를 생성합니다.
  11. 비밀 키를 복사하여 저장합니다. 이 보안 비밀 키는 다시 볼 수 없습니다. 필요한 경우 새 보안 비밀 키를 재생성할 수 있지만 이 작업을 하면 이전 보안 비밀 키는 더 이상 사용할 수 없게 됩니다.
  12. 세부정보 탭의 엔드포인트 정보 필드에서 피드 엔드포인트 URL을 복사합니다. 클라이언트 애플리케이션에서 이 엔드포인트 URL을 지정해야 합니다.
  13. 완료를 클릭합니다.

웹훅 피드에 대한 API 키 만들기

  1. Google Cloud 콘솔 > 사용자 인증 정보로 이동합니다.

    사용자 인증 정보로 이동

  2. 사용자 인증 정보 만들기를 클릭한 후 API 키를 선택합니다.

  3. Google Security Operations API에 대한 API 키 액세스를 제한합니다.

엔드포인트 URL 지정

  1. 클라이언트 애플리케이션에서 웹훅 피드에 제공된 HTTPS 엔드포인트 URL을 지정합니다.
  2. 다음 형식의 커스텀 헤더의 일부로 API 키와 보안 비밀 키를 지정하여 인증을 사용 설정합니다.

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    권장사항: URL에 API 키를 지정하는 대신 헤더로 지정하세요. 웹훅 클라이언트가 커스텀 헤더를 지원하지 않는 경우 다음 형식의 쿼리 매개변수를 사용하여 API 키와 보안 비밀 키를 지정할 수 있습니다.

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

다음을 바꿉니다.

  • ENDPOINT_URL: 피드 엔드포인트 URL입니다.
  • API_KEY: Google Security Operations에 인증하기 위한 API 키입니다.
  • SECRET: 피드를 인증하기 위해 생성한 보안 비밀 키입니다.

Wazuh Cloud Webhook 구성

Wazuh Cloud Webhook을 구성하려면 다음 단계를 완료하세요.

  1. Wazuh Cloud에 로그인합니다.
  2. 왼쪽 창 메뉴의 서버 관리 아래에 있는 설정으로 이동합니다.
  3. 구성 수정을 클릭합니다.
  4. 구성의 <integration> 섹션 내에 다음 통합 블록을 추가합니다.

    • 섹션이 없는 경우 <integration>를 사용하여 전체 블록을 복사하여 섹션을 만듭니다.
    • 자리표시자 값을 실제 Google SecOps 세부정보로 바꿉니다.
<integration>
  <name>google-chronicle</name>
  <hook_url>https://<CHRONICLE_REGION>-chronicle.googleapis.com/v1alpha/projects/<GOOGLE_PROJECT_NUMBER>/locations/<LOCATION>/instances/<CUSTOMER_ID>/feeds/<FEED_ID>:importPushLogs?key=<API_KEY>&secret=<SECRET></hook_url>
  <alert_format>json</alert_format>
  <level>0</level>  <!-- Adjust the level as needed -->
</integration>
  • CHRONICLE_REGION: Google SecOps 리전 (예: us, europe-west1)입니다.
  • GOOGLE_PROJECT_NUMBER: Google Cloud 프로젝트 번호입니다.
  • LOCATION: Google SecOps 리전 (예: us, europe-west1)입니다.
  • CUSTOMER_ID: Google SecOps 고객 ID입니다.
  • FEED_ID: Google SecOps 피드의 ID입니다.
  • API_KEY: Google SecOps를 호스팅하는 Google Cloud의 API 키입니다.
  • SECRET: Google SecOps 피드의 비밀입니다.
  • alert_format: Google SecOps 호환성을 위해 json로 설정합니다.
  • level: 전달할 최소 알림 수준을 지정합니다. 0는 모든 알림을 전송합니다.
  1. 저장 버튼을 클릭합니다.
  2. wazuh-manager 다시 시작을 클릭합니다.

Wazuh 온프레미스 웹훅 구성

Wazuh 온프레미스 웹훅을 구성하려면 다음 단계를 완료하세요.

  1. 온프레미스 Wazuh 관리자에 액세스합니다.
  2. /var/ossec/etc/ 디렉터리로 이동합니다.
  3. 텍스트 편집기 (예: nano, vim)를 사용하여 ossec.conf 파일을 엽니다.
  4. 구성의 <integration> 섹션 내에 다음 통합 블록을 추가합니다.

    • 섹션이 없는 경우 <integration>를 사용하여 전체 블록을 복사하여 섹션을 만듭니다.
    • 자리표시자 값을 실제 Google SecOps 세부정보로 바꿉니다.
    <integration>
       <name>google-chronicle</name>
       <hook_url>https://<CHRONICLE_REGION>-chronicle.googleapis.com/v1alpha/projects/<GOOGLE_PROJECT_NUMBER>/locations/<LOCATION>/instances/<CUSTOMER_ID>/feeds/<FEED_ID>:importPushLogs?key=<API_KEY>&secret=<SECRET></hook_url>
       <alert_format>json</alert_format>
       <level>0</level>  <!-- Adjust the level as needed -->
    </integration>
    
    • CHRONICLE_REGION: Google SecOps 리전 (예: us, europe-west1)입니다.
    • GOOGLE_PROJECT_NUMBER: Google Cloud 프로젝트 번호입니다.
    • LOCATION: Google SecOps 리전 (예: us, europe-west1)입니다.
    • CUSTOMER_ID: Google SecOps 고객 ID입니다.
    • FEED_ID: Google SecOps 피드의 ID입니다.
    • API_KEY: Google SecOps를 호스팅하는 Google Cloud의 API 키입니다.
    • SECRET: Google SecOps 피드의 비밀입니다.
    • alert_format: Google SecOps 호환성을 위해 json로 설정합니다.
    • level: 전달할 최소 알림 수준을 지정합니다. 0는 모든 알림을 전송합니다.
  5. Wazuh 관리자를 다시 시작하여 변경사항을 적용합니다.

    sudo systemctl restart wazuh-manager
    

UDM 매핑 표

로그 필드 UDM 매핑 논리
Acct-Authentic event.idm.read_only_udm.security_result.authentication_mechanism Acct-Authentic 필드에서 직접 매핑됩니다.
Acct-Status-Type event.idm.read_only_udm.security_result.detection_fields[].value Acct-Status-Type 필드에서 직접 매핑됩니다. 키가 'Acct-Status-Type'으로 설정됩니다.
agent.id event.idm.read_only_udm.intermediary.resource.id agent.id 필드에서 직접 매핑됩니다.
agent.ip event.idm.read_only_udm.intermediary.ip, event.idm.read_only_udm.intermediary.asset.ip, event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip, event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip agent.ip 필드에서 직접 매핑됩니다. 이벤트 유형에 따라 일부 경우 사용자/타겟 IP에도 사용됩니다.
agent.name event.idm.read_only_udm.security_result.about.hostname agent.name 필드에서 직접 매핑됩니다.
application event.idm.read_only_udm.target.application Wazuh application 필드에서 직접 매핑됩니다.
audit-session-id event.idm.read_only_udm.network.session_id audit-session-id 필드에서 직접 매핑됩니다.
ClientIP event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip ClientIP 필드에서 직접 매핑됩니다.
ClientPort event.idm.read_only_udm.principal.port ClientPort 필드에서 직접 매핑되고 정수로 변환됩니다.
cmd event.idm.read_only_udm.target.process.command_line cmd 필드에서 직접 매핑됩니다.
CommandLine event.idm.read_only_udm.target.process.command_line CommandLine 필드에서 직접 매핑됩니다.
ConfigVersionId event.idm.read_only_udm.additional.fields[].value.number_value ConfigVersionId 필드에서 직접 매핑됩니다. 키가 'Config Version Id'(구성 버전 ID)로 설정됩니다.
data.Account Number event.idm.read_only_udm.principal.user.userid 특정 규칙 ID의 data.Account Number 필드에서 직접 매핑됩니다.
data.Control event.idm.read_only_udm.security_result.action_details 특정 규칙 ID의 data.Control 필드에서 직접 매핑됩니다.
data.Message event.idm.read_only_udm.security_result.description 특정 규칙 ID의 data.Message 필드에서 직접 매핑됩니다.
data.Profile event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname 특정 규칙 ID의 data.Profile 필드에서 직접 매핑됩니다.
data.Region event.idm.read_only_udm.principal.location.name 특정 규칙 ID의 data.Region 필드에서 직접 매핑됩니다.
data.Status event.idm.read_only_udm.security_result.action data.Status 필드에서 매핑됩니다. 값이 'Pass' 또는 'AUDIT_SUCCESS'인 경우 작업이 '허용'으로 설정됩니다. 값이 'ERROR', 'AUDIT_FAILURE' 또는 'FAIL'인 경우 작업이 'BLOCK'으로 설정됩니다.
data.aws.awsRegion event.idm.read_only_udm.principal.location.name 특정 규칙 ID의 data.aws.awsRegion 필드에서 직접 매핑됩니다.
data.aws.eventID event.idm.read_only_udm.target.resource.attribute.labels[].value data.aws.eventID 필드에서 직접 매핑됩니다. 키가 '이벤트 ID'로 설정됩니다.
data.aws.eventName event.idm.read_only_udm.metadata.description 특정 규칙 ID의 data.aws.eventName 필드에서 직접 매핑됩니다.
data.aws.eventSource event.idm.read_only_udm.metadata.url_back_to_product 특정 규칙 ID의 data.aws.eventSource 필드에서 직접 매핑됩니다.
data.aws.eventType event.idm.read_only_udm.metadata.product_event_type 특정 규칙 ID의 data.aws.eventType 필드에서 직접 매핑됩니다.
data.aws.requestID event.idm.read_only_udm.target.resource.attribute.labels[].value data.aws.requestID 필드에서 직접 매핑됩니다. 키는 'Request ID'(요청 ID)로 설정됩니다.
data.aws.requestParameters.loadBalancerName event.idm.read_only_udm.target.resource.attribute.labels[].value data.aws.requestParameters.loadBalancerName 필드에서 직접 매핑됩니다. 키는 'LoadBalancer Name'으로 설정됩니다.
data.aws.sourceIPAddress event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname 특정 규칙 ID의 data.aws.sourceIPAddress 필드에서 직접 매핑됩니다.
data.aws.source_ip_address event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip data.aws.source_ip_address 필드에서 직접 매핑됩니다.
data.aws.userIdentity.accountId event.idm.read_only_udm.principal.user.product_object_id 특정 규칙 ID의 data.aws.userIdentity.accountId 필드에서 직접 매핑됩니다.
data.aws.userIdentity.principalId event.idm.read_only_udm.principal.user.userid 특정 규칙 ID의 data.aws.userIdentity.principalId 필드에서 직접 매핑됩니다.
data.aws.userIdentity.sessionContext.sessionIssuer.arn event.idm.read_only_udm.target.resource.attribute.labels[].value data.aws.userIdentity.sessionContext.sessionIssuer.arn 필드에서 직접 매핑됩니다. 키가 'ARN'으로 설정됩니다.
data.aws.userIdentity.sessionContext.sessionIssuer.userName event.idm.read_only_udm.principal.user.user_display_name 특정 규칙 ID의 data.aws.userIdentity.sessionContext.sessionIssuer.userName 필드에서 직접 매핑됩니다.
data.command event.idm.read_only_udm.target.file.full_path data.command 필드에서 직접 매핑됩니다.
data.docker.message event.idm.read_only_udm.security_result.description 특정 이벤트 유형의 data.docker.message 필드에서 직접 매핑됩니다.
data.dstuser event.idm.read_only_udm.target.user.userid data.dstuser 필드에서 직접 매핑됩니다.
data.file event.idm.read_only_udm.target.file.full_path data.file 필드에서 직접 매핑됩니다.
data.package event.idm.read_only_udm.target.asset.software[].name data.package 필드에서 직접 매핑됩니다.
data.srcip event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip data.srcip 필드에서 직접 매핑됩니다.
data.srcuser event.idm.read_only_udm.principal.user.userid data.srcuser 필드에서 직접 매핑됩니다.
data.subject.account_domain event.idm.read_only_udm.target.administrative_domain 특정 규칙 ID의 data.subject.account_domain 필드에서 직접 매핑됩니다.
data.subject.account_name event.idm.read_only_udm.target.user.user_display_name 특정 규칙 ID의 data.subject.account_name 필드에서 직접 매핑됩니다.
data.subject.security_id event.idm.read_only_udm.target.user.windows_sid 특정 규칙 ID의 data.subject.security_id 필드에서 직접 매핑됩니다.
data.title event.idm.read_only_udm.target.resource.name data.title 필드에서 직접 매핑됩니다.
data.version event.idm.read_only_udm.target.asset.software[].version data.version 필드에서 직접 매핑됩니다.
decoder.name event.idm.read_only_udm.about.resource.name, event.idm.read_only_udm.target.application decoder.name 필드에서 직접 매핑됩니다. 경우에 따라 타겟 애플리케이션에도 사용됩니다.
decoder.parent event.idm.read_only_udm.about.resource.parent decoder.parent 필드에서 직접 매핑됩니다.
Description event.idm.read_only_udm.metadata.description Description 필드에서 직접 매핑됩니다.
Destination event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip, event.idm.read_only_udm.target.port 파싱하여 대상 IP 및 포트를 추출합니다.
DestinationIPAddress event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip DestinationIPAddress 필드에서 직접 매핑됩니다.
DestinationPort event.idm.read_only_udm.target.port DestinationPort 필드에서 직접 매핑되고 정수로 변환됩니다.
device_ip_address event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip device_ip_address 필드에서 직접 매핑됩니다.
feature event.idm.read_only_udm.metadata.product_event_type feature 필드에서 직접 매핑되며 경우에 따라 message_type와 결합됩니다.
file_path event.idm.read_only_udm.target.file.full_path file_path 필드에서 직접 매핑됩니다.
Framed-IP-Address event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip Framed-IP-Address 필드에서 직접 매핑됩니다.
full_log event.idm.read_only_udm.principal.port, event.idm.read_only_udm.security_result.description, event.idm.read_only_udm.about.labels[].value 포트 번호, 보안 결과 설명, 대상 로그온 ID를 추출하도록 파싱됩니다.
Hashes event.idm.read_only_udm.target.process.file.sha256, event.idm.read_only_udm.target.process.file.md5 SHA256 및 MD5 해시를 추출하도록 파싱됩니다.
hostname event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname hostname 필드에서 직접 매핑됩니다.
Image event.idm.read_only_udm.target.process.file.full_path Image 필드에서 직접 매핑됩니다.
IntegrityLevel event.idm.read_only_udm.additional.fields[].value.string_value IntegrityLevel 필드에서 직접 매핑됩니다. 키가 '무결성 수준'으로 설정됩니다.
kv_data event.idm.read_only_udm.target.process.file.full_path, event.idm.read_only_udm.target.process.pid, event.idm.read_only_udm.target.process.parent_process.file.full_path, event.idm.read_only_udm.target.process.parent_process.command_line, event.idm.read_only_udm.target.process.parent_process.product_specific_process_id, event.idm.read_only_udm.target.process.product_specific_process_id, event.idm.read_only_udm.metadata.description, event.idm.read_only_udm.additional.fields[].value.string_value 프로세스 생성, 파일 해시, 설명과 관련된 다양한 필드를 추출하도록 파싱됩니다.
kv_log_data event.idm.read_only_udm.security_result.severity_details 파싱하여 경보 수준을 추출합니다.
location event.idm.read_only_udm.target.file.full_path location 필드에서 직접 매핑됩니다.
LogonGuid event.idm.read_only_udm.additional.fields[].value.string_value 중괄호를 삭제한 후 LogonGuid 필드에서 직접 매핑됩니다. 키가 'Logon Guid'로 설정됩니다.
LogonId event.idm.read_only_udm.about.labels[].value, event.idm.read_only_udm.additional.fields[].value.string_value 로그아웃 이벤트의 주제 로그온 ID에 사용되며 다른 이벤트에는 직접 매핑됩니다. 키가 '로그온 ID'로 설정됩니다.
log_description event.idm.read_only_udm.metadata.description log_description 필드에서 직접 매핑됩니다.
log_message event.idm.read_only_udm.target.file.full_path, event.idm.read_only_udm.metadata.description 경로 및 로그 설명을 추출하도록 파싱됩니다.
manager.name event.idm.read_only_udm.about.user.userid, event.idm.read_only_udm.principal.user.userid manager.name 필드에서 직접 매핑됩니다. 경우에 따라 사용자 ID에도 사용됩니다.
md5 event.idm.read_only_udm.target.process.file.md5 md5 필드에서 직접 매핑됩니다.
message event.idm.read_only_udm.metadata.product_event_type, event.idm.read_only_udm.metadata.description, event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip, event.idm.read_only_udm.target.process.command_line, event.idm.read_only_udm.network.http.method, event.idm.read_only_udm.network.http.response_code, event.idm.read_only_udm.principal.user.userid, event.idm.read_only_udm.principal.mac, event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip, event.idm.read_only_udm.target.port, event.idm.read_only_udm.principal.nat_ip, event.idm.read_only_udm.principal.nat_port, event.idm.read_only_udm.security_result.severity, event.idm.read_only_udm.network.session_id, event.idm.read_only_udm.security_result.detection_fields[].value, event.idm.read_only_udm.additional.fields[].value.number_value, event.idm.read_only_udm.target.url, event.idm.read_only_udm.target.application, event.idm.read_only_udm.principal.resource.attribute.labels[].value, event.idm.read_only_udm.security_result.rule_type, event.idm.read_only_udm.security_result.description, event.idm.read_only_udm.network.http.user_agent, event.idm.read_only_udm.principal.process.pid, event.idm.read_only_udm.principal.resource.attribute.labels[].value, event.idm.read_only_udm.security_result.severity_details grok를 사용하여 파싱하여 로그 형식에 따라 다양한 필드를 추출합니다.
message_data event.idm.read_only_udm.metadata.description, event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip, event.idm.read_only_udm.principal.port, event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip, event.idm.read_only_udm.target.port, event.idm.read_only_udm.network.sent_bytes, event.idm.read_only_udm.network.received_bytes, event.idm.read_only_udm.network.ip_protocol, event.idm.read_only_udm.metadata.event_type 메시지 데이터, IP 주소, 포트, 전송/수신된 바이트, 이벤트 유형을 추출하도록 파싱됩니다.
message_type event.idm.read_only_udm.metadata.product_event_type, event.idm.read_only_udm.metadata.description message_type 필드에서 직접 매핑되며 경우에 따라 feature와 결합됩니다. 경우에 따라 설명에도 사용됩니다.
method event.idm.read_only_udm.network.http.method method 필드에서 직접 매핑됩니다.
NAS-IP-Address event.idm.read_only_udm.principal.nat_ip NAS-IP-Address 필드에서 직접 매핑됩니다.
NAS-Port event.idm.read_only_udm.principal.nat_port NAS-Port 필드에서 직접 매핑되고 정수로 변환됩니다.
NAS-Port-Type event.idm.read_only_udm.principal.resource.attribute.labels[].value NAS-Port-Type 필드에서 직접 매핑됩니다. 키는 'nas_port_type'으로 설정됩니다.
NetworkDeviceName event.idm.read_only_udm.intermediary.hostname 백슬래시를 삭제한 후 NetworkDeviceName 필드에서 직접 매핑됩니다.
ParentCommandLine event.idm.read_only_udm.target.process.parent_process.command_line ParentCommandLine 필드에서 직접 매핑됩니다.
ParentImage event.idm.read_only_udm.target.process.parent_process.file.full_path ParentImage 필드에서 직접 매핑됩니다.
ParentProcessGuid event.idm.read_only_udm.target.process.parent_process.product_specific_process_id 중괄호를 삭제하고 'ID:'를 접두사로 추가한 후 ParentProcessGuid 필드에서 직접 매핑됩니다.
ParentProcessId event.idm.read_only_udm.target.process.parent_process.pid ParentProcessId 필드에서 직접 매핑됩니다.
predecoder.hostname event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname predecoder.hostname 필드에서 직접 매핑됩니다.
ProcessGuid event.idm.read_only_udm.target.process.product_specific_process_id 중괄호를 삭제하고 'ID:'를 접두사로 추가한 후 ProcessGuid 필드에서 직접 매핑됩니다.
ProcessId event.idm.read_only_udm.target.process.pid ProcessId 필드에서 직접 매핑됩니다.
product_event_type event.idm.read_only_udm.metadata.product_event_type product_event_type 필드에서 직접 매핑됩니다.
response_code event.idm.read_only_udm.network.http.response_code response_code 필드에서 직접 매핑되고 정수로 변환됩니다.
rule.description event.idm.read_only_udm.metadata.event_type, event.idm.read_only_udm.security_result.summary 이벤트 유형을 결정하는 데 사용되며 보안 결과 요약에 직접 매핑됩니다.
rule.id event.idm.read_only_udm.metadata.product_log_id, event.idm.read_only_udm.security_result.rule_id rule.id 필드에서 직접 매핑됩니다.
rule.info event.idm.read_only_udm.target.url rule.info 필드에서 직접 매핑됩니다.
rule.level event.idm.is_alert, event.idm.is_significant, event.idm.read_only_udm.security_result.severity_details 이벤트가 알림인지 또는 중요한지 확인하고 심각도 세부정보를 설정하는 데 사용됩니다.
r_cat_name event.idm.read_only_udm.metadata.event_type 이벤트 유형을 결정하는 데 사용됩니다.
r_msg_id event.idm.read_only_udm.metadata.product_log_id r_msg_id 필드에서 직접 매핑됩니다.
security_result.severity event.idm.read_only_udm.security_result.severity security_result.severity 필드에서 직접 매핑됩니다.
ServerIP event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip ServerIP 필드에서 직접 매핑됩니다.
ServerPort event.idm.read_only_udm.target.port ServerPort 필드에서 직접 매핑되고 정수로 변환됩니다.
sha256 event.idm.read_only_udm.target.process.file.sha256 sha256 필드에서 직접 매핑됩니다.
Source event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip, event.idm.read_only_udm.principal.port 파싱하여 기본 IP 및 포트를 추출합니다.
src_ip event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip src_ip 필드에서 직접 매핑됩니다.
sr_description event.idm.read_only_udm.metadata.event_type, event.idm.read_only_udm.security_result.description 이벤트 유형을 결정하는 데 사용되며 보안 결과 설명에 직접 매핑됩니다.
syscheck.md5_after event.idm.read_only_udm.target.process.file.md5 syscheck.md5_after 필드에서 직접 매핑됩니다.
syscheck.md5_before event.idm.read_only_udm.src.process.file.md5 syscheck.md5_before 필드에서 직접 매핑됩니다.
syscheck.path event.idm.read_only_udm.target.file.full_path syscheck.path 필드에서 직접 매핑됩니다.
syscheck.sha1_after event.idm.read_only_udm.target.process.file.sha1 syscheck.sha1_after 필드에서 직접 매핑됩니다.
syscheck.sha1_before event.idm.read_only_udm.src.process.file.sha1 syscheck.sha1_before 필드에서 직접 매핑됩니다.
syscheck.sha256_after event.idm.read_only_udm.target.process.file.sha256 syscheck.sha256_after 필드에서 직접 매핑됩니다.
syscheck.sha256_before event.idm.read_only_udm.src.process.file.sha256 syscheck.sha256_before 필드에서 직접 매핑됩니다.
syscheck.size_after event.idm.read_only_udm.target.process.file.size syscheck.size_after 필드에서 직접 매핑되고 부호 없는 정수로 변환됩니다.
syscheck.size_before event.idm.read_only_udm.src.process.file.size syscheck.size_before 필드에서 직접 매핑되고 부호 없는 정수로 변환됩니다.
syscheck.uname_after event.idm.read_only_udm.principal.user.user_display_name syscheck.uname_after 필드에서 직접 매핑됩니다.
target_url event.idm.read_only_udm.target.url target_url 필드에서 직접 매핑됩니다.
timestamp event.idm.read_only_udm.metadata.event_timestamp timestamp 필드에서 직접 매핑됩니다.
Total_bytes_recv event.idm.read_only_udm.network.received_bytes Total_bytes_recv 필드에서 직접 매핑되고 부호 없는 정수로 변환됩니다.
Total_bytes_send event.idm.read_only_udm.network.sent_bytes Total_bytes_send 필드에서 직접 매핑되고 부호 없는 정수로 변환됩니다.
User-Name event.idm.read_only_udm.principal.user.userid, event.idm.read_only_udm.principal.mac MAC 주소가 아닌 경우 User-Name 필드에서 직접 매핑됩니다. 그렇지 않으면 MAC 주소로 파싱됩니다.
user_agent event.idm.read_only_udm.network.http.user_agent user_agent 필드에서 직접 매핑됩니다.
user_id event.idm.read_only_udm.principal.user.userid user_id 필드에서 직접 매핑됩니다.
UserName event.idm.read_only_udm.principal.user.userid, event.idm.read_only_udm.principal.mac MAC 주소가 아닌 경우 UserName 필드에서 직접 매핑됩니다. 그렇지 않으면 MAC 주소로 파싱됩니다.
VserverServiceIP event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip VserverServiceIP 필드에서 직접 매핑됩니다.
VserverServicePort event.idm.read_only_udm.target.port VserverServicePort 필드에서 직접 매핑되고 정수로 변환됩니다.
win.system.channel event.idm.read_only_udm.security_result.detection_fields[].value win.system.channel 필드에서 직접 매핑됩니다. 키가 'channel'로 설정됩니다.
win.system.computer event.idm.read_only_udm.principal.resource.attribute.labels[].value win.system.computer 필드에서 직접 매핑됩니다. 키가 'computer'로 설정되어 있습니다.
win.system.eventID event.idm.read_only_udm.metadata.product_log_id win.system.eventID 필드에서 직접 매핑됩니다.
win.system.message_description event.idm.read_only_udm.metadata.description win.system.message_description 필드에서 직접 매핑됩니다.
win.system.processID event.idm.read_only_udm.principal.process.pid win.system.processID 필드에서 직접 매핑됩니다.
win.system.providerGuid event.idm.read_only_udm.principal.resource.attribute.labels[].value win.system.providerGuid 필드에서 직접 매핑됩니다. 키가 'providerGuid'로 설정됩니다.
win.system.providerName event.idm.read_only_udm.principal.resource.attribute.labels[].value win.system.providerName 필드에서 직접 매핑됩니다. 키는 'providerName'으로 설정됩니다.
win.system.severityValue event.idm.read_only_udm.security_result.severity, event.idm.read_only_udm.security_result.severity_details 유효한 심각도 값인 경우 win.system.severityValue 필드에서 직접 매핑됩니다.
win.system.systemTime event.idm.read_only_udm.security_result.detection_fields[].value win.system.systemTime 필드에서 직접 매핑됩니다. 키가 'systemTime'으로 설정됩니다.
win.system.threadID event.idm.read_only_udm.security_result.detection_fields[].value win.system.threadID 필드에서 직접 매핑됩니다. 키가 'threadID'로 설정됩니다.
해당 사항 없음 event.idm.read_only_udm.metadata.event_type 기본값으로 'GENERIC_EVENT'로 설정되며, 다양한 이벤트 유형에 대한 특정 로직으로 재정의됩니다.
해당 사항 없음 event.idm.read_only_udm.extensions.auth.mechanism 로그인 이벤트의 경우 '원격'으로 설정합니다.
해당 사항 없음 event.idm.read_only_udm.extensions.auth.type 로그인/로그아웃 이벤트의 경우 'PASSWORD'로 설정되고 일부 이벤트의 경우 'MACHINE'으로 재정의됩니다.
해당 사항 없음 event.idm.read_only_udm.network.ip_protocol TCP 네트워크 연결의 경우 'TCP'로 설정합니다.
해당 사항 없음 event.idm.read_only_udm.security_result.action 로그인 및 성공 이벤트의 경우 '허용'으로, 실패 이벤트의 경우 '차단'으로 설정합니다.
해당 사항 없음 event.idm.is_alert rule.level이 12 이하이면 true로 설정합니다.
해당 사항 없음 event.idm.is_significant rule.level이 12보다 크면 true로 설정하고 그렇지 않으면 false로 설정합니다.
해당 사항 없음 event.idm.read_only_udm.metadata.log_type 'WAZUH'로 설정합니다.
해당 사항 없음 event.idm.read_only_udm.metadata.product_name 'Wazuh'로 설정합니다.

변경사항

2024-03-04

  • SVROSSEC syslog 로그에 대한 지원이 추가되었습니다.
  • 'file_path'가 'target.file.full_path'에 매핑되었습니다.
  • 'registry_key'가 'target.registry.registry_key'에 매핑되었습니다.
  • 'user_name'이 'principal.user.userid'에 매핑되었습니다.
  • 'log_description'이 'metadata.description'에 매핑되었습니다.
  • 'action_data'가 'security_result.action_details'에 매핑되었습니다.
  • 'src_host'가 'principal.hostname'에 매핑되었습니다.
  • 'rule_id'가 'security_result.rule_id'에 매핑되었습니다.
  • 'classification'이 'security_result.detection_fields'에 매핑되었습니다.
  • 'rule_summary'가 'security_result.summary'에 매핑되었습니다.
  • 'principal.hostname' 및 'principal.asset.hostname'의 매핑이 정렬되었습니다.
  • 'principal.ip' 및 'principal.asset.ip'의 매핑을 정렬했습니다.
  • 'target.ip' 및 'target.asset.ip'의 매핑을 정렬했습니다.

2023-07-17

  • 파싱되지 않은 syslog 로그를 파싱하는 Grok 패턴을 추가했습니다.
  • 'predecoder.hostname'에 null 검사를 추가했습니다.

2022-10-14

  • 파싱 비율이 증가했습니다.
  • syslog 패턴 파싱 지원을 추가했습니다.