SonicWall 로그 수집

다음에서 지원:

이 문서에서는 Google Security Operations 전달자를 사용하여 SonicWall 로그를 수집하는 방법을 설명합니다.

자세한 내용은 Google Security Operations에 데이터 수집을 참조하세요.

수집 라벨은 원시 로그 데이터를 구조화된 UDM 형식으로 정규화하는 파서를 식별합니다. 이 문서의 정보는 SONIC_FIREWALL 수집 라벨이 있는 파서에 적용됩니다.

SonicWall 보안 어플라이언스 구성

  1. SonicWall 콘솔에 로그인합니다.
  2. 로그 > Syslog로 이동합니다.
  3. Syslog servers 섹션에서 추가를 클릭합니다. syslog 서버 추가 창이 표시됩니다.
  4. 이름 또는 IP 주소 필드에 Google Security Operations 전달자 호스트 이름 또는 IP 주소를 입력합니다.
  5. syslog 구성에서 기본 514 포트를 사용하지 않는 경우 포트 번호 입력란에 포트 번호를 지정합니다.
  6. 확인을 클릭합니다.
  7. 수락을 클릭하여 모든 syslog 서버 설정을 저장합니다.

SonicWall 로그를 수집하도록 Google Security Operations 전달자 및 syslog 구성

  1. SIEM 설정 > 전달자로 이동합니다.
  2. 새 전달자 추가를 클릭합니다.
  3. Forwarder Name(운송업체 이름) 입력란에 운송업체의 고유한 이름을 입력합니다.
  4. 제출을 클릭합니다. 전달자가 추가되고 수집기 구성 추가 창이 표시됩니다.
  5. 수집기 이름 입력란에 이름을 입력합니다.
  6. 로그 유형으로 SonicWall을 선택합니다.
  7. 수집기 유형으로 Syslog를 선택합니다.
  8. 다음 필수 입력 매개변수를 구성합니다.
    • 프로토콜: 수집기가 syslog 데이터를 리슨하는 데 사용할 연결 프로토콜을 지정합니다.
    • 주소: 수집기가 상주하고 syslog 데이터를 리슨하는 대상 IP 주소 또는 호스트 이름을 지정합니다.
    • 포트: 수집기가 상주하고 syslog 데이터를 리슨하는 대상 포트를 지정합니다.
  9. 제출을 클릭합니다.

Google Security Operations 전달자에 대한 자세한 내용은 Google Security Operations 전달자 문서를 참고하세요.

각 전달자 유형의 요구사항은 유형별 전달자 구성을 참고하세요.

전달자를 만들 때 문제가 발생하면 Google Security Operations 지원팀에 문의하세요.

필드 매핑 참조

이 파서는 SonicWall 방화벽 syslog 메시지에서 키-값 쌍을 추출하고 타임스탬프, IP 주소, 포트와 같은 다양한 필드를 정규화하여 UDM 형식에 매핑합니다. IPv4 및 IPv6 주소를 모두 처리하고 허용된 이벤트와 차단된 이벤트를 구분하며 규칙 이름 및 설명과 같은 보안 관련 세부정보를 추출합니다.

UDM 매핑 표

