Fortra Digital Guardian DLP 로그 수집

다음에서 지원:

이 문서에서는 Bindplane 에이전트를 사용하여 Fortra Digital Guardian DLP 로그를 Google Security Operations에 수집하는 방법을 설명합니다. 파서 코드는 원시 JSON 형식 로그를 통합 데이터 모델 (UDM)로 변환합니다. 먼저 원시 JSON에서 필드를 추출하고 데이터 정리 및 정규화를 실행한 다음 추출된 필드를 해당 UDM 속성에 매핑하여 식별된 활동에 따라 특정 이벤트 유형으로 데이터를 보강합니다.

시작하기 전에

  • Google Security Operations 인스턴스가 있는지 확인합니다.
  • Windows 2016 이상 또는 systemd가 설치된 Linux 호스트를 사용하고 있는지 확인합니다.
  • 프록시 뒤에서 실행하는 경우 방화벽 포트가 열려 있는지 확인합니다.
  • Fortra Digital Guardian DLP에 대한 권한 액세스 권한이 있는지 확인합니다.

Google SecOps 수집 인증 파일 가져오기

  1. Google SecOps 콘솔에 로그인합니다.
  2. SIEM 설정 > 수집 에이전트로 이동합니다.
  3. 수집 인증 파일을 다운로드합니다. Bindplane이 설치될 시스템에 파일을 안전하게 저장합니다.

Google SecOps 고객 ID 가져오기

  1. Google SecOps 콘솔에 로그인합니다.
  2. SIEM 설정 > 프로필로 이동합니다.
  3. 조직 세부정보 섹션에서 고객 ID를 복사하여 저장합니다.

Bindplane 에이전트 설치

Windows 설치

  1. 명령 프롬프트 또는 PowerShell을 관리자로 엽니다.
  2. 다음 명령어를 실행합니다.

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Linux 설치

  1. 루트 또는 sudo 권한으로 터미널을 엽니다.
  2. 다음 명령어를 실행합니다.

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

추가 설치 리소스

Syslog를 수집하여 Google SecOps로 전송하도록 Bindplane 에이전트 구성

  1. 구성 파일에 액세스합니다.

    1. config.yaml 파일을 찾습니다. 일반적으로 Linux에서는 /etc/bindplane-agent/ 디렉터리에 있고 Windows에서는 설치 디렉터리에 있습니다.
    2. 텍스트 편집기 (예: nano, vi, 메모장)를 사용하여 파일을 엽니다.
  2. 다음과 같이 config.yaml 파일을 수정합니다.

    receivers:
        udplog:
            # Replace the port and IP address as required
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the path to the credentials file you downloaded in Step 1
            creds: '/path/to/ingestion-authentication-file.json'
            # Replace with your actual customer ID from Step 2
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # Add optional ingestion labels for better organization
            ingestion_labels:
                log_type: DIGITALGUARDIAN_DLP
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. 인프라에 필요한 대로 포트와 IP 주소를 바꿉니다.

  4. <customer_id>를 실제 고객 ID로 바꿉니다.

  5. Google SecOps 수집 인증 파일 가져오기 섹션에서 인증 파일이 저장된 경로로 /path/to/ingestion-authentication-file.json를 업데이트합니다.

Bindplane 에이전트를 다시 시작하여 변경사항 적용

  • Linux에서 Bindplane 에이전트를 다시 시작하려면 다음 명령어를 실행합니다.

    sudo systemctl restart bindplane-agent
    
  • Windows에서 Bindplane 에이전트를 다시 시작하려면 서비스 콘솔을 사용하거나 다음 명령어를 입력하면 됩니다.

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Fortra Digital Guardian Syslog 내보내기 구성

  1. Digital Guardian Management Console에 로그인합니다.
  2. Workspace > 데이터 내보내기 > 내보내기 만들기로 이동합니다.
  3. 데이터 소스 목록에서 알림 또는 이벤트를 데이터 소스로 선택합니다.
  4. 내보내기 유형으로 Syslog를 선택합니다.
  5. 유형 목록에서 UDP를 선택합니다. Bindplane 구성에 따라 전송 프로토콜로 TCP를 선택할 수도 있습니다.

  6. 서버 필드에 Bindplane 에이전트 IP 주소를 입력합니다.

  7. 포트 필드에 514을 입력합니다 (Bindplane 에이전트 구성에 따라 다른 포트를 제공할 수 있음).

  8. 심각도 수준 목록에서 심각도 수준을 선택합니다.

  9. Is Active(활성) 체크박스를 선택합니다.

  10. 다음을 클릭합니다.

  11. 사용 가능한 필드 목록에서 데이터 내보내기를 위한 모든 알림 및 이벤트 필드를 추가합니다.

  12. 데이터 내보내기의 필드에 대한 기준을 선택합니다.

  13. 다음을 클릭합니다.

  14. 기준으로 사용할 그룹을 선택합니다.

  15. 다음을 클릭합니다.

  16. 쿼리 테스트를 클릭합니다.

  17. 다음을 클릭합니다.

  18. 저장을 클릭합니다.

