Trend Micro Deep Security 로그 수집
이 문서에서는 Google Security Operations를 사용하여 Trend Micro Deep Security 로그를 수집하는 방법을 설명합니다. 이 파서는 LEEF+CEF 또는 CEF 형식일 수 있는 로그를 통합 데이터 모델 (UDM)로 파싱합니다. grok 패턴과 키-값 쌍을 사용하여 로그 메시지에서 필드를 추출한 다음 해당 UDM 필드에 매핑하여 다양한 데이터 정리 및 정규화 작업을 처리합니다.
시작하기 전에
- Google SecOps 인스턴스가 있는지 확인합니다.
- Windows 2016 이상 또는
systemd
가 설치된 Linux 호스트를 사용하고 있는지 확인합니다. - 프록시 뒤에서 실행하는 경우 방화벽 포트가 열려 있는지 확인합니다.
- TrendMicro Deep Security 콘솔에 대한 권한이 있는 액세스 권한이 있어야 합니다.
Google SecOps 수집 인증 파일 가져오기
- Google SecOps 콘솔에 로그인합니다.
- SIEM 설정 > 수집 에이전트로 이동합니다.
- 수집 인증 파일을 다운로드합니다. Bindplane 에이전트가 설치될 시스템에 파일을 안전하게 저장합니다.
Google SecOps 고객 ID 가져오기
- Google SecOps 콘솔에 로그인합니다.
- SIEM 설정 > 프로필로 이동합니다.
- 조직 세부정보 섹션에서 고객 ID를 복사하여 저장합니다.
Bindplane 에이전트 설치
Windows 설치
- 명령 프롬프트 또는 PowerShell을 관리자로 엽니다.
다음 명령어를 실행합니다.
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Linux 설치
- 루트 또는 sudo 권한으로 터미널을 엽니다.
다음 명령어를 실행합니다.
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
추가 설치 리소스
- 추가 설치 옵션은 이 설치 가이드를 참고하세요.
Syslog를 수집하여 Google SecOps로 전송하도록 Bindplane 에이전트 구성
구성 파일에 액세스합니다.
config.yaml
파일을 찾습니다. 일반적으로 Linux에서는/etc/bindplane-agent/
디렉터리에 있고 Windows에서는 설치 디렉터리에 있습니다.- 텍스트 편집기 (예:
nano
,vi
, 메모장)를 사용하여 파일을 엽니다.
다음과 같이
config.yaml
파일을 수정합니다.receivers: udplog: # Replace the below port <54525> and IP <0.0.0.0> with your specific values listen_address: "0.0.0.0:54525" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the creds location below according the placement of the credentials file you downloaded creds: '{ json file for creds }' # Replace <customer_id> below with your actual ID that you copied customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # You can apply ingestion labels below as preferred ingestion_labels: log_type: SYSLOG namespace: trendmicro_deep_security raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
인프라에 필요한 대로 포트와 IP 주소를 바꿉니다.
<customer_id>
를 실제 고객 ID로 바꿉니다.Google SecOps 수집 인증 파일 가져오기 섹션에서 인증 파일이 저장된 경로로
/path/to/ingestion-authentication-file.json
를 업데이트합니다.
변경사항을 적용하려면 Bindplane 에이전트를 다시 시작하세요.
Linux에서 Bindplane 에이전트를 다시 시작하려면 다음 명령어를 실행합니다.
sudo systemctl restart bindplane-agent
Windows에서 Bindplane 에이전트를 다시 시작하려면 서비스 콘솔을 사용하거나 다음 명령어를 입력하면 됩니다.
net stop BindPlaneAgent && net start BindPlaneAgent
TrendMicro Deep Security에서 Syslog 구성
- TrendMicro Deep Security 콘솔에 로그인합니다.
- 정책 > 공통 객체 > 기타 > Syslog 구성으로 이동합니다.
- 새로 만들기 > 새 구성을 클릭합니다.
- 구성에 관한 다음 세부정보를 제공합니다.
- 이름: 구성을 식별하는 고유한 이름 (예: Google SecOps Bindplane)
- 선택사항: 설명: 설명을 추가합니다.
- 로그 소스 식별자: 원하는 경우 Deep Security Manager의 호스트 이름 대신 사용할 식별자를 지정합니다.
- 서버 이름: Syslog 서버 (Bindplane)의 호스트 이름 또는 IP 주소를 입력합니다.
- 서버 포트: 서버 (Bindplane)에서 수신 대기 포트 번호를 지정합니다.
- 전송: 전송 프로토콜로 UDP를 선택합니다.
- 이벤트 형식: LEEF 또는 CEF를 선택합니다 (LEEF 형식의 경우 에이전트가 로그를 전달해야 함을 Deep Security Manager를 통해로 설정해야 함).
- 선택사항: 일정에 시간대 포함: 일정에 연도와 시간대를 포함한 전체 날짜를 추가할지 여부입니다.
- 선택사항: 상담사는 로그를 전달해야 합니다: 로그가 LEEF로 형식이 지정된 경우 Deep Security Manager를 통해를 선택합니다.
- 적용을 클릭하여 설정을 완료합니다.
보안 이벤트 전달 구성
- 정책으로 이동하여 구성할 컴퓨터에 적용된 정책을 선택합니다.
- 세부정보를 클릭합니다.
- 정책 편집기 창에서 설정 > 이벤트 전달을 클릭합니다.
- 이벤트 전송 간격 섹션에서 기간 값을 10~60초 사이의 시간으로 설정합니다.
- 기본값은 60초이고 권장값은 10초입니다.
- 이러한 각 보호 모듈의 경우 다음을 충족해야 합니다.
- 악성코드 방지 Syslog 구성
- 웹 평판 Syslog 구성
- 방화벽
- 침입 방지 Syslog 구성
- 로그 검사 및 무결성 모니터링 Syslog 구성
- 컨텍스트 메뉴에서 사용할 syslog 구성을 선택합니다.
- Syslog Configuration Name: 적절한 구성을 선택합니다.
- 저장을 클릭하여 설정을 적용합니다.
시스템 이벤트 전달 구성
- 관리 > 시스템 설정 > 이벤트 전달로 이동합니다.
- 구성을 사용하여 원격 컴퓨터에 시스템 이벤트 전달 (Syslog를 통해)에서 이전에 만든 기존 구성을 선택합니다.
- 저장을 클릭합니다.
UDM 매핑 테이블
로그 필드 | UDM 매핑 | 논리 |
---|---|---|
act | read_only_udm.security_result.action_details | |
aggregationType | read_only_udm.additional.fields.value.string_value | 문자열로 변환되었습니다. |
고양이 | read_only_udm.security_result.category_details | |
cef_host | read_only_udm.target.hostname read_only_udm.target.asset.hostname |
dvchost가 비어 있는 경우 호스트 이름으로 사용됩니다. |
cn1 | read_only_udm.target.asset_id | '호스트 ID:'가 앞에 붙습니다. |
cs1 | read_only_udm.security_result.detection_fields.value | |
cs1Label | read_only_udm.security_result.detection_fields.key | |
cs2 | read_only_udm.target.file.sha1 read_only_udm.security_result.detection_fields.value |
cs2Label이 'sha1'인 경우 소문자로 변환되고 sha1에 매핑되며, 그렇지 않은 경우 detection_fields에 매핑됩니다. |
cs2Label | read_only_udm.security_result.detection_fields.key | |
cs3 | read_only_udm.target.file.md5 read_only_udm.security_result.detection_fields.value |
cs3Label이 'md5'인 경우 소문자로 변환되고 md5에 매핑됩니다. 그렇지 않으면 detection_fields에 매핑됩니다. |
cs3Label | read_only_udm.security_result.detection_fields.key | |
cs5 | read_only_udm.security_result.detection_fields.value | |
cs5Label | read_only_udm.security_result.detection_fields.key | |
cs6 | read_only_udm.security_result.detection_fields.value | |
cs6Label | read_only_udm.security_result.detection_fields.key | |
cs7 | read_only_udm.security_result.detection_fields.value | |
cs7Label | read_only_udm.security_result.detection_fields.key | |
cnt | read_only_udm.additional.fields.value.string_value | 문자열로 변환되었습니다. |
내림차순 | read_only_udm.metadata.description | |
dst | read_only_udm.target.ip read_only_udm.target.asset.ip |
|
dstMAC | read_only_udm.target.mac | 소문자로 변환됩니다. |
dstPort | read_only_udm.target.port | 정수로 변환되었습니다. |
duser | read_only_udm.target.user.user_display_name | |
dvc | read_only_udm.about.ip | |
dvchost | read_only_udm.target.hostname read_only_udm.target.asset.hostname |
|
event_id | read_only_udm.metadata.product_event_type | event_name이 비어 있지 않으면 product_event_type으로 사용되고, 그렇지 않으면 단독으로 사용됩니다. |
event_name | read_only_udm.metadata.product_event_type | '[event_id] - '가 앞에 붙고 product_event_type으로 사용됩니다. |
fileHash | read_only_udm.target.file.sha256 | 소문자로 변환됩니다. |
filePath | read_only_udm.target.file.full_path | 'ProgramFiles\(x86\)'이 'Program Files (x86)'으로 대체되었습니다. |
fsize | read_only_udm.target.file.size | 부호 없는 정수로 변환되었습니다. |
호스트 이름 | read_only_udm.target.hostname read_only_udm.target.asset.hostname |
타겟이 비어 있는 경우 호스트 이름으로 사용됩니다. |
in | read_only_udm.network.received_bytes | 부호 없는 정수로 변환되었습니다. |
msg | read_only_udm.security_result.description | |
name | read_only_udm.security_result.summary | |
조직 | read_only_udm.target.administrative_domain read_only_udm.metadata.vendor_name |
|
proto | read_only_udm.network.ip_protocol | 'ICMPv6'인 경우 'ICMP'로 대체됩니다. |
product_version | read_only_udm.metadata.product_version | |
결과 | read_only_udm.security_result.summary | |
sev | read_only_udm.security_result.severity read_only_udm.security_result.severity_details |
값에 따라 심각도에 매핑되고 severity_details에도 매핑됩니다. |
shost | read_only_udm.principal.hostname read_only_udm.principal.asset.hostname |
|
src | read_only_udm.principal.ip read_only_udm.principal.asset.ip |
|
srcMAC | read_only_udm.principal.mac | 소문자로 변환됩니다. |
srcPort | read_only_udm.principal.port | 정수로 변환되었습니다. |
suid | read_only_udm.principal.user.userid | |
suser | read_only_udm.principal.user.user_display_name | |
target | read_only_udm.target.hostname read_only_udm.target.asset.hostname |
|
타임스탬프 | read_only_udm.metadata.event_timestamp.seconds read_only_udm.metadata.event_timestamp.nanos |
타임스탬프로 파싱됩니다. |
TrendMicroDsBehaviorType | read_only_udm.security_result.detection_fields.value | |
TrendMicroDsFileSHA1 | read_only_udm.target.file.sha1 | 소문자로 변환됩니다. |
TrendMicroDsFrameType | read_only_udm.security_result.detection_fields.value | |
TrendMicroDsMalwareTarget | read_only_udm.security_result.detection_fields.value | |
TrendMicroDsMalwareTargetCount | read_only_udm.security_result.detection_fields.value | |
TrendMicroDsMalwareTargetType | read_only_udm.security_result.detection_fields.value | |
TrendMicroDsProcess | read_only_udm.security_result.detection_fields.value | 'ProgramFiles\(x86\)'이 'Program Files (x86)'으로 대체되었습니다. |
TrendMicroDsTenant | read_only_udm.security_result.detection_fields.value | |
TrendMicroDsTenantId | read_only_udm.security_result.detection_fields.value | |
usrName | read_only_udm.principal.user.userid | |
read_only_udm.metadata.event_type | 소스와 대상이 모두 있는 경우 'NETWORK_HTTP'로 설정하고, 그렇지 않으면 'GENERIC_EVENT'로 설정합니다. | |
read_only_udm.metadata.log_type | 'TRENDMICRO_DEEP_SECURITY'로 설정됩니다. |
도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가로부터 답변을 받으세요.