Collecter les journaux CipherTrust Manager

Compatible avec :

Ce document explique comment ingérer les journaux CipherTrust Manager dans Google Security Operations à l'aide de l'agent Bindplane.

Avant de commencer

Assurez-vous de remplir les conditions suivantes :

  • Une instance Google SecOps
  • Windows Server 2016 ou version ultérieure, ou hôte Linux avec systemd
  • Connectivité réseau entre l'agent Bindplane et CipherTrust Manager
  • Si vous exécutez l'agent derrière un proxy, assurez-vous que les ports de pare-feu sont ouverts conformément aux exigences de l'agent Bindplane.
  • Accès privilégié à la console Web CipherTrust Manager

Obtenir le fichier d'authentification d'ingestion Google SecOps

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres du SIEM > Agents de collecte.
  3. Téléchargez le fichier d'authentification d'ingestion.
  4. Enregistrez le fichier de manière sécurisée sur le système sur lequel l'agent Bindplane sera installé.

Obtenir l'ID client Google SecOps

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres SIEM> Profil.
  3. Copiez et enregistrez le numéro client de la section Informations sur l'organisation.

Installer l'agent Bindplane

Installez l'agent Bindplane sur votre système d'exploitation Windows ou Linux en suivant les instructions ci-dessous.

Installation de fenêtres

  1. Ouvrez l'invite de commandes ou PowerShell en tant qu'administrateur.
  2. Exécutez la commande suivante :

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    
  3. Attendez la fin de l'installation.

  4. Vérifiez l'installation en exécutant la commande suivante :

    sc query observiq-otel-collector
    

    Le service doit être indiqué comme RUNNING (EN COURS D'EXÉCUTION).

Installation de Linux

  1. Ouvrez un terminal avec les droits root ou sudo.
  2. Exécutez la commande suivante :

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    
  3. Attendez la fin de l'installation.

  4. Vérifiez l'installation en exécutant la commande suivante :

    sudo systemctl status observiq-otel-collector
    

    Le service doit être indiqué comme actif (en cours d'exécution).

Ressources d'installation supplémentaires

Pour obtenir d'autres options d'installation et de dépannage, consultez le guide d'installation de l'agent Bindplane.

Configurer l'agent Bindplane pour ingérer les journaux syslog et les envoyer à Google SecOps

Localiser le fichier de configuration

  • Linux :

    sudo nano /etc/bindplane-agent/config.yaml
    
  • Windows :

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

Modifiez le fichier de configuration

  • Remplacez l'intégralité du contenu de config.yaml par la configuration suivante :

    receivers:
        udplog:
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/ciphertrust_manager:
            compression: gzip
            creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
            customer_id: '<customer_id>'
            endpoint: malachiteingestion-pa.googleapis.com
            log_type: CIPHERTRUST_MANAGER
            raw_log_field: body
    
    service:
        pipelines:
            logs/ciphertrust_manager_to_chronicle:
                receivers:
                    - udplog
                exporters:
                    - chronicle/ciphertrust_manager
    

Paramètres de configuration

Remplacez les espaces réservés suivants :

  • Configuration du récepteur :

    • listen_address : adresse IP et port à écouter :
      • 0.0.0.0 pour écouter sur toutes les interfaces (recommandé)
      • Le port 514 est le port syslog standard (nécessite la racine sous Linux ; utilisez 1514 pour les utilisateurs non racine).
  • Configuration de l'exportateur :

    • creds_file_path : chemin d'accès complet au fichier d'authentification de l'ingestion :
      • Linux : /etc/bindplane-agent/ingestion-auth.json
      • Windows : C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
    • customer_id : ID client copié depuis la console Google SecOps
    • endpoint : URL du point de terminaison régional :
      • États-Unis : malachiteingestion-pa.googleapis.com
      • Europe : europe-malachiteingestion-pa.googleapis.com
      • Asie : asia-southeast1-malachiteingestion-pa.googleapis.com
      • Pour obtenir la liste complète, consultez Points de terminaison régionaux.

Enregistrez le fichier de configuration.

  • Après avoir modifié le fichier, enregistrez-le :
    • Linux : appuyez sur Ctrl+O, puis sur Enter, puis sur Ctrl+X.
    • Windows : cliquez sur Fichier > Enregistrer.

Redémarrez l'agent Bindplane pour appliquer les modifications.

  • Pour redémarrer l'agent Bindplane sous Linux, exécutez la commande suivante :

    sudo systemctl restart observiq-otel-collector
    
    1. Vérifiez que le service est en cours d'exécution :

      sudo systemctl status observiq-otel-collector
      
    2. Recherchez les erreurs dans les journaux :

      sudo journalctl -u observiq-otel-collector -f
      
  • Pour redémarrer l'agent Bindplane dans Windows, choisissez l'une des options suivantes :

    • Invite de commandes ou PowerShell en tant qu'administrateur :

      net stop observiq-otel-collector && net start observiq-otel-collector
      
    • Console Services :

      1. Appuyez sur Win+R, saisissez services.msc, puis appuyez sur Entrée.
      2. Localisez observIQ OpenTelemetry Collector.
      3. Effectuez un clic droit, puis sélectionnez Redémarrer.
      4. Vérifiez que le service est en cours d'exécution :

        sc query observiq-otel-collector
        
      5. Recherchez les erreurs dans les journaux :

        type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
        

Configurer syslog pour CipherTrust Manager

  1. Connectez-vous à la console Web CipherTrust Manager.
  2. Accédez à Paramètres d'administration> Notifications> Syslog.
  3. Cliquez sur Nouveau serveur Syslog.
  4. Fournissez les informations de configuration suivantes :
    • Hôte : saisissez l'adresse IP de l'agent Bindplane.
    • Port : saisissez le numéro de port de l'agent Bindplane (514 par défaut).
    • Format du journal : sélectionnez RFC 5424.
    • Transport : sélectionnez UDP.
  5. Cliquez sur Enregistrer.

Table de mappage UDM

Champ de journal Mappage UDM Logique
message about Mappé : CEFabout
deviceNtDomain about.administrative_domain Renommé/Mappé
deviceExternalId about.asset.asset_id Mappé directement
device_product about.asset.asset_id Mappé directement
device_vendor about.asset.asset_id Mappé directement
fileHash about.file.full_path Mappé directement
filePath about.file.full_path Renommé/Mappé
_hash about.file.sha256 Renommé/Mappé
fileHash about.file.sha256 Renommé/Mappé
fsize about.file.size Renommé/Mappé
dvchost about.hostname Renommé/Mappé
ips about.ip Fusionné
message about.ip Mappé : CEFips
dvc_mac about.mac Mappé : slotmac_address
dvcmac about.mac Fusionné
mac_address about.mac Fusionné
message about.mac Mappé : CEF → mac_address, CEF → dvcmac
deviceTranslatedAddress about.nat_ip Fusionné
message about.nat_ip Mappé : CEFdeviceTranslatedAddress
Emne about.process.command_line Mappé directement
Path about.process.command_line Mappé directement
Subject about.process.command_line Mappé directement
deviceProcessName about.process.command_line Renommé/Mappé
dvcpid about.process.pid Renommé/Mappé
message about.resource.attribute.permissions Mappé : CEFpermissions
permissions about.resource.attribute.permissions Fusionné
Internal_label additional.fields Fusionné
additional_alias_alias_field additional.fields Fusionné
additional_alias_index_field additional.fields Fusionné
additional_alias_type_field additional.fields Fusionné
additional_cfp1 additional.fields Fusionné
additional_cfp2 additional.fields Fusionné
additional_cfp3 additional.fields Fusionné
additional_cfp4 additional.fields Fusionné
additional_cn1 additional.fields Fusionné
additional_cn2 additional.fields Fusionné
additional_cn3 additional.fields Fusionné
additional_cs1 additional.fields Fusionné
additional_cs2 additional.fields Fusionné
additional_cs3 additional.fields Fusionné
additional_cs4 additional.fields Fusionné
additional_cs5 additional.fields Fusionné
additional_cs6 additional.fields Fusionné
additional_cs7 additional.fields Fusionné
additional_devicePayloadId additional.fields Fusionné
additional_eventId additional.fields Fusionné
additional_flexString1 additional.fields Fusionné
additional_fname additional.fields Fusionné
algorithm_label additional.fields Fusionné
app_connector_type_label additional.fields Fusionné
assignSelfAsOwner_label additional.fields Fusionné
auth_domain_label additional.fields Fusionné
client_name_label additional.fields Fusionné
client_type_label additional.fields Fusionné
codeDesc_label additional.fields Fusionné
code_label additional.fields Fusionné
createdAt_label additional.fields Fusionné
cs2 additional.fields Mappé : arc_testadditional_cs2
cs5_label additional.fields Fusionné
customAttributes_label additional.fields Fusionné
deatils_domain_id_label additional.fields Fusionné
details_user_metadata_current_domain_id_label additional.fields Fusionné
details_user_metadata_current_persistedData_label additional.fields Fusionné
details_user_metadata_current_persistedData_paging_label additional.fields Fusionné
domain_id_label additional.fields Fusionné
domain_label additional.fields Fusionné
emptyMaterial_label additional.fields Fusionné
feature_label additional.fields Fusionné
format_label additional.fields Fusionné
generateKeyId_label additional.fields Fusionné
idType_label additional.fields Fusionné
id_label additional.fields Fusionné
identifier_label additional.fields Fusionné
interfaceName_label additional.fields Fusionné
interfaceType_label additional.fields Fusionné
label_label additional.fields Fusionné
message additional.fields Valeurs mappées (71 au total, par exemple CEF → additional_eventId, CEF → `additional_devicePayloa...
messageFormat_label additional.fields Fusionné
meta_label additional.fields Fusionné
objectType_label additional.fields Fusionné
ownerId_label additional.fields Fusionné
padded_label additional.fields Fusionné
permissions_label additional.fields Fusionné
record_type_id_label additional.fields Fusionné
refresh_token_counts_label additional.fields Fusionné
refresh_token_counts_no_label additional.fields Fusionné
refresh_token_counts_total_label additional.fields Fusionné
refresh_token_id_label additional.fields Fusionné
renew_refresh_token_label additional.fields Fusionné
requestId_label additional.fields Fusionné
requestIdentifierType_label additional.fields Fusionné
requestIdentifier_label additional.fields Fusionné
scope_label additional.fields Fusionné
service_label additional.fields Fusionné
switch_domain_id_label additional.fields Fusionné
undeletable_label additional.fields Fusionné
unexportable_label additional.fields Fusionné
version_label additional.fields Fusionné
xts_label additional.fields Fusionné
zone_id_label additional.fields Fusionné
details_grant_type extensions.auth.auth_details Mappé directement
logon_type_temp extensions.auth.mechanism Fusionné
message extensions.auth.mechanism Mappé : CEF → logon_type_temp, Get User → logon_type_temp
message intermediary Mappé : CEFintermediary
proxy_ip intermediary.ip Fusionné
msg metadata.description Renommé/Mappé
Generated metadata.event_timestamp Analysé en tant que yyyy-MM-ddTHH:mm:ss
Received metadata.event_timestamp Analysé en tant que yyyy-MM-ddTHH:mm:ss
event_time metadata.event_timestamp Analysé en tant que ISO8601
rt metadata.event_timestamp Analysé en tant que yyyy-MM-ddTHH:mm:ssZ
syslog_timestamp metadata.event_timestamp Analysé en tant que MMM dd HH:mm:ss
syslog_timestamp_with_year metadata.event_timestamp Analysé en tant que MMM dd HH:mm:ss yyyy
cef_message metadata.event_type Mappé : (Use Key/Update Key/Export Key)USER_RESOURCE_UPDATE_CONTENT
event_name metadata.event_type Mappé : "LogSpyware","LogPredictiveMachineLearning"SCAN_UNCATEGORIZED
has_principal metadata.event_type Mappé : trueNETWORK_CONNECTION
has_user metadata.event_type Mappé : trueUSER_UNCATEGORIZED
message metadata.event_type Valeurs mappées (12 au total, par exemple CEF → PROCESS_UNCATEGORIZED, CEF → SCAN_UNCATEGORIZED, etc.)
device_event_class_id metadata.product_event_type Mappé directement
event_name metadata.product_event_type Mappé directement
externalId metadata.product_log_id Mappé directement
id metadata.product_log_id Mappé directement
uid metadata.product_log_id Mappé directement
device_product metadata.product_name Mappé directement
product metadata.product_name Mappé directement
product_name metadata.product_name Mappé directement
device_version metadata.product_version Mappé directement
device_vendor metadata.vendor_name Renommé/Mappé
app_protocol_output network.application_protocol Mappé directement
deviceDirection network.direction Mappé : 0 → INBOUND, 1 → OUTBOUND
message network.direction Mappé : CEF → INBOUND, CEF → OUTBOUND
requestMethod network.http.method Renommé/Mappé
requestClientApplication network.http.user_agent Renommé/Mappé
ip_protocol_out network.ip_protocol Mappé directement
in network.received_bytes Renommé/Mappé
out network.sent_bytes Renommé/Mappé
sntdom principal.administrative_domain Renommé/Mappé
sourceServiceName principal.application Renommé/Mappé
syslog_host principal.asset.hostname Mappé directement
details_user_metadata_current_domain_name principal.domain.name Mappé directement
Group_name principal.group.group_display_name Mappé directement
Gruppenavn principal.group.group_display_name Mappé directement
Device_name principal.hostname Mappé directement
Enhetsnavn principal.hostname Mappé directement
shost principal.hostname Renommé/Mappé
syslog_host principal.hostname Mappé directement
client_ip principal.ip Fusionné
message principal.ip Mappé : CEF → principal_ip, CEF → shost, CEF → client_ip, "(Échec du handshake SSL…
principal_ip principal.ip Fusionné
shost principal.ip Fusionné
mac principal.mac Fusionné
message principal.mac Mappé : CEFmac
message principal.nat_ip Mappé : CEFsourceTranslatedAddress
sourceTranslatedAddress principal.nat_ip Fusionné
sourceTranslatedPort principal.nat_port Renommé/Mappé
spt principal.port Renommé/Mappé
sproc principal.process.command_line Renommé/Mappé
spid principal.process.pid Renommé/Mappé
acc_label principal.resource.attribute.labels Fusionné
acct_label principal.resource.attribute.labels Fusionné
iss_label principal.resource.attribute.labels Fusionné
jti_label principal.resource.attribute.labels Fusionné
message principal.resource.attribute.labels Valeurs mappées (5 au total, par exemple CEF → acct_label, CEF → acc_label, CEF → iss_label)
sub_label principal.resource.attribute.labels Fusionné
message principal.user.attribute.roles Mappé : CEFprincipal_role
principal_role principal.user.attribute.roles Fusionné
details_username principal.user.user_display_name Mappé directement
suser principal.user.user_display_name Mappé directement
username principal.user.user_display_name Mappé directement
details_user_id principal.user.userid Mappé directement
details_userid principal.user.userid Mappé directement
suid principal.user.userid Renommé/Mappé
user_id principal.user.userid Mappé directement
username principal.user.userid Mappé directement
_security_result security_result Fusionné
message security_result Mappé : CEFsecurity_result
_action security_result.action Fusionné
act security_result.action Mappé : accept → _action, deny → _action
message security_result.action Mappé : CEF_action
Action_Taken security_result.action_details Mappé directement
act security_result.action_details Mappé directement
details_errorMessage security_result.action_details Mappé directement
cat security_result.category_details Fusionné
message security_result.category_details Mappé : CEFcat
Scan_Type security_result.description Mappé directement
Type security_result.description Mappé directement
message security_result.description Mappé directement
msg_data_2 security_result.description Mappé directement
infection_channel_label security_result.detection_fields Fusionné
message security_result.detection_fields Valeurs mappées (7 au total, par exemple CEF → operation_label, CEF → operasjon_label, CEF → "...
operasjon_label security_result.detection_fields Fusionné
operation_label security_result.detection_fields Fusionné
permission_label security_result.detection_fields Fusionné
spyware_Grayware_Type_label security_result.detection_fields Fusionné
threat_probability_label security_result.detection_fields Fusionné
tillatelse_label security_result.detection_fields Fusionné
mwProfile security_result.rule_name Mappé directement
message security_result.severity Mappé : CEF → LOW, CEF → MEDIUM, CEF → HIGH, CEF → CRITICAL
severity security_result.severity Mappé : "0", "1", "2", "3", "LOW" → LOW, "4", "5", "6", "MEDIUM", "SUBSTANTIAL", "INFO"…
Result security_result.summary Mappé directement
appcategory security_result.summary Mappé directement
reason security_result.summary Renommé/Mappé
success security_result.summary Mappé directement
Spyware security_result.threat_name Mappé directement
Unknown_Threat security_result.threat_name Mappé directement
Virus_Malware_Name security_result.threat_name Mappé directement
oldFilePath src.file.full_path Renommé/Mappé
oldFileSize src.file.size Renommé/Mappé
client_ip src.ip Fusionné
message src.ip Mappé : CEFclient_ip
message src.resource.attribute.permissions Mappé : CEFold_permissions
old_permissions src.resource.attribute.permissions Fusionné
cust_client_id src.user.product_object_id Mappé directement
details_client_id src.user.product_object_id Mappé directement
dntdom target.administrative_domain Renommé/Mappé
destinationServiceName target.application Renommé/Mappé
service target.application Mappé directement
service_name target.application Mappé directement
application target.domain.name Mappé directement
details.size target.file.size Renommé/Mappé
details.host target.hostname Mappé directement
target_hostname target.hostname Mappé directement
temp_dhost target.hostname Mappé directement
IPv6_Address target.ip Fusionné
dst_ip target.ip Fusionné
ipv6 target.ip Mappé : -IPv6_Address
message target.ip Mappé : CEF → dst_ip, CEF → IPv6_Address
mac_address target.mac Fusionné
message target.mac Mappé : CEFmac_address
destination_translated_address target.nat_ip Fusionné
message target.nat_ip Mappé : CEFdestination_translated_address
destinationTranslatedPort target.nat_port Renommé/Mappé
details.port target.port Renommé/Mappé
dpt target.port Renommé/Mappé
dproc target.process.command_line Renommé/Mappé
File_name target.process.file.full_path Mappé directement
Infected_Resource target.process.file.full_path Mappé directement
Object target.process.file.full_path Mappé directement
Objekt target.process.file.full_path Mappé directement
dpid target.process.pid Renommé/Mappé
account_label target.resource.attribute.labels Fusionné
connection_label target.resource.attribute.labels Fusionné
message target.resource.attribute.labels Valeurs mappées (6 au total, par exemple CEF → resource_Type_label, CEF → name_label, CEF → `u...
name_label target.resource.attribute.labels Fusionné
resource_Type_label target.resource.attribute.labels Fusionné
uri_label target.resource.attribute.labels Fusionné
usageMask_label target.resource.attribute.labels Fusionné
source target.resource.name Mappé directement
request target.url Mappé directement
message target.user.attribute.roles Mappé : CEFtarget_role
target_role target.user.attribute.roles Fusionné
CustomerName target.user.user_display_name Mappé directement
temp_duser target.user.user_display_name Mappé directement
Bruker target.user.userid Mappé directement
User_value target.user.userid Mappé directement
temp_duid target.user.userid Mappé directement
N/A metadata.event_type Constante : GENERIC_EVENT
N/A network.direction Constante : INBOUND
N/A network.ip_protocol Constante : UDP
N/A security_result.severity Constante : LOW

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.