UDM 매핑 테이블

로그 필드 UDM 매핑 논리
에이전트 버전 observer.platform_version 원시 로그 필드 Agent Version에서 직접 매핑됩니다.
애플리케이션 principal.process.command_line 비어 있지 않은 경우 원시 로그 필드 Application에서 직접 매핑됩니다.
명령줄 target.process.command_line 원시 로그 필드 Command Line에서 직접 매핑됩니다.
회사 이름 principal.user.company_name 원시 로그 필드 Company Name에서 직접 매핑됩니다.
컴퓨터 이름 principal.hostname 원시 로그 필드 Computer Name에서 직접 매핑됩니다.
DNS 호스트 이름 target.asset.hostname 원시 로그 필드 DNS Hostname에서 직접 매핑됩니다.
대상 드라이브 유형 about.labels.value 원시 로그 필드 Destination Drive Type에서 직접 매핑됩니다. 해당 키는 Destination Drive Type으로 설정됩니다.
대상 파일 확장자 target.file.mime_type no extension 또는 [no extension]가 아닌 경우 원시 로그 필드 Destination File Extension에서 직접 매핑됩니다.
대상 파일 경로 target.file.full_path 원시 로그 필드 Destination File Path에서 직접 매핑됩니다.
기기 GUID src.resource.id GUID: 접두사가 있는 원시 로그 필드 Device GUID에서 매핑되었습니다.
보낸 사람 network.email.from 비어 있지 않은 경우 원시 로그 필드 Email Sender에서 직접 매핑됩니다.
이메일 제목 network.email.subject Email Sender가 비어 있지 않은 경우 원시 로그 필드 Email Subject에서 직접 매핑됩니다.
이벤트 표시 이름 target.resource.type 원시 로그 필드 Event Display Name에서 직접 매핑됩니다.
이벤트 시간 metadata.event_timestamp.seconds yyyy-MM-dd HH:mm:ss ATIMESTAMP_ISO8601 형식을 사용하여 원시 로그 필드 Event Time에서 타임스탬프로 변환되었습니다.
파일 설명 metadata.description 원시 로그 필드 File Description에서 직접 매핑됩니다.
파일 크기 about.labels.value 원시 로그 필드 File Size에서 직접 매핑됩니다. 해당 키는 File Size으로 설정됩니다.
파일 버전 about.labels.value 원시 로그 필드 File Version에서 직접 매핑됩니다. 해당 키는 File Version으로 설정됩니다.
IP 주소 principal.ip Source IP Address이 비어 있는 경우 원시 로그 필드 IP Address에서 직접 매핑됩니다.
로컬 포트 principal.port 비어 있지 않고 정수로 변환된 경우 원시 로그 필드 Local Port에서 직접 매핑됩니다.
MAC 주소 target.mac 비어 있지 않은 경우 원시 로그 필드 MAC Address에서 직접 매핑됩니다.
머신 ID principal.asset.asset_id MachineId: 접두사가 있는 원시 로그 필드 Machine ID에서 매핑되었습니다.
머신 유형 principal.asset.category 원시 로그 필드 Machine Type에서 직접 매핑됩니다.
MD5 해시 target.process.file.md5 소문자로 변환한 후 원시 로그 필드 MD5 Hash에서 직접 매핑됩니다.
네트워크 방향 network.direction 원시 로그 필드 Network Direction에서 매핑되었습니다. Inbound이면 INBOUND로 설정합니다. Outbound이면 OUTBOUND로 설정합니다.
작업 유형 security_result.action_details 원시 로그 필드 Operation Type에서 직접 매핑됩니다.
상위 애플리케이션 principal.process.parent_process.command_line 비어 있지 않은 경우 원시 로그 필드 Parent Application에서 직접 매핑됩니다.
상위 MD5 해시 target.process.parent_process.file.md5 16진수 문자열 패턴과 일치하는 경우 소문자로 변환한 후 원시 로그 필드 Parent MD5 Hash에서 직접 매핑됩니다.
프로세스 도메인 target.administrative_domain 원시 로그 필드 Process Domain에서 직접 매핑됩니다.
파일 확장자 처리 target.process.file.mime_type no extension 또는 [no extension]가 아닌 경우 원시 로그 필드 Process File Extension에서 직접 매핑됩니다.
프로세스 경로 target.process.file.full_path 원시 로그 필드 Process Path에서 직접 매핑됩니다.
프로세스 PID principal.process.pid 문자열로 변환된 후 원시 로그 필드 Process PID에서 직접 매핑됩니다.
제품 이름 metadata.product_name 원시 로그 필드 Product Name에서 직접 매핑됩니다.
제품 버전 metadata.product_version 원시 로그 필드 Product Version에서 직접 매핑됩니다.
프로토콜 network.application_protocol HTTP 또는 HTTPS이면 HTTPS로 설정합니다.
프린터 이름 src.resource.name 원시 로그 필드 Printer Name에서 직접 매핑됩니다.
원격 포트 target.port 비어 있지 않고 정수로 변환된 경우 원시 로그 필드 Remote Port에서 직접 매핑됩니다.
SHA1 해시 target.process.file.sha1 소문자로 변환한 후 원시 로그 필드 SHA1 Hash에서 직접 매핑됩니다.
SHA256 해시 target.process.file.sha256 소문자로 변환한 후 원시 로그 필드 SHA256 Hash에서 직접 매핑됩니다.
서명 발급자 network.tls.server.certificate.issuer 원시 로그 필드 Signature Issuer에서 직접 매핑됩니다.
서명 제목 network.tls.server.certificate.subject 원시 로그 필드 Signature Subject에서 직접 매핑됩니다.
소스 파일 확장자 src.file.mime_type no extension 또는 [no extension]가 아닌 경우 원시 로그 필드 Source File Extension에서 직접 매핑됩니다.
소스 파일 경로 src.file.full_path 원시 로그 필드 Source File Path에서 직접 매핑됩니다.
소스 IP 주소 principal.ip 비어 있지 않은 경우 원시 로그 필드 Source IP Address에서 직접 매핑됩니다.
전체 크기 about.labels.value 원시 로그 필드 Total Size에서 직접 매핑됩니다. 해당 키는 Total Size으로 설정됩니다.
URL 경로 target.url 원시 로그 필드 URL Path에서 직접 매핑됩니다.
고유 ID metadata.product_log_id 원시 로그 필드 Unique ID에서 직접 매핑됩니다.
사용자 principal.user.userid 원시 로그 필드 User에서 직접 매핑됩니다.
세부정보가 차단됨 security_result.action Yes이면 BLOCK로 설정합니다. No이면 ALLOW로 설정합니다.
dg_dst_dev.dev_prdname target.asset.hardware.model 원시 로그 필드 dg_dst_dev.dev_prdname에서 직접 매핑됩니다.
dg_dst_dev.dev_sernum target.asset.hardware.serial_number 원시 로그 필드 dg_dst_dev.dev_sernum에서 직접 매핑됩니다.
dg_recipients.uad_mr network.email.to 이메일 주소 패턴과 일치하는 경우 원시 로그 필드 dg_recipients.uad_mr에서 직접 매핑됩니다.
dg_src_dev.dev_prdname principal.asset.hardware.model 원시 로그 필드 dg_src_dev.dev_prdname에서 직접 매핑됩니다.
dg_src_dev.dev_sernum principal.asset.hardware.serial_number 원시 로그 필드 dg_src_dev.dev_sernum에서 직접 매핑됩니다.
metadata.event_type metadata.event_type 처음에는 GENERIC_EVENT로 설정합니다. 특정 조건에 따라 변경됨:
~NETWORK_HTTP: 호스트 이름, HTTP/HTTPS 프로토콜, MAC 주소가 있는 경우
~FILE_COPY: 대상 및 소스 파일 경로가 있고 Operation TypeFile Copy인 경우
~FILE_MOVE: 대상 및 소스 파일 경로가 있고 Operation TypeFile Move인 경우
~FILE_UNCATEGORIZED: 대상 파일 경로, 프로세스 경로/명령줄이 있고 Operation TypeFile이 포함된 경우
~USER_LOGOUT: 사용자 ID가 있고 Operation TypeLogoff이 포함된 경우
~USER_LOGIN: 사용자 ID가 있고 Operation TypeLogon이 포함된 경우
~NETWORK_UNCATEGORIZED: 프로세스 경로/명령줄, 프로세스 ID, 아웃바운드 네트워크 방향, MAC 주소가 있는 경우
~SCAN_PROCESS: 프로세스 경로/명령줄과 프로세스 ID가 있는 경우
~PROCESS_UNCATEGORIZED: 프로세스 경로/명령줄이 있는 경우
metadata.log_type metadata.log_type DIGITALGUARDIAN_DLP로 설정합니다.
metadata.product_log_id metadata.product_log_id 원시 로그 필드 Unique ID에서 직접 매핑됩니다.
metadata.product_name metadata.product_name 원시 로그 필드 Product Name에서 직접 매핑됩니다.
metadata.product_version metadata.product_version 원시 로그 필드 Product Version에서 직접 매핑됩니다.
metadata.vendor_name metadata.vendor_name DigitalGuardian로 설정합니다.
network.application_protocol network.application_protocol ProtocolHTTP 또는 HTTPS이면 HTTPS로 설정합니다.
network.direction network.direction 원시 로그 필드 Network Direction에서 매핑되었습니다. Inbound이면 INBOUND로 설정합니다. Outbound이면 OUTBOUND로 설정합니다.
network.email.from network.email.from 비어 있지 않은 경우 원시 로그 필드 Email Sender에서 직접 매핑됩니다.
network.email.subject network.email.subject Email Sender가 비어 있지 않은 경우 원시 로그 필드 Email Subject에서 직접 매핑됩니다.
network.email.to network.email.to 이메일 주소 패턴과 일치하는 경우 원시 로그 필드 dg_recipients.uad_mr에서 직접 매핑됩니다.
network.tls.server.certificate.issuer network.tls.server.certificate.issuer 원시 로그 필드 Signature Issuer에서 직접 매핑됩니다.
network.tls.server.certificate.subject network.tls.server.certificate.subject 원시 로그 필드 Signature Subject에서 직접 매핑됩니다.
observer.platform_version observer.platform_version 원시 로그 필드 Agent Version에서 직접 매핑됩니다.
principal.asset.asset_id principal.asset.asset_id MachineId: 접두사가 있는 원시 로그 필드 Machine ID에서 매핑되었습니다.
principal.asset.category principal.asset.category 원시 로그 필드 Machine Type에서 직접 매핑됩니다.
principal.asset.hardware.model principal.asset.hardware.model 원시 로그 필드 dg_src_dev.dev_prdname에서 직접 매핑됩니다.
principal.asset.hardware.serial_number principal.asset.hardware.serial_number 원시 로그 필드 dg_src_dev.dev_sernum에서 직접 매핑됩니다.
principal.hostname principal.hostname 원시 로그 필드 Computer Name에서 직접 매핑됩니다.
principal.ip principal.ip 비어 있지 않은 경우 원시 로그 필드 Source IP Address에서 직접 매핑됩니다. 비어 있지 않은 경우 IP Address에서 매핑됩니다.
principal.port principal.port 비어 있지 않고 정수로 변환된 경우 원시 로그 필드 Local Port에서 직접 매핑됩니다.
principal.process.command_line principal.process.command_line 비어 있지 않은 경우 원시 로그 필드 Application에서 직접 매핑됩니다.
principal.process.parent_process.command_line principal.process.parent_process.command_line 비어 있지 않은 경우 원시 로그 필드 Parent Application에서 직접 매핑됩니다.
principal.process.parent_process.file.md5 principal.process.parent_process.file.md5 16진수 문자열 패턴과 일치하는 경우 소문자로 변환한 후 원시 로그 필드 Parent MD5 Hash에서 직접 매핑됩니다.
principal.process.pid principal.process.pid 문자열로 변환된 후 원시 로그 필드 Process PID에서 직접 매핑됩니다.
principal.user.company_name principal.user.company_name 원시 로그 필드 Company Name에서 직접 매핑됩니다.
principal.user.userid principal.user.userid 원시 로그 필드 User에서 직접 매핑됩니다.
security_result.action security_result.action Was Detail BlockedYes이면 BLOCK로 설정합니다. Was Detail BlockedNo이면 ALLOW로 설정합니다.
security_result.action_details security_result.action_details 원시 로그 필드 Operation Type에서 직접 매핑됩니다.
src.file.full_path src.file.full_path 원시 로그 필드 Source File Path에서 직접 매핑됩니다.
src.file.mime_type src.file.mime_type no extension 또는 [no extension]가 아닌 경우 원시 로그 필드 Source File Extension에서 직접 매핑됩니다.
src.resource.id src.resource.id GUID: 접두사가 있는 원시 로그 필드 Device GUID에서 매핑되었습니다.
src.resource.name src.resource.name 원시 로그 필드 Printer Name에서 직접 매핑됩니다.
target.administrative_domain target.administrative_domain 원시 로그 필드 Process Domain에서 직접 매핑됩니다.
target.asset.hardware.model target.asset.hardware.model 원시 로그 필드 dg_dst_dev.dev_prdname에서 직접 매핑됩니다.
target.asset.hardware.serial_number target.asset.hardware.serial_number 원시 로그 필드 dg_dst_dev.dev_sernum에서 직접 매핑됩니다.
target.asset.hostname target.asset.hostname 원시 로그 필드 DNS Hostname에서 직접 매핑됩니다.
target.asset.product_object_id target.asset.product_object_id 원시 로그 필드 Adapter Name에서 직접 매핑됩니다.
target.file.full_path target.file.full_path 원시 로그 필드 Destination File Path에서 직접 매핑됩니다.
target.file.mime_type target.file.mime_type no extension 또는 [no extension]가 아닌 경우 원시 로그 필드 Destination File Extension에서 직접 매핑됩니다.
target.mac target.mac 비어 있지 않은 경우 원시 로그 필드 MAC Address에서 직접 매핑됩니다.
target.port target.port 비어 있지 않고 정수로 변환된 경우 원시 로그 필드 Remote Port에서 직접 매핑됩니다.
target.process.command_line target.process.command_line 원시 로그 필드 Command Line에서 직접 매핑됩니다.
target.process.file.full_path target.process.file.full_path 원시 로그 필드 Process Path에서 직접 매핑됩니다.
target.process.file.md5 target.process.file.md5 소문자로 변환한 후 원시 로그 필드 MD5 Hash에서 직접 매핑됩니다.
target.process.file.mime_type target.process.file.mime_type no extension 또는 [no extension]가 아닌 경우 원시 로그 필드 Process File Extension에서 직접 매핑됩니다.
target.process.file.sha1 target.process.file.sha1 소문자로 변환한 후 원시 로그 필드 SHA1 Hash에서 직접 매핑됩니다.
target.process.file.sha256 target.process.file.sha256 소문자로 변환한 후 원시 로그 필드 SHA256 Hash에서 직접 매핑됩니다.
target.process.parent_process.command_line target.process.parent_process.command_line 비어 있지 않은 경우 원시 로그 필드 Parent Application에서 직접 매핑됩니다.
target.process.parent_process.file.md5 target.process.parent_process.file.md5 16진수 문자열 패턴과 일치하는 경우 소문자로 변환한 후 원시 로그 필드 Parent MD5 Hash에서 직접 매핑됩니다.
target.resource.type target.resource.type 원시 로그 필드 Event Display Name에서 직접 매핑됩니다.
target.url target.url 원시 로그 필드 URL Path에서 직접 매핑됩니다.
extensions.auth.type extensions.auth.type Operation TypeUser Logoff 또는 User Logon이면 AUTHTYPE_UNSPECIFIED로 설정합니다.

도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가로부터 답변을 받으세요.