로그 필드 UDM 매핑 논리
에이전트 event.idm.read_only_udm.network.http.user_agent agent 필드의 값이 UDM 필드에 할당됩니다.
appcat event.idm.read_only_udm.security_result.summary appcat 필드의 값이 UDM 필드에 할당됩니다. appcat에 'PROXY-ACCESS'가 포함된 경우 event.idm.read_only_udm.security_result.category는 'POLICY_VIOLATION'으로 설정되고 event.idm.read_only_udm.security_result.action는 'BLOCK'으로 설정됩니다.
appid event.idm.read_only_udm.security_result.rule_id appid 필드의 값이 UDM 필드에 할당됩니다.
인수 event.idm.read_only_udm.target.resource.name arg 필드의 값이 UDM 필드에 할당됩니다.
avgThroughput event.idm.read_only_udm.target.resource.attribute.labels 'avgThroughput' 키와 avgThroughput 필드의 값으로 된 라벨이 UDM 필드에 추가됩니다.
bytesIn event.idm.read_only_udm.network.received_bytes bytesIn 필드의 값이 부호 없는 정수로 변환되고 UDM 필드에 할당됩니다.
bytesOut event.idm.read_only_udm.network.sent_bytes bytesOut 필드의 값이 부호 없는 정수로 변환되고 UDM 필드에 할당됩니다.
bytesTotal event.idm.read_only_udm.target.resource.attribute.labels 'bytesTotal' 키와 bytesTotal 필드의 값으로 된 라벨이 UDM 필드에 추가됩니다.
카테고리 event.idm.read_only_udm.security_result.category_details Category 필드의 값이 UDM 필드에 할당됩니다.
cdur event.idm.read_only_udm.security_result.detection_fields '연결 시간 (밀리초)' 키와 cdur 필드의 값이 있는 감지 필드가 UDM 필드에 추가됩니다.
dst event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.port IP 및 포트는 dst 필드에서 추출됩니다. dstV6가 비어 있지 않으면 대신 dstV6에서 IP가 추출됩니다.
dstMac event.idm.read_only_udm.target.mac dstMac 필드의 값이 UDM 필드에 할당됩니다.
dstV6 event.idm.read_only_udm.target.ip IP는 dstV6 필드에서 추출됩니다.
dstname event.idm.read_only_udm.target.hostname dstname가 IP 주소가 아닌 경우 값이 UDM 필드에 할당됩니다.
기간 event.idm.read_only_udm.network.session_duration.seconds duration 필드의 값이 정수로 변환되고 UDM 필드에 할당됩니다.
fw event.idm.read_only_udm.principal.ip fw 필드의 값이 UDM 필드에 할당됩니다. fw에 '-'이 포함된 경우 fw 필드의 값과 'fw' 키가 있는 라벨이 event.idm.read_only_udm.additional.fields에 추가됩니다.
fw_action event.idm.read_only_udm.security_result.action_details, event.idm.read_only_udm.security_result.summary, event.idm.read_only_udm.security_result.action fw_action 필드의 값이 event.idm.read_only_udm.security_result.action_details에 할당됩니다. fw_action이 'drop'인 경우 event.idm.read_only_udm.security_result.action은 'BLOCK'으로 설정되고 event.idm.read_only_udm.security_result.summarymsg 값으로 설정됩니다.
gw event.idm.read_only_udm.intermediary.ip IP 주소가 gw 필드에서 추출되고 UDM 필드에 할당됩니다.
id event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname id 필드의 값이 두 UDM 필드에 모두 할당됩니다.
maxThroughput event.idm.read_only_udm.target.resource.attribute.labels 'maxThroughput' 키와 maxThroughput 필드의 값으로 된 라벨이 UDM 필드에 추가됩니다.
msg event.idm.read_only_udm.security_result.summary, event.idm.read_only_udm.metadata.description fw_action가 'drop'이 아니거나 appcat가 비어 있으면 msg 필드의 값이 event.idm.read_only_udm.security_result.summary에 할당됩니다. 그렇지 않으면 event.idm.read_only_udm.metadata.description에 할당됩니다.
natDst event.idm.read_only_udm.target.nat_ip IP 주소가 natDst 필드에서 추출되고 UDM 필드에 할당됩니다.
natSrc event.idm.read_only_udm.principal.nat_ip IP 주소가 natSrc 필드에서 추출되고 UDM 필드에 할당됩니다.
note event.idm.read_only_udm.security_result.description dstip, srcip, gw, sec_desc를 추출한 후 note 필드의 값이 UDM 필드에 할당됩니다.
packetsIn event.idm.read_only_udm.target.resource.attribute.labels 'packetsIn' 키와 packetsIn 필드의 값으로 된 라벨이 UDM 필드에 추가됩니다.
packetsOut event.idm.read_only_udm.target.resource.attribute.labels 'packetsOut' 키와 packetsOut 필드의 값으로 된 라벨이 UDM 필드에 추가됩니다.
packetsTotal event.idm.read_only_udm.target.resource.attribute.labels 'packetsTotal' 키와 packetsTotal 필드의 값으로 된 라벨이 UDM 필드에 추가됩니다.
pri event.idm.read_only_udm.security_result.severity pri 필드의 값에 따라 UDM 필드의 값이 결정됩니다. 0, 1, 2 -> CRITICAL, 3 -> ERROR, 4 -> MEDIUM, 5, 7 -> LOW, 6 -> INFORMATIONAL
proto event.idm.read_only_udm.network.ip_protocol, event.idm.read_only_udm.network.application_protocol, event.idm.read_only_udm.metadata.event_type proto에 'udp'가 포함된 경우 UDM ip_protocol는 'UDP'로 설정되고 event_type는 'NETWORK_CONNECTION'으로 설정됩니다. proto에 'https'가 포함된 경우 UDM application_protocol이 'HTTPS'로 설정됩니다.
rcvd event.idm.read_only_udm.network.received_bytes rcvd 필드의 값이 부호 없는 정수로 변환되고 UDM 필드에 할당됩니다.
규칙 event.idm.read_only_udm.security_result.rule_name rule 필드의 값이 UDM 필드에 할당됩니다.
sec_desc event.idm.read_only_udm.security_result.description sec_desc 필드의 값이 UDM 필드에 할당됩니다.
sent event.idm.read_only_udm.network.sent_bytes sent 필드의 값이 부호 없는 정수로 변환되고 UDM 필드에 할당됩니다.
sess event.idm.read_only_udm.security_result.detection_fields 'Session Type' 키와 sess 필드의 값이 있는 감지 필드가 UDM 필드에 추가됩니다.
sn event.idm.read_only_udm.additional.fields 'SN' 키와 sn 필드의 값으로 된 라벨이 UDM 필드에 추가됩니다.
spkt event.idm.read_only_udm.network.sent_packets spkt 필드의 값이 정수로 변환되어 UDM 필드에 할당됩니다.
src event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.port IP 및 포트는 src 필드에서 추출됩니다. srcV6가 비어 있지 않으면 대신 srcV6에서 IP가 추출됩니다.
srcMac event.idm.read_only_udm.principal.mac srcMac 필드의 값이 UDM 필드에 할당됩니다.
srcV6 event.idm.read_only_udm.principal.ip IP는 srcV6 필드에서 추출됩니다.
srcip event.idm.read_only_udm.additional.fields, event.idm.read_only_udm.principal.ip srcip에 '-'이 포함된 경우 srcip 필드의 값과 'srcip' 키가 있는 라벨이 event.idm.read_only_udm.additional.fields에 추가됩니다. 그 외의 경우 srcip 값이 event.idm.read_only_udm.principal.ip에 할당됩니다.
시간 event.idm.read_only_udm.metadata.event_timestamp time 필드의 값이 파싱되어 타임스탬프로 변환된 후 UDM 필드에 할당됩니다.
유형 event.idm.read_only_udm.network.ip_protocol proto 필드가 'icmp'인 경우 UDM 필드는 'ICMP'로 설정됩니다.
user/usr event.idm.read_only_udm.principal.user.email_addresses, event.idm.read_only_udm.principal.user.user_display_name, event.idm.read_only_udm.principal.user.userid user가 비어 있으면 usr의 값이 대신 사용됩니다. 값에 '@'가 포함된 경우 이메일 주소로 취급되어 email_addresses에 추가됩니다. 공백이 포함된 경우 표시 이름으로 취급됩니다. 그렇지 않으면 사용자 ID로 취급됩니다.
vpnpolicy event.idm.read_only_udm.security_result.detection_fields 키가 'vpnpolicy'이고 vpnpolicy 필드의 값이 있는 감지 필드가 UDM 필드에 추가됩니다. 'SonicWall'로 하드코딩되었습니다. '방화벽'으로 하드코딩됩니다. 'SONIC_FIREWALL'로 하드코딩되었습니다. 다른 필드의 값을 기반으로 로직에 의해 결정됩니다. 기본값은 'GENERIC_EVENT'이며 'STATUS_UPDATE', 'NETWORK_CONNECTION' 또는 'NETWORK_HTTP'일 수 있습니다.

