Collecter les journaux Trend Micro Cloud One
Présentation
Ce parseur gère les journaux au format syslog et JSON de Trend Micro Cloud One. Il extrait les paires clé-valeur des messages au format LEEF, normalise les valeurs de gravité, identifie les entités principales et cibles (adresse IP, nom d'hôte, utilisateur) et mappe les données dans le schéma UDM. Si le format LEEF n'est pas détecté, l'analyseur tente de traiter l'entrée en tant que JSON et d'extraire les champs pertinents en conséquence.
Avant de commencer
- Assurez-vous de disposer d'une instance Google SecOps.
- Assurez-vous de disposer d'un accès privilégié à Trend Micro Cloud One.
- Assurez-vous de disposer d'un hôte Windows 2012 SP2 ou version ultérieure, ou d'un hôte Linux avec systemd.
- Si vous exécutez le programme derrière un proxy, assurez-vous que les ports du pare-feu sont ouverts.
Obtenir le fichier d'authentification d'ingestion Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres SIEM > Agents de collecte.
- Téléchargez le fichier d'authentification d'ingestion.
Obtenir l'ID client Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres SIEM > Profil.
- Copiez et enregistrez le numéro client de la section Informations sur l'organisation.
Installer l'agent BindPlane
- Pour l'installation sous Windows, exécutez le script suivant :
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
. - Pour installer Linux, exécutez le script suivant :
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
. - Vous trouverez d'autres options d'installation dans ce guide d'installation.
Configurer l'agent Bindplane pour ingérer les journaux Syslog et les envoyer à Google SecOps
- Accédez à la machine avec l'agent Bindplane.
Modifiez le fichier
config.yaml
comme suit :receivers: udplog: # Replace the below port <5514> and IP (0.0.0.0) with your specific values listen_address: "0.0.0.0:514" 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: raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
Redémarrez l'agent Bindplane pour appliquer les modifications à l'aide de la commande suivante :
sudo systemctl bindplane restart
Configurer Syslog à partir de Trend Micro Cloud One
- Accédez à Policies > Common Objects > Other > Syslog Configurations.
- Cliquez sur Nouveau > Nouvelle configuration > Général.
- Spécifiez les valeurs des paramètres suivants :
- Nom : nom unique qui identifie la configuration (par exemple, Serveur BindPlane Google SecOps).
- Nom du serveur : saisissez l'adresse IP de l'agent Bindplane.
- Port du serveur : saisissez le port de l'agent Bindplane (par exemple, 514).
- Transport : sélectionnez UDP.
- Format de l'événement : sélectionnez Syslog.
- Inclure le fuseau horaire dans les événements : ne cochez pas cette option.
- Établissement : type de processus auquel les événements seront associés.
- Les agents doivent transférer les journaux : sélectionnez le serveur Syslog.
- Cliquez sur Enregistrer.
Exporter des événements système dans Trend Micro Cloud One
- Accédez à Administration > Paramètres système > Transfert d'événements.
- Transférer les événements système vers un ordinateur distant (via Syslog) à l'aide d'une configuration : sélectionnez la configuration créée à l'étape précédente.
- Cliquez sur Enregistrer.
Exporter des événements de sécurité dans Trend Micro Cloud One
- Accédez à Règles.
- Cliquez sur la règle utilisée par les ordinateurs.
- Accédez à Paramètres > Transfert d'événements.
- Fréquence de transfert des événements (à partir de l'agent/de l'appliance) : sélectionnez Période entre l'envoi des événements et indiquez la fréquence à laquelle les événements de sécurité seront transférés.
- Configuration du transfert d'événements (à partir de l'agent/de l'appliance) : sélectionnez Configuration Syslog anti-malware, puis la configuration créée à l'étape précédente.
- Cliquez sur Enregistrer.
Table de mappage UDM
Champ de journal | Mappage UDM | Logique |
---|---|---|
agir | security_result.action |
Si act est défini sur "deny" ou "block" (sans tenir compte de la casse), alors BLOCK . Si act est défini sur "pass" ou "allow" (non sensible à la casse), alors ALLOW . Si act est défini sur "update" ou "rename" (sans tenir compte de la casse), alors ALLOW_WITH_MODIFICATION . Si act est défini sur "quarantine" (non sensible à la casse), alors QUARANTINE . Dans le cas contraire, UNKNOWN_ACTION . |
agir | security_result.action_details |
Mappé directement. |
cat | security_result.category_details |
Mappé directement. |
cn1 | target.asset_id |
Préfixé par "ID de l'hôte :" si cn1Label est "ID de l'hôte". |
décroiss. | metadata.description |
Mappé directement. |
dvchost | target.asset.hostname |
Mappé directement. |
dvchost | target.hostname |
Mappé directement. |
log_type | metadata.product_name |
Mappé directement. |
Message | security_result.description |
Mappé directement. |
nom | security_result.summary |
Mappé directement. |
organisation | target.administrative_domain |
Mappé directement. |
proto | additional.fields.key |
Définissez-le sur "Protocole" si le champ proto ne peut pas être converti en entier. |
proto | additional.fields.value.string_value |
Mappé directement si le champ proto ne peut pas être converti en entier. |
proto | network.ip_protocol |
Mappé à l'aide de la logique parse_ip_protocol.include , qui convertit le numéro de protocole en nom correspondant (par exemple, "6" devient "TCP"). |
product_version | metadata.product_version |
Mappé directement. |
sev | security_result.severity |
Si sev est défini sur "0", "1", "2", "3" ou "low" (non sensible à la casse), alors LOW . Si sev est "4", "5", "6" ou "medium" (non sensible à la casse), alors MEDIUM . Si sev est "7", "8" ou "high" (non sensible à la casse), alors HIGH . Si sev est "9", "10" ou "very high" (non sensible à la casse), alors CRITICAL . |
sev | security_result.severity_details |
Mappé directement. |
src | principal.asset.hostname |
Mappé directement s'il ne s'agit pas d'une adresse IP valide. |
src | principal.asset.ip |
Mappée directement s'il s'agit d'une adresse IP valide. |
src | principal.hostname |
Mappé directement s'il ne s'agit pas d'une adresse IP valide. |
src | principal.ip |
Mappée directement s'il s'agit d'une adresse IP valide. |
TrendMicroDsTenant | security_result.detection_fields.key |
Définissez-le sur "TrendMicroDsTenant". |
TrendMicroDsTenant | security_result.detection_fields.value |
Mappé directement. |
TrendMicroDsTenantId | security_result.detection_fields.key |
Défini sur "TrendMicroDsTenantId". |
TrendMicroDsTenantId | security_result.detection_fields.value |
Mappé directement. |
usrName | principal.user.userid |
Mappé directement. Si has_principal est "true" et has_target est "true", alors NETWORK_CONNECTION . Sinon, si has_principal est "true", alors STATUS_UPDATE . Sinon, si has_target est vrai et has_principal est faux, alors USER_UNCATEGORIZED . Dans le cas contraire, GENERIC_EVENT . Définie sur AUTHTYPE_UNSPECIFIED , si event_type est USER_UNCATEGORIZED . Défini sur "true" si une adresse IP, un nom d'hôte ou une adresse MAC principale sont extraits. Sinon, la valeur est définie sur "false". Défini sur "true" si une adresse IP, un nom d'hôte ou une adresse MAC cible sont extraits. Sinon, la valeur est définie sur "false". Identique au code temporel de l'événement de premier niveau. Définissez-le sur "Trend Micro". |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.