Collecter les journaux Fluentd
Ce document explique comment collecter des journaux Fluentd en configurant Fluentd et un transmetteur Google Security Operations. Ce document liste également les types de journaux et la version de Fluentd compatibles.
Pour en savoir plus, consultez Ingestion de données dans Google Security Operations.
Présentation
Le schéma d'architecture de déploiement suivant montre comment Fluentd est installé sur le serveur de transfert et le serveur d'agrégation pour envoyer les journaux à Google Security Operations. Chaque déploiement client peut différer de cette représentation et être plus complexe.
Le schéma d'architecture montre les composants suivants :
Système Linux. Système Linux à surveiller. Le système Linux se compose des fichiers à surveiller et du serveur de transfert Fluentd.
Système Microsoft Windows Système Microsoft Windows à surveiller sur lequel le serveur de transfert Fluentd est installé.
Transférer Fluentd Le redirecteur Fluentd collecte des informations à partir du système Microsoft Windows ou Linux, puis les transmet à l'agrégateur Fluentd.
Agrégateur Fluentd : L'agrégateur Fluentd reçoit les journaux du transmetteur Fluentd et les transmet au transmetteur Google Security Operations.
Agent Bindplane L'agent Bindplane récupère les journaux de Zscaler ZPA et les envoie à Google SecOps.
Transférer les journaux Google Security Operations Le transmetteur Google Security Operations est un composant logiciel léger, déployé dans le réseau du client, qui est compatible avec syslog. Le redirecteur Google Security Operations transfère les journaux vers Google Security Operations.
Google Security Operations Google Security Operations conserve et analyse les journaux de l'agrégateur Fluentd.
Un libellé d'ingestion identifie l'analyseur qui normalise les données de journaux brutes au format UDM structuré. Les informations de ce document s'appliquent au parseur avec le libellé d'ingestion FLUENTD
.
Avant de commencer
Assurez-vous que le transmetteur Fluentd est installé sur les systèmes Microsoft Windows ou Linux que vous prévoyez de surveiller. Pour en savoir plus sur l'installation du redirecteur Fluentd, consultez Installation de Fluentd.
Utilisez une version de Fluentd compatible avec l'analyseur Google Security Operations. L'analyseur Google Security Operations est compatible avec la version 1.0 de Fluentd.
Assurez-vous que l'agrégateur Fluentd est installé et configuré sur le serveur Linux central.
Assurez-vous que tous les systèmes de l'architecture de déploiement sont configurés dans le fuseau horaire UTC.
Vérifiez les types de journaux compatibles avec l'analyseur Google Security Operations. Le tableau suivant liste les produits et les chemins d'accès aux fichiers journaux compatibles avec l'analyseur Google Security Operations :
Système d'exploitation Produit Chemin d'accès au fichier journal Microsoft Windows Microsoft Windows Journaux des événements Linux Linux /var/log/audit/audit.log Linux Linux /var/log/syslog Linux apache2 /var/log/apache2/access.log Linux apache2 /var/log/apache2/error.log Linux apache2 /var/log/apache2/other_vhosts_access.log Linux apache2 /var/log/apache2/novnc-server-access.log Linux OpenVpn /var/log/openvpnas.log Linux Nginx /var/log/nginx/access.log Linux Nginx /var/log/nginx/error.log Linux rkhunter /var/log/rkhunter.log Linux Linux /var/log/auth.log Linux Linux /var/log/kern.log Linux rundeck /var/log/rundeck/service.log Linux Samba /var/log/samba/log.winbindd Linux Linux /var/log/mail.log
Configurer le redirecteur et l'agrégateur Fluentd, ainsi que le redirecteur Google Security Operations
Pour surveiller les journaux générés par les systèmes Linux, créez un fichier
td-agent.conf
afin de spécifier la configuration de surveillance des journaux pour le transmetteur Fluentd. Voici un exemple de fichier de configuration pour le transmetteur Fluentd sur le système Linux :<source> @type tail path /var/log/nginx/access.log pos_file /var/log/td-agent/nginx-access.log.pos tag mytag.nginx.access <parse> @type none </parse> </source> <source> @type tail path /var/log/nginx/error.log pos_file /var/log/td-agent/nginx-error.log.pos tag mytag.nginx.error <parse> @type none </parse> </source> <source> @type tail path /var/log/apache2/access.log pos_file /var/log/td-agent/apache-access.log.pos tag mytag.apache.access <parse> @type none </parse> </source> <source> @type tail path /var/log/apache2/error.log pos_file /var/log/td-agent/apache-error.log.pos tag mytag.apache.error <parse> @type none </parse> </source> <source> @type tail path /var/log/audit/audit.log pos_file /var/log/td-agent/audit.log.pos tag mytag.audit <parse> @type none </parse> </source> <source> @type tail path /var/log/syslog/syslog.log pos_file /var/log/td-agent/syslog.log.pos tag mytag.syslog <parse> @type none </parse> </source> <source> @type tail path /var/log/apache2/other_vhosts_access.log pos_file /var/log/td-agent/vhost.log.pos tag mytag.apache.other_vhosts_access <parse> @type none </parse> </source> <source> @type tail path /var/log/apache2/novnc-server-access.log pos_file /var/log/td-agent/novnc.log.pos tag mytag.apache.novnc-server-access <parse> @type none </parse> </source> <source> @type tail path /var/log/openvpnas.log pos_file /var/log/td-agent/openvpnas.log.pos tag mytag.openvpnas <parse> @type none </parse> </source> <source> @type tail path /var/log/auth.log pos_file /var/log/td-agent/auth.log.pos tag mytag.auth <parse> @type none </parse> </source> <source> @type tail path /var/log/kern.log pos_file /var/log/td-agent/kern.log.pos tag mytag.kern <parse> @type none </parse> </source> <source> @type tail path /var/log/rundeck/service.log pos_file /var/log/td-agent/rundeck.log.pos tag mytag.rundeck <parse> @type none </parse> </source> <source> @type tail path /var/log/mail.log pos_file /var/log/td-agent/mail.log.pos tag mytag.mail <parse> @type none </parse> </source> <source> @type tail path /var/log/rkhunter.log pos_file /var/log/td-agent/rkhunter.log.pos tag mytag.rkhunter <parse> @type none </parse> </source> <source> @type tail Path /var/log/samba/log.winbindd pos_file /var/log/td-agent/winbindd.log.pos tag mytag.winbindd <parse> @type none </parse> </source> <filter mytag.**> @type record_transformer <record> forwarder_hostname "#{Socket.gethostname}" </record> </filter> <filter mytag.nginx.access.**> @type record_transformer <record> path "/var/log/nginx/access.log" </record> </filter> <filter mytag.nginx.error.**> @type record_transformer <record> path "/var/log/nginx/error.log" </record> </filter> <filter mytag.apache.access.**> @type record_transformer <record> path "/var/log/apache2/access.log" </record> </filter> <filter mytag.apache.error.**> @type record_transformer <record> path "/var/log/apache2/error.log" </record> </filter> <filter mytag.audit.**> @type record_transformer <record> path "/var/log/audit/audit.log" </record> </filter> <filter mytag.syslog.**> @type record_transformer <record> path "/var/log/syslog/syslog.log" </record> </filter> <filter mytag.apache.other_vhosts_access.**> @type record_transformer <record> path "/var/log/apache2/other_vhosts_access.log" </record> </filter> <filter mytag.apache.novnc-server-access.**> @type record_transformer <record> path "/var/log/apache2/novnc-server-access.log" </record> </filter> <filter mytag.openvpnas.**> @type record_transformer <record> path "/var/log/openvpnas.log" </record> </filter> <filter mytag.auth.**> @type record_transformer <record> path "/var/log/auth.log" </record> </filter> <filter mytag.kern.**> @type record_transformer <record> path "/var/log/kern.log" </record> </filter> <filter mytag.rundeck.**> @type record_transformer <record> path "/var/log/rundeck/service.log" </record> </filter> <filter mytag.mail.**> @type record_transformer <record> path "/var/log/mail.log" </record> </filter> <filter mytag.rkhunter.**> @type record_transformer <record> path "/var/log/rkhunter.log" </record> </filter> <filter mytag.winbindd.**> @type record_transformer <record> path "/var/log/samba/log.winbindd" </record> </filter> <match mytag.**> @type forward # primary host <server> host <AGGREGATOR_HOSTNAME> port <AGGREGATOR_PORT> </server> </match>
Pour surveiller les journaux générés par les systèmes Microsoft Windows, créez un fichier
td-agent.conf
afin de spécifier la configuration de surveillance des journaux pour le transmetteur Fluentd. Voici un exemple de fichier de configuration pour le redirecteur Fluentd sur le système Microsoft Windows :<source> @type windows_eventlog @id windows_eventlog channels application,security,system read_existing_events true read_interval 2 tag windows.raw render_as_xml true <storage> @type local persistent true path E:\windows.pos </storage> </source> <match windowslog> @type forward <server> host <AGGREGATOR_HOSTNAME> port <AGGREGATOR_PORT> username <AGGREGATOR_USERNAME> password <AGGREGATOR_PASSWORD> </server> </match>
Pour transférer les journaux de l'agrégateur Fluentd vers le transfert Google Security Operations, créez un fichier de configuration au format suivant :
<source> @type forward port <AGGREGATOR_PORT> </source> ## Forwarding <match mytag.**> @id output_system_forward @type forward # IP and port of the forwarder <server> host <CHRONICLE_FORWARDER_HOSTNAME> port <CHRONICLE_FORWARDER_PORT> </server> </match>
Configurez le redirecteur Google Security Operations pour envoyer les journaux à Google Security Operations. Pour en savoir plus, consultez Installer et configurer le transmetteur sur Linux. Voici un exemple de configuration de redirecteur Google Security Operations :
common: enabled: true data_type: FLUENTD batch_n_seconds: 10 batch_n_bytes: 1048576 tcp_address: 0.0.0.0:10514 connection_timeout_sec: 60
Transférer des journaux vers Google SecOps à l'aide de l'agent Bindplane
- Installez et configurez une machine virtuelle Linux.
- Installez et configurez l'agent Bindplane sur Linux pour transférer les journaux vers Google SecOps. Pour savoir comment installer et configurer l'agent Bindplane, consultez les instructions d'installation et de configuration de l'agent Bindplane.
Si vous rencontrez des problèmes lors de la création de flux, contactez l'assistance Google SecOps.
Formats de journaux Fluentd acceptés
L'analyseur Fluentd est compatible avec les journaux au format SYSLOG+JSON.
Exemples de journaux Fluentd acceptés
SYSLOG + JSON
"2022-06-30T17:10:10+05:30 mytag.apache.error {\"message\":\"[Sat Jun 02 00:30:55 2022] New connection: [connection: gTxkX8Z6tjk] [client 172.17.0.1:50786]\",\"forwarder_hostname\":\"Ubuntu18\",\"path\":\"/var/log/apache2/error.log\"}"
Référence du mappage de champs
Cette section explique comment l'analyseur applique des modèles Grok pour les systèmes Linux et Microsoft Windows, et comment il mappe les champs de journaux Fluentd aux champs du modèle de données unifié (UDM) Google Security Operations pour chaque type de journal.
Pour en savoir plus sur le mappage des champs courants, consultez Champs courants.
Pour obtenir des informations de référence sur les chemins d'accès aux journaux, les modèles Grok pour les journaux d'exemple, les types d'événements et les champs UDM sur les systèmes Linux, consultez les sections suivantes :
- Linux
- Audit
- Type d'événement du journal d'audit
- Messagerie
- Type d'événement du journal de messagerie
Pour en savoir plus sur les événements Microsoft Windows acceptés et les champs UDM correspondants, consultez Données des événements Microsoft Windows.
Champs courants
Le tableau suivant répertorie les champs de journaux courants et les champs UDM correspondants.
Champ de journal courant | Champ UDM |
---|---|
collected_time | metadata.collected_timestamp |
inner_message.message | inner_message |
inner_message.forwarder_hostname | target.hostname ou principal.hostname |
inner_message.path | event_source |
Système Linux
Le tableau suivant répertorie les chemins d'accès aux journaux pour le système Linux, le modèle Grok pour les exemples de journaux, le type d'événement et les mappages UDM :
Chemin d'accès au fichier journal | Exemple de journal | Format Grok | Type d'événement | Mappage UDM |
---|---|---|---|---|
/var/log/apache2/error.log | [Thu Apr 28 16:13:01.283342 2022] [core:notice] [pid 18394:tid 140188660751296] [client 1.200.32.47:59840] failed to make connection | [{timestamp}][{log_module}:{log_level}][pid{pid}(<optional_field>:tid{tid}|)](<optional_field> [client {client_ip}:{client_port}]|) (?<error_message>.*) | NETWORK_UNCATEGORIZED | timestamp est mappé à metadata.event_timestamp log_module est mappé à target.resource.name log_level est mappé à security_result.severity pid est mappé sur target.process.parent_process.pid tid est mappé sur target.process.pid client_ip est mappé à principal.ip client_port est mappé sur principal.port error_message est mappé à security_result.description network.application_protocol est défini sur "HTTP" target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" |
/var/log/apache2/error.log | [Thu Apr 28 16:13:01.283342 2022] [core:notice] [pid 18394:tid 140188660751296] failed to make connection | [{timestamp}][{log_module}:{severity}][pid{pid}(<optional_field>:tid{tid}|)]{error_message} | NETWORK_UNCATEGORIZED | timestamp est mappé à metadata.event_timestamp log_module est mappé à target.resource.name log_level est mappé à security_result.severity pid est mappé sur target.process.parent_process.pid tid est mappé sur target.process.pid error_message est mappé à security_result.description network.application_protocol est défini sur "HTTP" target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" |
/var/log/apache2/error.log | [Thu Apr 28 16:13:01.283342 2022] [core:notice] [pid 18394:tid 140188660751296] AH00094: Command line: '/usr/sbin/apache2' | [{timestamp}][{log_module}:{log_level}][pid{pid}(<optional_field>:tid{tid}|)](<optional_field> [client {client_ip}:{client_port}]|) (?<error_message>.*),referer{referer_url} | NETWORK_UNCATEGORIZED | metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" timestamp est mappé à metadata.event_timestamp log_module est mappé à target.resource.name log_level est mappé à security_result.severity pid est mappé sur target.process.parent_process.pid tid est mappé sur target.process.pid client_ip est mappé à principal.ip client_port est mappé sur principal.port error_message est mappé à security_result.description target.platform est défini sur "LINUX" referer_url est mappé sur network.http.referral_url |
/var/log/apache2/error.log | [Sun Jan 30 15:14:47.260309 2022] [proxy_http:error] [pid 12515:tid 140035781285632] [client 1.200.32.47:59840] AH01114: HTTP: failed to make connection to backend: 192.0.2.1 , referer http:// | [{timestamp}] [{log_module}:{log_level}] [pid {pid}(<optional_field>:tid{tid}|)] [client {client_ip}:{client_port}]( <message_text>HTTP: )?{error_message}:( {target_ip})(<optional_field>,referer{referer_url})?" | NETWORK_HTTP | timestamp est mappé à metadata.event_timestamp log_module est mappé à target.resource.name log_level est mappé à security_result.severity pid est mappé sur target.process.parent_process.pid tid est mappé sur target.process.pid client_ip est mappé à principal.ip client_port est mappé sur principal.port error_message est mappé à security_result.description target_ip est mappé sur target.ip referer_url est mappé sur network.http.referral_url network.application_protocol est défini sur "HTTP" target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" |
/var/log/apache2/error.log | [Sat Feb 02 00:30:55 2019] Nouvelle connexion : [connection: gTxkX8Z6tjk] [client 192.0.2.1:50786] | [{timestamp}]<message_text>connection:[connection:{connection_id}][client{client_ip}:{client_port}] | NETWORK_UNCATEGORIZED | timestamp est mappé à metadata.event_timestamp client_ip est mappé à principal.ip client_port est mappé sur principal.port connection_id est mappé à network.session_id network.application_protocol est défini sur "HTTP" target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" |
/var/log/apache2/error.log | [Sat Feb 02 00:30:55 2019] New request: [connection: j8BjX4Z5tjk] [request: ACtkX1Z5tjk] [pid 8] [client 192.0.2.1:50784] | [{timestamp}]<message_text>request:[connection:{connection_id}][request:{request_id}][pid{pid}][client{client_ip}:{client_port}] | NETWORK_UNCATEGORIZED | timestamp est mappé à metadata.event_timestamp request_id est mappé à security_result.detection_fields.(key/value). client_ip est mappé à principal.ip client_port est mappé sur principal.port pid est mappé sur target.process.parent_process.pid connection_id est mappé à network.session_id network.application_protocol est défini sur "HTTP" target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" |
/var/log/apache2/error.log | [Sat Feb 02 00:30:55 2019] [info] [C: j8BjX4Z5tjk] [R: p7pjX4Z5tjk] [pid 8] core.c(4739): [client 192.0.2.1:50784] AH00128: File does not exist: /usr/local/apache2/htdocs/favicon.ico | [{timestamp}] [{log_level}][C:{connection_id}][R:{request_id}][pid {pid}(<optional_field>:tid{tid}|)]<message_text>[client {client_ip}:{client_port}]{error_message}:{file_path} | NETWORK_UNCATEGORIZED | timestamp est mappé à metadata.event_timestamp log_level est mappé à security_result.severity request_id est mappé à security_result.detection_fields.(key/value). client_ip est mappé à principal.ip client_port est mappé sur principal.port pid est mappé sur target.process.parent_process.pid connection_id est mappé à network.session_id error_message est mappé à security_result.description file_path est mappé sur target.file.full_path network.application_protocol est défini sur "HTTP" target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" |
/var/log/apache2/access.log | 192.0.2.1 - - [28/Apr/2022:17:35:52 +0530] "GET / HTTP/1.1" 200 3476 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.0.2.1 Safari/537.36" | ({client_ip})?<message_text>{userid}[{timestamp}](<optional_field>{method}/(<optional_field>{resource}?) {client_protocol}?){result_status}{object_size}(<optional_field>(<optional_field>{referer_url}?)(<optional_field>{user_agent}?)? | NETWORK_HTTP | client_ip est mappé à principal.ip userid est mappé à principal.user.userid l'hôte est mappé à principal.hostname timestamp est mappé à metadata.event_timestamp La méthode est mappée sur network.http.method la ressource est mappée sur principal.resource.name. client_protocol est mappé sur network.application_protocol result_status est mappé à network.http.response_code object_size est mappé à network.sent_bytes referer_url est mappé sur network.http.referral_url user_agent est mappé sur network.http.user_agent network.ip_protocol est défini sur "TCP" network.direction est défini sur "OUTBOUND" network.application_protocol est défini sur "HTTP" target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" |
var/log/apache2/other_vhosts_access.log | wintest.example.com:80 ::1 - - [14/Jan/2022:14:08:16 -0700] \"GET /server-status?auto HTTP/1.1\" 200 1415 \"-\" \"Python-urllib/2.7\" | {target_host}:{NUMBER:target_port} {client_ip} - (<optional_field>{host}?) [{timestamp}](<optional_field>{method}/(<optional_field>{resource}?){client_protocol}?){result_status}{object_size}(<optional_field>{referer_url}?)(<optional_field>{user_agent}?) | NETWORK_HTTP | target_host est mappé à target.hostname.
target_port est mappé sur target.port client_ip est mappé à principal.ip userid est mappé à principal.user.userid l'hôte est mappé à principal.hostname timestamp est mappé à metadata.event_timestamp La méthode est mappée sur network.http.method la ressource est mappée sur principal.resource.name. result_status est mappé à network.http.response_code object_size est mappé à network.sent_bytes referer_url est mappé sur network.http.referral_url user_agent est mappé sur network.http.user_agent network.ip_protocol est défini sur "TCP" network.direction est défini sur "OUTBOUND" target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" network.application_protocol est défini sur "HTTP" |
var/log/apache2/novnc-server-access.log | wintest.example.com:80 ::1 - - [14/Jan/2022:14:08:16 -0700] \"GET /server-status?auto HTTP/1.1\" 200 1415 \"-\" \"http://\" | {target_host}:{NUMBER:target_port} {client_ip} - (<optional_field>{host}?) [{timestamp}](<optional_field>{method}/(<optional_field>{resource}?){client_protocol}?){result_status}{object_size}(<optional_field>{referer_url}?)(<optional_field>{user_agent}?) | NETWORK_HTTP | client_ip est mappé à principal.ip userid est mappé à principal.user.userid La méthode est mappée sur network.http.method path est mappé à target.url result_status est mappé à network.http.response_code object_size est mappé à network.sent_bytes referer_url est mappé sur network.http.referral_url user_agent est mappé sur network.http.user_agent network.ip_protocol est défini sur "TCP" network.direction est défini sur "OUTBOUND" target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" network.application_protocol est défini sur "HTTP" |
/var/log/apache2/access.log | "http://192.0.2.1/test/first.html" -> /google.com | (<optional_field>{referer_url}?)->(<optional_field>{path}?) | GENERIC_EVENT | path est mappé à target.url referer_url est mappé sur network.http.referral_url network.direction est défini sur "OUTBOUND" target.platform est défini sur "LINUX" network.application_protocol est défini sur "HTTP" target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" |
/var/log/apache2/access.log | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Code/1.67.0 Chrome/98.0.4758.141 Electron/17.4.1 Safari/537.36 | (<optional_field>{user_agent}) | GENERIC_EVENT | user_agent est mappé sur network.http.user_agent network.direction est défini sur "OUTBOUND" target.platform est défini sur "LINUX" network.application_protocol est défini sur "HTTP" target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "Apache" metadata.product_name est défini sur "Apache HTTP Server" |
var/log/nginx/access.log | 192.0.2.1 - admin [05/May/2022:11:53:27 +0530] "GET /icons/ubuntu-logo.png HTTP/1.1" 404 209 "http://198.51.100.1/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.0.2.1 Safari/537.36" | {principal_ip} - (<optional_field>{principal_user_userid}?) [{timestamp}] {http_method} /(<optional_field>{resource_name}?|) {protocol}(<message_text>){response_code} {received_bytes}(<optional_field>{referer_url}) ({user_agent}|{user_agent})? | NETWORK_HTTP | "time" est mappé sur "metadata.timestamp". ip est mappé à target.ip principal_ip est mappé à principal.ip principal_user_userid est mappé sur principal.user.userid metadata_timestamp est mappé sur timestamp http_method est mappé sur network.http.method resource_name est mappé à principal.resource.name Le protocole est mappé sur network.application_protocol = (HTTP) response_code est mappé sur network.http.response_code received_bytes est mappé sur network.sent_bytes referer_url est mappé sur network.http.referral_url user_agent est mappé sur network.http.user_agent target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "NGINX" metadata.product_name est défini sur "NGINX" network.ip_protocol est défini sur "TCP" network.direction est défini sur "OUTBOUND" |
var/log/nginx/error.log | 2022/01/29 13:51:48 [error] 593#593: *62432 open() \"/usr/share/nginx/html/nginx_status\" failed (2: No such file or directory), client: 192.0.2.1, server: localhost, request: \"GET /nginx_status HTTP/1.1\", host: \"192.0.2.1:8080\" | "{year}\/{month}\/{day}{time}[{severity}]{pid}#{thread_id}:{inner_message2}"
inner_message2 est mappé à "{security_result_description_2},client:{principal_ip},server:(<optional_field>{target_hostname}?),request:"{http_method} /(<optional_field>{resource_name}?) {protocol}/1.1",host:"({target_ip}:{target_port})?" "bind() to ({target_ip}|[{target_ip}]):{target_port} failed ({security_description})", "\*{cid}{security_description}", "{security_description}" |
NETWORK_HTTP | thread_id est mappé sur principal.process.pid La gravité est mappée à security_result.severity. ("debug" est mappé sur UNKNOWN_SEVERITY, "info" sur INFORMATIONAL, "notice" sur LOW, "warn" sur MEDIUM, "error" sur ERROR, "crit" sur CRITICAL et "alert" sur HIGH) target_file_full_path est mappé à target.file.full_path principal_ip est mappé à principal.ip target_hostname est mappé sur target.hostname. http_method est mappé sur network.http.method resource_name est mappé à principal.resource.name Le protocole est mappé sur "TCP". target_ip est mappé sur target.ip target_port est mappé sur target.port security_description + security_result_description_2 est mappé à security_result.description pid est mappé sur principal.process.parent_process.pid network.application_protocol est défini sur "HTTP" Le code temporel est mappé sur {year}/{day}/{month} {time}. target.platform est défini sur "LINUX" metadata.vendor_name est défini sur "NGINX" metadata.product_name est défini sur "NGINX" network.ip_protocol est défini sur "TCP" network.direction est défini sur "OUTBOUND" |
var/log/rkhunter.log | [14:10:40] Échec de la vérification des commandes requises | [<message_text>]{security_description} | ÉTAT DE LA SITUATION | "time" est mappé sur "metadata.timestamp". security_description est mappé sur security_result.description principal.platform est défini sur "LINUX" metadata.vendor_name est défini sur "RootKit Hunter" metadata.product_name est défini sur "RootKit Hunter" |
var/log/rkhunter.log | [14:09:52] Vérification du fichier "/dev/.oz/.nap/rkit/terror" [ Introuvable ] | [<message_text>] {security_description} {file_path}[\{metadata_description}] | FILE_UNCATEGORIZED | metadata_description est mappé à metadata.description
file_path est mappé sur target.file.full_path security_description est mappé sur security_result.description principal.platform est défini sur "LINUX" metadata.vendor_name est défini sur "RootKit Hunter" metadata.product_name est défini sur "RootKit Hunter" |
var/log/rkhunter.log | fluentd : taille du fichier réduite (inode conservé) : "/var/log/rkhunter.log". | (<optional_field><message_text>:){metadata_description}:'{file_path}' | FILE_UNCATEGORIZED | "time" est mappé sur "metadata.timestamp". metadata_description est mappé à metadata.description file_path est mappé sur target.file.full_path principal.platform est défini sur "LINUX" metadata.vendor_name est défini sur "RootKit Hunter" metadata.product_name est défini sur "RootKit Hunter" |
/var/log/kern.log | Apr 28 12:41:35 localhost kernel: [ 5079.912215] ctnetlink v0.93: registering with nfnetlink. | {timestamp}{principal_hostname}{metadata_product_event_type}:[<message_text>]{metadata_description} | ÉTAT DE LA SITUATION | timestamp est mappé sur "metadata.event_timestamp" principal_hostname est mappé sur "principal.hostname" metadata_product_event_type est mappé sur "metadata.product_event_type" metadata_description est mappé sur "metadata.description" metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" principal.platform est défini sur "LINUX" |
/var/log/kern.log | 6 juil. 11:17:01 Ubuntu18 kernel: [ 0.030139] smpboot: CPU0: Intel(R) Xeon(R) Gold 5220R CPU @ 2.20GHz (family: 0x6, model: 0x55, stepping: 0x7) | {timestamp}{principal_hostname}{metadata_product_event_type}:([<message_text>])<message_text>:\CPU0:{principal_asset_hardware_cpu_model}({metadata_description}) | STATUS_UPDATE | timestamp est mappé sur "metadata.event_timestamp" principal_hostname est mappé sur "principal.hostname" metadata_product_event_type est mappé sur "metadata.product_event_type" principal_asset_hardware_cpu_model est mappé sur "principal.asset.hardware.cpu_model" metadata_description est mappé sur "metadata.description" metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" principal.platform est défini sur "LINUX" cpu_model est mappé sur principal.asset.hardware.cpu_model |
/var/log/syslog.log | May 24 10:30:42 Ubuntu18 systemd[1]: Started Session 112 of user kajal. | {collected_timestamp}{hostname}{command_line}(<optional_field>[{pid}]):{message} | STATUS_UPDATE | collected_time est mappé à metadata.event_timestamp hostname est mappé sur principal.hostname pid est mappé sur principal.process.pid message is mapped to metadata.description metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" principal.platform est défini sur "LINUX" command_line est mappé à principal.process.command_line |
/var/log/syslog.log | Jul 06 10:14:37 Ubuntu18 rsyslogd: rsyslogd's userid changed to 102 | {collected_timestamp}{hostname}{command_line}:{message}to{user_id} | STATUS_UPDATE | collected_time est mappé sur metadata.collected_timestamp hostname est mappé sur principal.hostname message is mapped to metadata.description user_id est mappé sur principal.user.userid command_line est mappé à principal.process.command_line metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" principal.platform est défini sur "LINUX" |
/var/log/syslog.log | 06 juil. 10:36:48 Ubuntu18 systemd[1]: Starting System Logging Service... | {collected_timestamp}{hostname}{command_line}(<optional_field>|[{pid}]):{message} | STATUS_UPDATE | collected_time est mappé à metadata.event_timestamp hostname est mappé sur principal.hostname pid est mappé sur principal.process.pid message is mapped to metadata.description metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" principal.platform est défini sur "LINUX" command_line est mappé à principal.process.command_line |
var/log/openvpnas.log | 2022-04-29T10:51:22+0530 [stdout#info] [OVPN 4] OUT: '2022-04-29 05:21:22 mohit_AUTOLOGIN/198.51.100.1:16245 MULTI: Learn: 198.51.100.1 -> mohit_AUTOLOGIN/203.0.113.1:16245' | {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<optional_field>'|")<message_text>-<message_text>{user}\/{ip}:{port}MULTI:Learn:{local_ip}->{target_hostname}?{target_ip}:{port}(<optional_field>'|") | NETWORK_HTTP | timestamp est mappé sur metadata.timestamp log_level est mappé à security_result.severity local_ip est mappé à principal.ip target_ip est mappé sur target.ip target_hostname est mappé sur principal.hostname. port est mappé sur target.port L'utilisateur est mappé à principal.user.user_display_name metadata.vendor_name est défini sur "OpenVPN" metadata.product_name est défini sur "OpenVPN Access Server" principal.platform est défini sur "LINUX" |
var/log/openvpnas.log | 2022-04-28T16:14:13+0530 [stdout#info] [OVPN 6] OUT: '2022-04-28 16:14:13 library versions: OpenSSL 1.1.1 11 Sep 2018, LZO 2.08' | {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<optional_field>'|")<message_text>{msg}(<optional_field>'|") | ÉTAT DE LA SITUATION | timestamp est mappé sur metadata.timestamp log_level est mappé à security_result.severity msg est mappé sur security_result.description metadata.vendor_name est défini sur "OpenVPN" metadata.product_name est défini sur "OpenVPN Access Server" principal.platform est défini sur "LINUX" |
var/log/openvpnas.log | 2022-04-28T16:14:13+0530 [stdout#info] [OVPN 6] OUT: '2022-04-28 16:14:13 net_addr_v4_add: 198.51.100.1/23 dev as0t6' | {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:<optional_field>'|"<message_text>-<message_text>-<message_text><message_text>{message}<optional_field>'|" Le message est mappé sur (net_addr_v4_add|net_route_v4_best_gw):{target_ip}/{target_port} |
ÉTAT DE LA SITUATION | principal.platform est défini sur "LINUX" target_ip est mappé sur target.ip target_port est mappé sur target.port La gravité est mappée à security_result.severity. timestamp est mappé sur metadata.timestamp metadata.vendor_name est défini sur OpenVPN. metadata.product_name est défini sur OpenVPN Access Server |
var/log/openvpnas.log | 2022-04-29T10:51:22+0530 [stdout#info] [OVPN 4] OUT: '2022-04-29 05:21:22 198.51.100.1:16245 [mohit_AUTOLOGIN] Peer Connection Initiated with [AF_INET]192.0.2.1:16245 (via [AF_INET]198.51.100.1%ens160)' | {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<optional_field>'|")<message_text>{message}(<optional_field>'|") message is mapped to <message_text>with[<message_text>]<message_text>:{port}<message_text> |
ÉTAT DE LA SITUATION | timestamp est mappé sur metadata.timestamp log_level est mappé à security_result.severity metadata.vendor_name est défini sur OpenVPN. metadata.product_name est défini sur OpenVPN Access Server principal.platform est défini sur Linux target_ip est mappé sur target.ip target_port est mappé sur target.port target_hostname est mappé sur target.hostname. intermediary_ip est mappé à intermediary.ip |
var/log/openvpnas.log | 2022-04-29T10:51:22+0530 [stdout#info] [OVPN 4] OUT: \"2022-04-29 05:21:22 mohit_AUTOLOGIN/198.51.100.1:16245 SENT CONTROL [mohit_AUTOLOGIN]: 'PUSH_REPLY,explicit-exit-notify,topology subnet,route-delay 5 30,dhcp-pre-release,dhcp-renew,dhcp-release,route-metric 101,ping 12,ping-restart 50,redirect-gateway def1,redirect-gateway bypass-dhcp,redirect-gateway autolocal,route-gateway 198.51.100.1,dhcp-option DNS 192.0.2.1,dhcp-option DNS 192.0.2.1,register-dns,block-ipv6,ifconfig 198.51.100.1 203.0.113.1,peer-id 0,auth-tokenSESS_ID,cipher AES-256-GCM,key-derivation tls-ekm' (status=1)\" | {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<optional_field>'|")<message_text>{user}\/{ip}:{message}(<optional_field>'|") | ÉTAT DE LA SITUATION | timestamp est mappé sur metadata.timestamp log_level est mappé à security_result.severity message is mapped to metadata.description user est mappé à target.hostname ip est mappé à target.ip port est mappé sur target.port metadata.vendor_name est défini sur OpenVPN. metadata.product_name est défini sur OpenVPN Access Server principal.platform est défini sur Linux |
var/log/openvpnas.log | 2022-04-29T10:51:22+0530 [stdout#info] AUTH SUCCESS {'status': 0, 'user': 'mohit', 'reason': 'AuthAutoLogin: autologin certificate auth succeeded', 'proplist': {'prop_autogenerate': 'true', 'prop_autologin': 'true', 'pvt_password_digest': '[redacted]', 'type': 'user_connect'}, 'common_name': 'mohit_AUTOLOGIN', 'serial': '3', 'serial_list': []} cli='win'/'3.git::d3f8b18b'/'OCWindows_3.3.6-2752' | {timestamp}[stdout#{log_level}]{summary}{'<message_text>':({status})?'<message_text>':({user})?'<message_text>':({reason})?<message_text>}, 'common_name':'{user_name}'<message_text>}cli='{cli}' | ÉTAT DE LA SITUATION | timestamp est mappé sur metadata.timestamp log_level est mappé à security_result.severity Le message est mappé sur security_result.description. summary est mappé sur security_result.summary user_name est mappé sur principal.user.user_display_name cli est mappé à principal.process.command_line L'état est mappé sur principal.user.user_authentication_status metadata.vendor_name est défini sur "OpenVPN" metadata.product_name est défini sur "OpenVPN Access Server" principal.platform est défini sur "LINUX" |
/var/log/rundeck/service.log | [2022-05-04T17:03:11,166] WARN config.NavigableMap - Accessing config key '[filterNames]' through dot notation is deprecated, and it will be removed in a future release. Utilisez plutôt "config.getProperty(key, targetClass)". | [{timestamp}]{severity}{summary}\-{security_description}
, à {command_line}\({file_path}:<message_text>\) |
ÉTAT DE LA SITUATION | command_line est mappé sur "target.process.command_line"
file_path est mappé à "target.process.file.full_path" timestamp est mappé sur "metadata.event_timestamp" La gravité est mappée sur "security_result.severity". Le résumé est mappé à "security_result.summary" security_description est mappé sur "security_result.description" metadata.product_name est défini sur "FLUENTD" metadata.vendor_name est défini sur "FLUENTD" |
/var/log/auth.log | 4 juil. 19:26:19 Ubuntu18 systemd-logind[982]: Removed session 153. | {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}]):{security_description}{network_session_id}?(of user{principal_user_userid})? | USER_LOGOUT | Le code temporel est mappé à "metadata.timestamp". principal_hostname est mappé sur target.hostname si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.hostname. principal_application est mappé à target.application si la valeur est "USER_LOGOUT", sinon il est mappé à "principal.application". pid est mappé sur target.process.pid si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.process.pid. security_description est mappé sur "security_result.description" network_session_id est mappé sur "network.session_id" principal_user_userid est mappé sur principal.user.userid si la valeur est "USER_LOGOUT", sinon il est mappé sur target.user.userid. "principal.platform" est défini sur "LINUX" Si la description de sécurité de l'événement est "Session supprimée", event_type est défini sur USER_LOGOUT. extensions.auth.type est défini sur AUTHTYPE_UNSPECIFIED metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
/var/log/auth.log | 27 juin 11:07:17 Ubuntu18 systemd-logind[804]: Nouvelle session 564 de l'utilisateur root. | {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}]):{security_description}{network_session_id}?(of user{principal_user_userid})? | USER_LOGIN | Le code temporel est mappé à "metadata.timestamp". principal_hostname est mappé sur target.hostname si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.hostname. principal_application est mappé à target.application si la valeur est "USER_LOGOUT", sinon il est mappé à "principal.application". pid est mappé sur target.process.pid si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.process.pid. security_description est mappé sur "security_result.description" network_session_id est mappé sur "network.session_id" principal_user_userid est mappé sur principal.user.userid si la valeur est "USER_LOGOUT", sinon il est mappé sur target.user.userid. "principal.platform" est défini sur "LINUX" "network.application_protocol" est mappé sur "SSH" Si new_session est défini sur "true", event_type est défini sur USER_LOGIN. extensions.auth.type est défini sur AUTHTYPE_UNSPECIFIED metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
/var/log/auth.log | Jun 27 11:07:17 Ubuntu18 sshd[9349]: Accepted password for root from 198.51.100.1 port 57619 ssh2 | {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}])<optional_field> {security_description} pour (utilisateur non valide )?{principal_user_userid} depuis {principal_ip} port {principal_port} ssh2(:{security_result_detection_fields_ssh_kv}SHA256:{security_result_detection_fields_kv})? | USER_LOGIN | Le code temporel est mappé à "metadata.timestamp". principal_hostname est mappé sur target.hostname si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.hostname. principal_application est mappé à target.application si la valeur est "USER_LOGOUT", sinon il est mappé à "principal.application". pid est mappé sur target.process.pid si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.process.pid. security_description est mappé sur "security_result.description" principal_user_userid est mappé sur principal.user.userid si la valeur est "USER_LOGOUT", sinon il est mappé sur target.user.userid. principal_ip est mappé sur "principal.ip" principal_port est mappé sur "principal.port" security_result_detection_fields_ssh_kv est mappé à "security_result.detection_fields.key/value" security_result_detection_fields_kv est mappé à "security_result.detection_fields.key/value" "principal.platform" est défini sur "LINUX" "network.application_protocol" est défini sur "SSH" metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
/var/log/auth.log | Apr 28 11:51:13 Ubuntu18 sudo[24149]: root : TTY=pts/5 ; PWD=/ ; USER=root ; COMMAND=/bin/ls | {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}])<optional_field> {principal_user_userid} :( {security_description} ;)? TTY=<message_text> ; PWD={principal_process_command_line_1} ; USER={principal_user_attribute_labels_uid_kv} ; COMMAND={principal_process_command_line_2} | ÉTAT DE LA SITUATION | timestamp est mappé sur metadata.timestamp principal_hostname est mappé à principal.hostname principal_application est mappé à principal.application pid est mappé sur principal.process.pid principal_user_userid est mappé à target.user.userid security_description est mappé sur "security_result.description" principal_process_command_line_1 est mappé sur "principal.process.command_line" principal_process_command_line_2 est mappé sur "principal.process.command_line" principal_user_attribute_labels_uid_kv est mappé sur "principal.user.attribute.labels.key/value" "principal.platform" est défini sur "LINUX" |
/var/log/auth.log | 4 juil. 19:39:01 Ubuntu18 CRON[17217]: pam_unix(cron:session): session opened for user root by (uid=0) | {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}])<optional_field> {security_description} pour (utilisateur non valide|utilisateur)?{principal_user_userid}(par (uid={principal_user_attribute_labels_uid_kv}))?$ | USER_LOGIN | timestamp est mappé sur metadata.timestamp principal_hostname est mappé sur target.hostname si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.hostname. principal_application est mappé à target.application si la valeur est "USER_LOGOUT", sinon il est mappé à "principal.application". pid est mappé sur target.process.pid si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.process.pid. security_description est mappé sur "security_result.description" principal_user_userid est mappé sur principal.user.userid si la valeur est "USER_LOGOUT", sinon il est mappé sur target.user.userid. principal_user_attribute_labels_uid_kv est mappé sur "principal.user.attribute.labels.key/value" "principal.platform" est défini sur "LINUX" "network.application_protocol" est défini sur "SSH" metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
/var/log/auth.log | Jul 4 19:24:43 Ubuntu18 sshd[14731]: pam_unix(sshd:session): session closed for user root | {timestamp} {principal_hostname}{principal_application}<optional_filed>[{pid}]): {security_description} pour (utilisateur non valide|utilisateur){principal_user_userid} | USER_LOGOUT | timestamp est mappé sur metadata.timestamp principal_hostname est mappé sur target.hostname si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.hostname. principal_application est mappé à target.application si la valeur est "USER_LOGOUT", sinon il est mappé à "principal.application". pid est mappé sur target.process.pid si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.process.pid. security_description est mappé sur "security_result.description" principal_user_userid est mappé sur principal.user.userid si la valeur est "USER_LOGOUT", sinon il est mappé sur target.user.userid. principal_user_attribute_labels_uid_kv est mappé à principal.user.attribute.labels.key/value "principal.platform" est défini sur "LINUX" metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
/var/log/auth.log | Jun 30 11:32:26 Ubuntu18 sshd[29425]: Connection reset by authenticating user root 198.51.100.1 port 52518 [preauth] | {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}]):{security_description}(from|{principal_user_userid}){target_ip}port{target_port}<optional_field>[preauth]|:<text_message>{security_summary}|) | USER_LOGOUT | timestamp est mappé sur metadata.timestamp principal_hostname est mappé sur target.hostname si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.hostname. principal_application est mappé à target.application si la valeur est "USER_LOGOUT", sinon il est mappé à "principal.application". pid est mappé sur target.process.pid si la valeur est "USER_LOGOUT", sinon il est mappé sur principal.process.pid. security_description est mappé sur security_result.description security_summary est mappé sur security_result.summary principal_user_userid est mappé sur principal.user.userid si la valeur est "USER_LOGOUT", sinon il est mappé sur target.user.userid. target_ip est mappé sur target.ip target_port est mappé sur target.port" principal.platform" est défini sur "LINUX" metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
var/log/samba/log.winbindd | [2022/05/05 13:51:22.212484, 0] ../source3/winbindd/winbindd_cache.c:3170(initialize_winbindd_cache)initialize_winbindd_cache: clearing cache and re-creating with version number 2 | {timestamp},{severity}(<optional_field>,pid={pid},effective({principal_user_attribute_labels_kv},{principal_group_attribute_labels_kv}),real({principal_user_userid},{principal_group_product_object_id}))?]<message_text>:{security_description} | ÉTAT DE LA SITUATION | Le code temporel est mappé à "metadata.timestamp". pid est mappé à "principal.process.pid" principal_user_attribute_labels_kv est mappé sur "principal.user.attribute.labels" principal_group_attribute_labels_kv est mappé sur "principal.group.attribute.labels" principal_user_userid est mappé sur "principal.user.userid" principal_group_product_object_id est mappé à "principal.group.product_object_id" security_description est mappé sur "security_result.description" metadata_description est mappé sur "metadata.description" metadata.product_name" est défini sur "FLUENTD" metadata.vendor_name" est défini sur "FLUENTD" |
var/log/samba/log.winbindd | messaging_dgm_init: bind failed: No space left on device | {user_id}: {desc} | ÉTAT DE LA SITUATION | metadata.product_name" est défini sur "FLUENTD" metadata.vendor_name" est défini sur "FLUENTD" user_id est mappé sur principal.user.userid desc est mappé à metadata.description |
/var/log/mail.log | July 16 11:40:56 Ubuntu18 sendmail[9341]: 22G6AtwH009341: from=<fluentd@Ubuntu18>, size=377, class=0, nrcpts=1, metadata_descriptionid=<202203160610.22G6AtwH009341@Ubuntu18.cdsys.local>, proto=SMTP, daemon=MTA-v4, relay=localhost [192.0.2.1] | {timestamp} {target_hostname} {application}[{pid}]: <message_text>:{KV} | ÉTAT DE LA SITUATION | target_hostname est mappé sur target.hostname. application est mappé à target.application pid est mappé sur target.process.pid metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
/var/log/mail.log | 7 juillet 13:44:01 prod postfix/pickup[22580]: AE4271627DB: uid=0 from=<root> | {timestamp} {target_hostname} {application}[{pid}]: <message_text>{KV} | EMAIL_UNCATEGORIZED | target_hostname est mappé sur target.hostname. application est mappé à target.application pid est mappé sur target.process.pid metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
/var/log/mail.log | 7 juillet 13:44:01 prod postfix/cleanup[23434]: AE4271627DB: message-id=<20150207184401.AE4271627DB@server.hostname.01> | {timestamp} {target_hostname} {application}[{pid}]: <message_text> message-id=<{resource_name}> | ÉTAT DE LA SITUATION | target_hostname est mappé sur target.hostname. application est mappé à target.application pid est mappé sur target.process.pid resource_name est mappé à target.resource.name metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
/var/log/mail.log | 7 juillet à 13h44:01 prod postfix/qmgr[3539]: AE4271627DB: from=<root@server.hostname.01>, size=565, nrcpt=1 (queue active) | {timestamp} {target_hostname} {application}[{pid}]: <message_text>{KV} | EMAIL_UNCATEGORIZED | target_hostname est mappé sur target.hostname. application est mappé à target.application pid est mappé sur target.process.pid metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
/var/log/mail.log | 7 juillet 13:44:01 prod postfix/smtp[23436]: connect to gmail-smtp-in.l.example.com[2607:xxxx:xxxx:xxx::xx]:25: Network is unreachable | {timestamp} {target_hostname} {application}[{pid}]: <message_text>{KV} | ÉTAT DE LA SITUATION | target_hostname est mappé sur target.hostname. application est mappé à target.application pid est mappé sur target.process.pid metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
/var/log/mail.log | 7 juillet 13:44:02 prod postfix/local[23439]: E62521627DC: to=<root@server.hostname.01>, relay=local, delay=0.01, delays=0/0.01/0/0, dsn=2.0.0, status=sent (delivered to mailbox) | {timestamp} {target_hostname} {application}[{pid}]: <message_text>{KV} | EMAIL_UNCATEGORIZED | target_hostname est mappé sur target.hostname. application est mappé à target.application pid est mappé sur target.process.pid metadata.vendor_name est défini sur "FLUENTD" metadata.product_name est défini sur "FLUENTD" |
Audit
Champs de journaux d'audit vers les champs UDM
Le tableau suivant liste les champs de journaux du type de journal d'audit et les champs UDM correspondants.
Champ du journal | Champ UDM |
---|---|
acct | target.user.user_display_name |
addr | principal.ip |
arch | about.labels.key/value |
auid | target.user.userid |
cgroup | principal.process.file.full_path |
cmd | target.process.command_line |
comm | target.application |
cwd | target.file.full_path |
données | about.labels.key/value |
devmajor | about.labels.key/value |
devminor | about.labels.key/value |
egid | target.group.product_object_id |
euid | target.user.userid |
exe | target.process.file.full_path |
exit | target.labels.key/value |
famille | network.ip_protocol est défini sur "IP6IN4" si "ip_protocol" == 2, sinon il est défini sur "UNKNOWN_IP_PROTOCOL". |
filetype | target.file.mime_type |
fsgid | target.group.product_object_id |
fsuid | target.user.userid |
gid | target.group.product_object_id |
nom d'hôte | target.hostname |
icmptype | network.ip_protocol est défini sur "ICMP" |
id | Si [audit_log_type] == "ADD_USER", target.user.userid est défini sur "%{id}"
Si [audit_log_type] == "ADD_GROUP", target.group.product_object_id est défini sur "%{id}" sinon, target.user.attribute.labels.key/value est défini sur "id". |
inode | target.resource.product_object_id |
clé | security_result.detection_fields.key/value |
list | security_result.about.labels.key/value |
Standard | target.resource.attribute.permissions.name
target.resource.attribute.permissions.type |
nom | target.file.full_path |
new-disk | target.resource.name |
new-mem | target.resource.attribute.labels.key/value |
new-vcpu | target.resource.attribute.labels.key/value |
new-net | pincipal.mac |
new_gid | target.group.product_object_id |
oauid | target.user.userid |
ocomm | target.process.command_line |
opid | target.process.pid |
oses | network.session_id |
ouid | target.user.userid |
obj_gid | target.group.product_object_id |
obj_role | target.user.attribute.role.name |
obj_uid | target.user.userid |
obj_user | target.user.user_display_name |
ogid | target.group.product_object_id |
ouid | target.user.userid |
chemin d'accès | target.file.full_path |
perm | target.asset.attribute.permissions.name |
pid | target.process.pid |
ppid | target.parent_process.pid |
proto | Si [ip_protocol] == 2, network.ip_protocol est défini sur "IP6IN4"
Sinon, network.ip_protocol est défini sur "UNKNOWN_IP_PROTOCOL". |
res | security_result.summary |
résultat | security_result.summary |
saddr | security_result.detection_fields.key/value |
sauid | target.user.attribute.labels.key/value |
ses | network.session_id |
sgid | target.group.product_object_id |
sig | security_result.detection_fields.key/value |
subj_user | target.user.user_display_name |
success | Si success=='yes', security_result.summary est défini sur 'system call was successful' sinon, security_result.summary est défini sur 'systemcall was failed' |
suid | target.user.userid |
syscall | about.labels.key/value |
terminal | target.labels.key/value |
tty | target.labels.key/value |
uid | Si [audit_log_type] dans [SYSCALL, SERVICE_START, ADD_GROUP, ADD_USER, MAC_IPSEC_EVENT, MAC_UNLBL_STCADD, OBJ_PID, CONFIG_CHANGE, SECCOMP, USER_CHAUTHTOK, USYS_CONFIG, DEL_GROUP, DEL_USER, USER_CMD, USER_MAC_POLICY_LOAD], l'UID est défini sur principal.user.userid
sinon, uid est défini sur target.user.userid. |
vm | target.resource.name |
Types de journaux d'audit et types d'événements UDM
Le tableau suivant liste les types de journaux d'audit et les types d'événements UDM correspondants.
Type de journal d'audit | Type d'événement UDM | Description |
---|---|---|
ADD_GROUP | GROUP_CREATION | Déclenchement lorsqu'un groupe d'espace utilisateur est ajouté. |
ADD_USER | USER_CREATION | Déclenché lorsqu'un compte utilisateur de l'espace utilisateur est ajouté. |
ANOM_ABEND | GENERIC_EVENT / PROCESS_TERMINATION | Déclenchement lorsqu'un processus se termine de manière anormale (avec un signal pouvant entraîner un vidage du cœur, si activé). |
AVC | GENERIC_EVENT | Déclenchée pour enregistrer une vérification des autorisations SELinux. |
CONFIG_CHANGE | USER_RESOURCE_UPDATE_CONTENT | Déclenché lorsque la configuration du système d'audit est modifiée. |
CRED_ACQ | USER_LOGIN | Déclenchement lorsqu'un utilisateur acquiert des identifiants d'espace utilisateur. |
CRED_DISP | USER_LOGOUT | Déclenchement lorsqu'un utilisateur se débarrasse des identifiants de l'espace utilisateur. |
CRED_REFR | USER_LOGIN | Déclenché lorsqu'un utilisateur actualise ses identifiants d'espace utilisateur. |
CRYPTO_KEY_USER | USER_RESOURCE_ACCESS | Déclenché pour enregistrer l'identifiant de clé cryptographique utilisé à des fins cryptographiques. |
CRYPTO_SESSION | PROCESS_TERMINATION | Déclenché pour enregistrer les paramètres définis lors de l'établissement d'une session TLS. |
CWD | SYSTEM_AUDIT_LOG_UNCATEGORIZED | Déclenchée pour enregistrer le répertoire de travail actuel. |
DAEMON_ABORT | PROCESS_TERMINATION | Déclenché lorsqu'un daemon est arrêté en raison d'une erreur. |
DAEMON_END | PROCESS_TERMINATION | Déclenchée lorsqu'un daemon est arrêté. |
DAEMON_RESUME | PROCESS_UNCATEGORIZED | Déclenché lorsque le démon auditd reprend la journalisation. |
DAEMON_ROTATE | PROCESS_UNCATEGORIZED | Déclenché lorsque le daemon auditd fait pivoter les fichiers journaux d'audit. |
DAEMON_START | PROCESS_LAUNCH | Déclenchement au démarrage du démon auditd. |
DEL_GROUP | GROUP_DELETION | Déclenché lorsqu'un groupe d'espace utilisateur est supprimé |
En attente | USER_DELETION | Déclenché lorsqu'un utilisateur de l'espace utilisateur est supprimé |
EXECVE | PROCESS_LAUNCH | Déclenché pour enregistrer les arguments de l'appel système execve(2). |
MAC_CONFIG_CHANGE | GENERIC_EVENT | Déclenché lorsqu'une valeur booléenne SELinux est modifiée. |
MAC_IPSEC_EVENT | SYSTEM_AUDIT_LOG_UNCATEGORIZED | Déclenché pour enregistrer des informations sur un événement IPSec, lorsqu'il est détecté ou lorsque la configuration IPSec change. |
MAC_POLICY_LOAD | GENERIC_EVENT | Déclenchée lorsqu'un fichier de règles SELinux est chargé. |
MAC_STATUS | GENERIC_EVENT | Déclenché lorsque le mode SELinux (application forcée, permissif, désactivé) est modifié. |
MAC_UNLBL_STCADD | SYSTEM_AUDIT_LOG_UNCATEGORIZED | Déclenché lorsqu'une étiquette statique est ajoutée lors de l'utilisation des fonctionnalités d'étiquetage de paquets du noyau fournies par NetLabel. |
NETFILTER_CFG | GENERIC_EVENT | Déclenché lorsque des modifications de la chaîne Netfilter sont détectées. |
OBJ_PID | SYSTEM_AUDIT_LOG_UNCATEGORIZED | Déclenché pour enregistrer des informations sur un processus auquel un signal est envoyé. |
PATH | FILE_OPEN/GENERIC_EVENT | Déclenché pour enregistrer les informations sur le chemin d'accès au nom de fichier. |
SELINUX_ERR | GENERIC_EVENT | Déclenchée lorsqu'une erreur SELinux interne est détectée. |
SERVICE_START | SERVICE_START | Déclenchement lorsqu'un service est démarré. |
SERVICE_STOP | SERVICE_STOP | Déclenchement lorsqu'un service est arrêté. |
SYSCALL | GENERIC_EVENT | Déclenché pour enregistrer un appel système au noyau. |
SYSTEM_BOOT | STATUS_STARTUP | Déclenchement au démarrage du système. |
SYSTEM_RUNLEVEL | STATUS_UPDATE | Déclenché lorsque le niveau d'exécution du système est modifié. |
SYSTEM_SHUTDOWN | STATUS_SHUTDOWN | Déclenché lorsque le système est arrêté. |
USER_ACCT | SETTING_MODIFICATION | Déclenché lorsqu'un compte utilisateur de l'espace utilisateur est modifié. |
USER_AUTH | USER_LOGIN | Déclenché lorsqu'une tentative d'authentification dans l'espace utilisateur est détectée. |
USER_AVC | USER_UNCATEGORIZED | Déclenché lorsqu'un message AVC d'espace utilisateur est généré. |
USER_CHAUTHTOK | USER_RESOURCE_UPDATE_CONTENT | Déclenché lorsqu'un attribut de compte utilisateur est modifié. |
USER_CMD | USER_COMMUNICATION | Déclenché lorsqu'une commande shell de l'espace utilisateur est exécutée. |
USER_END | USER_LOGOUT | Déclenché lorsqu'une session d'espace utilisateur est terminée. |
USER_ERR | USER_UNCATEGORIZED | Déclenché lorsqu'une erreur d'état de compte utilisateur est détectée. |
USER_LOGIN | USER_LOGIN | Déclenchement lorsqu'un utilisateur se connecte. |
USER_LOGOUT | USER_LOGOUT | Déclenchement lorsqu'un utilisateur se déconnecte. |
USER_MAC_POLICY_LOAD | RESOURCE_READ | Déclenchement lorsqu'un démon de l'espace utilisateur charge une règle SELinux. |
USER_MGMT | USER_UNCATEGORIZED | Déclenché pour enregistrer les données de gestion de l'espace utilisateur. |
USER_ROLE_CHANGE | USER_CHANGE_PERMISSIONS | Déclenché lorsque le rôle SELinux d'un utilisateur est modifié. |
USER_START | USER_LOGIN | Déclenchement lorsqu'une session d'espace utilisateur est lancée. |
USYS_CONFIG | USER_RESOURCE_UPDATE_CONTENT | Déclenché lorsqu'une modification de la configuration du système de l'espace utilisateur est détectée. |
VIRT_CONTROL | STATUS_UPDATE | Déclenchée lorsqu'une machine virtuelle est démarrée, mise en pause ou arrêtée. |
VIRT_MACHINE_ID | USER_RESOURCE_ACCESS | Déclenché pour enregistrer l'association d'un libellé à une machine virtuelle. |
VIRT_RESOURCE | USER_RESOURCE_ACCESS | Déclenché pour enregistrer l'attribution de ressources d'une machine virtuelle. |
Messagerie
Champs du journal de messagerie et champs UDM
Le tableau suivant répertorie les champs de journaux du type de journal "Courrier" et les champs UDM correspondants.
Champ du journal | Champ UDM |
---|---|
Classe | about.labels.key/value |
Ctladdr | principal.user.user_display_name |
De | network.email.from |
Msgid | network.email.mail_id |
Proto | network.application_protocol |
Relais | intermediary.hostname
intermediary.ip |
Taille | network.received_bytes |
Statistique | security_result.summary |
à | network.email.to |
Types de journaux de messagerie et types d'événements UDM
Le tableau suivant répertorie les types de journaux de messagerie et les types d'événements UDM correspondants.
Type de journal de messagerie | Type d'événement UDM |
---|---|
sendmail | ÉTAT DE LA SITUATION |
pickup | EMAIL_UNCATEGORIZED |
cleanup | ÉTAT DE LA SITUATION |
qmgr | EMAIL_UNCATEGORIZED |
smtp | ÉTAT DE LA SITUATION |
interprétabilité locale | EMAIL_UNCATEGORIZED |
Étapes suivantes
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.