변경사항

2024-06-04

  • 'principal.asset.ip' 및 'target.asset.ip'의 정렬이 삭제되었습니다.
  • IP 값이 범위 형식인 경우 'src' 및 'dst'가 'additional.fields'에 매핑됩니다.
  • 'gw'가 'intermediary.ip'에 매핑되었습니다.

2024-05-29

  • 'sn' 필드를 파싱하도록 grok를 수정했습니다.
  • 'sn'이 'intermediary.asset_id'에 매핑되었습니다.

2024-05-29

  • 'firewall_hostname'이 'intermediary.hostname'에 매핑되었습니다.
  • 'sn' 필드를 파싱하도록 Grok 패턴을 수정했습니다.
  • 'sn'이 'intermediary.asset_id'에 매핑되었습니다.

2024-04-18

  • 'fw'의 매핑을 'observer.ip'에서 'principal.ip'로 변경했습니다.
  • 'id'의 매핑을 'resource.id'에서 'principal.hostname'으로 변경했습니다.

2023-05-26

  • 개선 -
  • 'fw_action'이 'security_result.action_details'에 매핑되었습니다.
  • 'spkt'이 'network.sent_packets'에 매핑되었습니다.

2023-03-08

  • 개선 -
  • 적절한 필드 (예: principal.user.email_addresses, principal.user.user_display_name, principal.user.userid)를 파싱하기 위해 '사용자' 필드에 조건 검사를 추가했습니다.
  • 'security_result.detection_fields'에서 'pri'를 삭제하고 'security_result.severity'에 매핑했습니다.
  • 'usr'이 'principal.user.email_addresses'에 매핑되었습니다.
  • 'vpnpolicy' 필드가 'security_result.detection_fields'에 매핑되었습니다.
  • 'cdur' 필드가 'security_result.detection_fields'에 매핑되었습니다.
  • 'sess' 필드가 'security_result.detection_fields'에 매핑되었습니다.

2023-03-06

  • 개선 -
  • 'fw'가 target.ip 대신 'observer.ip'에 매핑되었습니다.

2023-02-22

  • 개선 -
  • 프로토콜이 HTTP가 아닌 경우 'NETWORK_HTTP'가 'NETWORK_CONNECTION'에 매핑되므로 이벤트가 트래픽을 파싱합니다.
  • 'fw_action'이 'drop'과 같은 경우 'msg'를 'security_result.summary'에 매핑하고 'BLOCK'을 'security_result.action'에 매핑했습니다.
  • 'fw'가 'observer.ip'에, 'src'가 'principal.ip'에 매핑되었습니다.

2022-06-24

  • 개선 -
  • 'msg'가 'security_result.summary'에 매핑되었습니다.
  • 'fw_action'이 'drop'과(와) 일치하는 경우 'BLOCK'이 'security_result.action'에 매핑되었습니다.
  • 'sent'가 'network.sent_bytes'에 매핑되었습니다.
  • 'rcvd'가 'network.received_bytes'에 매핑되었습니다.
  • 'usr'가 'principal.user.userid'에 매핑되었습니다.
  • 'pri'가 'additional.fields'에 매핑되었습니다.
  • 'sn'이 'additional.fields'에 매핑되었습니다.
  • 'id'가 'target.resource.id'에 매핑되었습니다.

2022-05-26

  • 버그 수정-
  • 기간을 network.session_duration.seconds에 매핑했습니다.
  • 사용자를 principal.user.userid에 매핑했습니다.
  • 에이전트를 network.http.user_agent에 매핑했습니다.
  • avgThroughput가 target.resource.attribute.labels에 매핑되었습니다.
  • bytesIn을 network.sent_bytes에 매핑했습니다.
  • bytesOut을 network.received_bytes에 매핑했습니다.
  • bytesTotal이 target.resource.attribute.labels에 매핑되었습니다.
  • maxThroughput가 target.resource.attribute.labels에 매핑되었습니다.
  • dst를 target.ip에 매핑했습니다.
  • fw를 principal.ip에 매핑했습니다.
  • pri가 event.idm.read_only_udm.additional.fields에 매핑되었습니다.

2022-05-19

  • 개선사항 - 파서를 SDM에서 UDM으로 변환했습니다 (webproxy 필드에서 이벤트 필드로 매핑 변경).