Collecter les journaux OSSEC
Ce document explique comment collecter des journaux OSSEC en configurant OSSEC et un redirecteur des opérations de sécurité Google. Ce document liste également les types de journaux compatibles et la version d'OSSEC compatible.
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 les agents et les serveurs OSSEC sont configurés pour envoyer des journaux à Google Security Operations. Chaque déploiement client peut diffèrent de cette représentation et peuvent être plus complexes.
Le schéma de l'architecture présente les composants suivants:
Système Linux Système Linux à surveiller. Le système Linux est composé de les fichiers à surveiller et l'agent OSSEC.
Système Microsoft Windows Système Microsoft Windows à surveiller sur lequel l'agent OSSEC est installé.
Agent OSSEC. L'agent OSSEC collecte des informations à partir de l'environnement Microsoft Windows ou Linux et transmet les informations au serveur OSSEC.
Serveur OSSEC. Le serveur OSSEC surveille et reçoit des informations Agents OSSEC. analyse les journaux et les transmet au redirecteur Google Security Operations.
Transmetteur Google Security Operations Le forwarder Google Security Operations est un composant logiciel léger, déployé sur le réseau du client, qui prend en charge le protocole syslog. Le redirecteur Google Security Operations transfère les journaux à Google Security Operations.
Google Security Operations Google Security Operations conserve et analyse les journaux le serveur OSSEC.
Un libellé d'ingestion identifie l'analyseur qui normalise les données de journal brutes au format UDM structuré. Les informations de ce document s'appliquent à l'analyseur avec le libellé d'ingestion OSSEC
.
Avant de commencer
Assurez-vous que l'agent OSSEC est installé sur les systèmes Microsoft Windows ou Linux qui que vous prévoyez de surveiller. Pour en savoir plus sur l'installation de l'agent OSSEC, consultez Installer OSSEC.
Utilisez une version d'OSSEC compatible avec l'analyseur Google Security Operations. Google Security Operations est compatible avec OSSEC version 3.6.0.
Assurez-vous que le serveur OSSEC est installé et configuré sur le serveur Linux central.
Vérifiez les types de journaux compatibles avec l'analyseur Google Security Operations. Le tableau suivant répertorie 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 du fichier journal Microsoft Windows Microsoft Windows Journaux des événements Linux Linux /var/log/audit/audit.log Linux Linux /var/log/syslog Linux Linux /var/log/ulog/syslogemu.log 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 : serveur OSSEC OSSEC /var/ossec/logs/ossec.log Linux Linux /var/log/auth.log Linux Linux /var/log/kern.log Linux rundeck /var/log/rundeck/rundeck.api.log Linux Rundeck /var/log/rundeck/service.log Linux Samba /var/log/samba/log.winbindd Linux Linux /var/log/mail.log Assurez-vous que tous les systèmes de l'architecture de déploiement sont configurés dans le fuseau horaire UTC.
Configurer l'agent et le serveur OSSEC, ainsi que le transpondeur Google Security Operations
Pour configurer l'agent et le serveur OSSEC, ainsi que le transfert Google Security Operations, procédez comme suit :
Pour surveiller les journaux générés par les systèmes Linux, créez un fichier
ossec.conf
pour spécifier la surveillance des journaux la configuration de l'agent. Voici un exemple de fichier de configuration pour l'agent sur le système Linux :<ossec_config> <!-- Files to monitor (localfiles) --> <localfile> <log_format>syslog</log_format> <location>/var/ossec/logs/ossec.log</location> </localfile> <localfile> <log_format>syslog</log_format> <location>/var/log/auth.log</location> </localfile> <localfile> <log_format>syslog</log_format> <location>/var/log/kern.log</location> </localfile> <localfile> <log_format>syslog</log_format> <location>/var/log/mail.log</location> </localfile> <localfile> <log_format>syslog</log_format> <location>/var/log/syslog</location> </localfile> <localfile> <log_format>apache</log_format> <location>/var/log/apache2/error.log</location> </localfile> <localfile> <log_format>apache</log_format> <location>/var/log/apache2/access.log</location> </localfile> <localfile> <log_format>apache</log_format> <location>/var/log/apache2/other_vhost_access.log</location> </localfile> <localfile> <log_format>apache</log_format> <location>/var/log/apache2/nonvnc-server-access.log</location> </localfile> <localfile> <log_format>syslog</log_format> <location>/var/log/nginx/access.log</location> </localfile> <localfile> <log_format>syslog</log_format> <location>/var/log/nginx/error.log</location> </localfile> <localfile> <log_format>syslog</log_format> <location>/var/log/openvpnas.log</location> </localfile> <localfile> <log_format>syslog</log_format> <location>/var/log/rkhunter.log</location> </localfile> <localfile> <log_format>syslog</log_format> <location>/var/log/rundeck/service.log</location> </localfile> <localfile> <log_format>syslog</log_format> <location>/var/log/samba/log.winbindd</location> </localfile> <localfile> <log_format>command</log_format> <command>df -P</command> </localfile> <localfile> <log_format>syslog</log_format> <location>/var/log/audit/audit.log</location> </localfile> <localfile> <log_format>full_command</log_format> <command>netstat -tan |grep LISTEN |egrep -v '(192.0.2.1| ::1)' | sort</command> </localfile> <localfile> <log_format>full_command</log_format> <command>last -n 5</command> </localfile> </ossec_config>
Pour surveiller les journaux générés par les systèmes Microsoft Windows, créez un fichier
ossec.conf
afin de spécifier la configuration de surveillance des journaux pour l'agent. Voici un exemple : de configuration de l'agent sur le système Microsoft Windows:<ossec_config> <!-- Channels to monitor (localfiles) --> <localfile> <log_format>Security</log_format> <location>eventchannel</location> </localfile> <localfile> <log_format>System</log_format> <location>eventchannel</location> </localfile> <localfile> <log_format>Application</log_format> <location>eventchannel</location> </localfile> </ossec_config>
Pour transférer les journaux du serveur OSSEC vers Google Security Operations à l'aide du protocole syslog, créez le fichier de configuration du serveur OSSEC
syslog.conf
au format suivant :.*.@<CHRONICLE_FORWARDER_IP>:<CHRONICLE_FORWARDER_PORT>
Configurez le transfert Google Security Operations pour envoyer des journaux à Google Security Operations. Pour en savoir plus, consultez la section Installer et configurer le redirecteur sous Linux. Voici un exemple de configuration du redirecteur Google Security Operations:
- syslog: common: enabled: true data_type: OSSEC batch_n_seconds: 10 batch_n_bytes: 1048576 tcp_address: 0.0.0.0:10514 connection_timeout_sec: 60
Documentation de référence sur le mappage de champs
Cette section explique comment l'analyseur Google Security Operations applique des modèles grok pour les systèmes Linux et Microsoft Windows, et comment il met en correspondance les champs de journal OSSEC avec les champs du modèle de données unifié (UDM) de Google Security Operations pour chaque type de journal.
Pour en savoir plus sur le mappage des champs courants, consultez la section Champs communs.
Pour obtenir des informations sur les chemins d'accès aux journaux, les modèles grok (journaux, types d'événements, etc.), et UDM sur les systèmes Linux, reportez-vous aux 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 compatibles et les champs UDM correspondants, Voir les données d'événements Microsoft Windows
Champs communs
Le tableau suivant répertorie les champs de journal courants et les champs UDM correspondants.
Champ de journal courant | Champ UDM |
---|---|
collected_time | metadata.collected_timestamp |
application | principal.application |
log | metadata.description |
ip | target.ip ou principal.ip |
nom d'hôte | target.hostname ou principal.hostname |
Système Linux
Le tableau suivant répertorie les chemins d'accès aux journaux pour le système Linux, le format grok pour les exemples de journaux, le type d'événement et les mappages UDM :
Chemin d'accès au journal | Exemple de journal | Modèle 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 | Le code temporel est mappé sur metadata.event_timestamp log_module est mappé sur target.resource.name log_level est mappé sur security_result.severity pid est mappé sur target.process.parent_process.pid. tid est mappé sur target.process.pid. client_ip est mappé sur principal.ip. client_port est mappé sur principal.port error_message est mappé sur 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 "Serveur HTTP Apache" |
/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 | Le code temporel est mappé sur metadata.event_timestamp log_module est mappé sur target.resource.name log_level est mappé sur security_result.severity pid est mappé sur target.process.parent_process.pid. Le thread ID est mappé sur target.process.pid. error_message est mappé sur 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 "Serveur HTTP Apache" |
/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" Le code temporel est mappé sur metadata.event_timestamp log_module est mappé sur target.resource.name log_level est mappé sur security_result.severity pid est mappé sur target.process.parent_process.pid. tid est mappé sur target.process.pid. client_ip est mappé sur principal.ip. client_port est mappé sur principal.port error_message est mappé sur 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 altostrat.com | [{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 | Le code temporel est mappé sur metadata.event_timestamp log_module est mappé sur target.resource.name log_level est mappé sur security_result.severity pid est mappé sur target.process.parent_process.pid. tid est mappé sur target.process.pid. client_ip est mappé sur principal.ip. client_port est mappé sur principal.port error_message est mappé sur 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 "Serveur HTTP Apache" |
/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 | Le code temporel est mappé sur metadata.event_timestamp client_ip est mappé sur principal.ip client_port est mappé sur principal.port connection_id est mappé sur 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 "Serveur HTTP Apache" |
/var/log/apache2/error.log | [Sat Feb 02 00:30:55 2019] Nouvelle requête: [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 | Le code temporel est mappé sur metadata.event_timestamp request_id est mappé sur security_result.detection_fields.(clé/valeur) client_ip est mappé sur principal.ip. client_port est mappé sur principal.port pid est mappé sur target.process.parent_process.pid. connection_id est mappé sur 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 "Serveur HTTP Apache" |
/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 | Le code temporel est mappé sur metadata.event_timestamp log_level est mappé sur security_result.severity request_id est mappé sur security_result.detection_fields.(key/value) client_ip est mappé sur principal.ip. client_port est mappé sur principal.port pid est mappé sur target.process.parent_process.pid. connection_id est mappé sur network.session_id error_message est mappé sur 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 "Serveur HTTP Apache" |
/var/log/apache2/access.log | 10.50.0.1 - - [28/Apr/2022:18:02:13 +0530] "POST /test/first.html HTTP/1.1" 200 491 "http://192.0.2.1/test/first.html" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 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é sur principal.ip. userid est mappé sur principal.user.userid host est mappé sur principal.hostname Le code temporel est mappé sur metadata.event_timestamp est mappée sur network.http.method La ressource est mappée sur principal.resource.name client_protocol est mappé sur network.application_protocol Le paramètre "result_status" est mappé sur "network.http.response_code" object_size est mappé sur network.sent_bytes Le champ 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} – (<champ_facultatif>{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é sur target.hostname. target_port est mappé sur target.port. client_ip est mappé sur principal.ip userid est mappé sur principal.user.userid host est mappé sur principal.hostname Le code temporel est mappé sur metadata.event_timestamp est mappée sur network.http.method La ressource est mappée sur principal.resource.name result_status est mappé sur network.http.response_code object_size est mappé sur network.sent_bytes Le champ 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" -> /altostrat.com | (<optional_field>{referer_url}?)->(<optional_field>{path}?) | GENERIC_EVENT | Le chemin est mappé sur 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 "Serveur HTTP Apache" |
/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 "Serveur HTTP Apache" |
var/log/nginx/access.log | 172.16.19.228 - admin [05/May/2022:11:53:27 +0530] "GET /icons/ubuntu-logo.png HTTP/1.1" 404 209 "http://192.0.2.1/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 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 | l'heure est mappée sur metadata.timestamp ip est mappée sur target.ip. principal_ip est mappé sur 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é sur principal.resource.name le protocole est mappé sur network.application_protocol = (HTTP) Le code de réponse est mappé sur "network.http.response_code" La valeur "receive_bytes" est mappée sur network.sent_bytes. Le champ 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é sur "{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} a échoué ({security_description})", "\*{cid}{security_description}", "{security_description}" |
NETWORK_HTTP | thread_id est mappé sur principal.process.pid severity est mappé sur security_result.severity (le débogage est mappé sur UNKNOWN_SEVERITY, les informations sont mappées sur INFORMATIONAL, l'avertissement est mappé sur LOW, l'avertissement est mappé à MEDIUM, l'erreur est mappée à ERROR, le critique est mappé sur CRITICAL, l'alerte est mappée à HIGH) target_file_full_path est mappé sur target.file.full_path principal_ip est mappé sur principal.ip target_hostname est mappé sur target.hostname http_method est mappé sur network.http.method resource_name est mappée sur principal.resource.name 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ée sur 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} | STATUS_UPDATE | "time" est mappé sur "metadata.timestamp". securtiy_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] Recherche du fichier '/dev/.oz/.nap/rkit/terror' [ introuvable ] | [<message_text>] {security_description} {file_path}[{metadata_description}] | FILE_UNCATEGORIZED | metadata_description est mappé sur metadata.description file_path est mappé sur target.file.full_path security_description est mappée 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 | ossec : Taille du fichier réduite (l'inode est resté) : '/var/log/rkhunter.log'. | (<optional_field><message_text>:){metadata_description}:'{file_path}' | FILE_UNCATEGORIZED | l'heure est mappée sur metadata.timestamp "metadata_description" est mappé sur "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 | 7 juil. 18:48:32 noyau zynvpnsvr: [2081387.006876] IPv4: source martienne 1.20.32.39 de 192.0.2.1, sur dev as0t5 | {timestamp}{principal_hostname}{metadata_product_event_type}: [<message_text>?] <message_text>?{target_ip}\from{principal_ip}, sur le développeur {target_user_userid} | NETWORK_CONNECTION | Le code temporel est mappé sur "metadata.event_timestamp". principal_hostname est mappé sur "principal.hostname" Le champ "metadata_product_event_type" est mappé sur "metadata.product_event_type". target_ip est mappé sur "target.ip". principal_ip est mappé sur "principal.ip" target_user_userid est mappé sur "target.user.userid". "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" |
/var/log/kern.log | 25 oct. 10:10:51 noyau localhost: [ 31.974576] audit: type=1400 audit(1635136846.152:2): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/lxc-start" pid=752 | {timestamp}{principal_hostname}{metadata_product_event_type}: <message_text>\operation="{metadata_description}"\profile="<message_text>"\name="{file_path}"\pid={pid} |
STATUS_UPDATE | Le code temporel 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" file_path est mappé sur "principal.process.file" Le PID est mappé sur "principal.process.pid" metadata.vendor_name est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" |
/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} | STATUS_UPDATE | Le code temporel 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 "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" |
/var/log/kern.log | 28 avr.11:17:01 kernel localhost: [ 0.030139] smpboot: CPU0: Intel(R) Xeon(R) Gold 5220R CPU @ 2,20 GHz (famille: 0x6, modèle: 0x55, stepping: 0x7) | {timestamp}{principal_hostname}{metadata_product_event_type}:([<message_text>])<message_text>:\CPU0:{principal_asset_hardware_cpu_model}({metadata_description}) | STATUS_UPDATE | Le code temporel 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 "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" cpu_model est mappé sur principal.asset.hardware.cpu_model |
/var/log/syslog.log | Jan 29 13:51:46 winevt env[29194]: [29/Jan/2022:13:51:46] REQUES GET 200 /api/systems/0000-0041 (10.0.1.1) 3179 | {collected_timestamp}{hostname}{command_line}[{pid}]:[{date}<message_text>]REQUES{http_method}{response_code}(<optional_field>{resource}?)({target_ip}){received_bytes} | NETWORK_CONNECTION | "collected_time" est mappé sur "metadata.event_timestamp". Le nom d'hôte est mappé sur principal.hostname. Le pid est mappé sur principal.process.pid http_method est mappé sur network.http.method response_code est mappé sur network.http.response_code La ressource est mappée sur target.url "target_ip" est mappé sur "target.ip". received_bytes est mappé sur network.received_bytes "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" command_line est mappé sur principal.process.command_line |
/var/log/syslog.log | Jul 26 23:13:03 zynossec ossec-authd[1096]: 2021/07/26 23:13:03 ossec-authd: INFO: Received request for a new agent (zsecmgr0000-0719) from: 3.4.5.6 | {collected_timestamp}<message_text>{command_line}[{pid}]:{date} {time} {command_line}:{log_level}:{message}({hostname}) de: {target_ip} | STATUS_UPDATE | collecté_time est mappé sur metadata.event_timestamp. Le nom d'hôte est mappé sur principal.hostname. Le pid est mappé sur principal.process.pid log_level est mappé sur security_result.severity message est mappé sur metadata.description command_line est mappé sur principal.process.command_line "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" "target_ip" est mappé sur "target.ip". |
/var/log/syslog.log | Jul 26 23:13:03 zynossec ossec-authd[1096]: 2021/07/26 23:13:03 ossec-authd: INFO: New connection from 3.4.5.6 | {collected_time}{hostname}{command_line}[{pid}]:{date} {time} {command_line}:{log_level}:{description}from {target_ip} | STATUS_UPDATE | collecté_time est mappé sur metadata.event_timestamp. Le nom d'hôte est mappé sur principal.hostname. Le pid est mappé sur principal.process.pid log_level est mappé sur security_result.severity la description est mappée sur security_result.description command_line est mappée sur principal.process.command_line "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" |
/var/log/syslog.log | Jan 29 13:51:46 zynossec ossec-authd[1096]: 2021/07/26 23:13:03 ossec-authd: ERROR: Invalid agent name zsecmgr0000-0719 (duplicated) | {collected_timestamp}<message_text>{command_line}[{pid}]:{date}<message_text>:{log_level}:{description}{hostname}({reason}) | STATUS_UPDATE | collecté_time est mappé sur metadata.event_timestamp. Le nom d'hôte est mappé sur principal.hostname. Le pid est mappé sur principal.process.pid log_level est mappé sur security_result.severity description + reason est mappé sur security_result.description command_line est mappée sur principal.process.command_line "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" |
/var/log/syslog.log | 2 mai 06:25:01 localhost apachectl[64942]: AH00558 : apache2 : Impossible de déterminer de manière fiable le nom de domaine complet du serveur, à l'aide de ::1. Définissez la directive "ServerName" globalement pour supprimer ce message | {collected_timestamp}{hostname}{command_line}(<optional_field>|[{pid}]):{message} | STATUS_UPDATE | collecté_time est mappé sur metadata.event_timestamp. Le nom d'hôte est mappé sur principal.hostname. pid est mappé sur principal.process.pid. message est mappé sur metadata.description "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" command_line est mappé sur principal.process.command_line |
/var/log/syslog.log | 2 mai 00:00:45 localhost fstrim[64727] : / : 6,7 Gio (7 205 015 552 octets) supprimés | {collected_timestamp}{hostname}{command_line}(<optional_field>|[{pid}]):{message} | STATUS_UPDATE | collecté_time est mappé sur metadata.event_timestamp. Le nom d'hôte est mappé sur principal.hostname. pid est mappé sur principal.process.pid. message est mappé sur metadata.description "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" command_line est mappé sur principal.process.command_line |
/var/log/syslog.log | 3 mai 10:14:37 localhost rsyslogd: l’ID utilisateur de rsyslogd est remplacé par 102 | {collected_timestamp}{hostname}{command_line}:{message}to{user_id} | STATUS_UPDATE | "collected_time" est mappé sur "metadata.collected_timestamp" Le nom d'hôte est mappé sur principal.hostname. message est mappé sur metadata.description user_id est mappé sur principal.user.userid command_line est mappé sur principal.process.command_line "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" |
/var/log/syslog.log | 5 mai 10:36:48 localhost systemd[1]: Démarrage du service de journalisation système... | {collected_timestamp}{hostname}{command_line}(<optional_field>|[{pid}]):{message} | STATUS_UPDATE | collecté_time est mappé sur metadata.event_timestamp. Le nom d'hôte est mappé sur principal.hostname. pid est mappé sur principal.process.pid. message est mappé sur metadata.description "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" command_line est mappée sur principal.process.command_line |
/var/log/mail.log | 16 mars 11:40:56 Ubuntu18 sendmail[9341]: 22G6AtwH009341: from=<ossecm@Ubuntu18>, size=377, class=0, nrcpts=1, metadata_descriptionid=<202203160610,22G6AtwH0 daemon=localhost=localhost.3 | {timestamp} {target_hostname} {application}[{pid}]: <message_text>:{KV} | STATUS_UPDATE | target_hostname est mappé sur target.hostname application est mappée sur target.application pid est mappé sur target.process.pid metadata.vendor_name est défini sur "OSSEC" metadata.product_name est défini sur "OSSEC" |
/var/log/mail.log | 7 avr. 13:44:01 postfixe/retrait production[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ée sur target.application pid est mappé sur target.process.pid metadata.vendor_name est défini sur "OSSEC" metadata.product_name est défini sur "OSSEC" |
/var/log/mail.log | 7 avr. 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}> | STATUS_UPDATE | target_hostname est mappé sur target.hostname application est mappée sur target.application Le PID est mappé sur target.process.pid resource_name est mappée sur target.resource.name "metadata.vendor_name" est défini sur "OSSEC" metadata.product_name est défini sur "OSSEC" |
/var/log/mail.log | 7 avril 13:44:01 prod postfix/qmgr[3539]: AE4271627DB: from=<root@server.hostname.01>, size=565, nrcpt=1 (file d'attente active) | {timestamp} {target_hostname} {application}[{pid}]: <message_text>{KV} | EMAIL_UNCATEGORIZED | target_hostname est mappé sur target.hostname application est mappée sur target.application pid est mappé sur target.process.pid metadata.vendor_name est défini sur "OSSEC" metadata.product_name est défini sur "OSSEC" |
/var/log/mail.log | 7 avril 13:44:01 prod postfix/smtp[23436]: connexion à gmail-smtp-in.l.google.com[2607:f8b0:400d:c03::1b]:25: Le réseau est inaccessible | {timestamp} {target_hostname} {application}[{pid}]: <message_text>{KV} | STATUS_UPDATE | target_hostname est mappé sur target.hostname application est mappée sur target.application pid est mappé sur target.process.pid metadata.vendor_name est défini sur "OSSEC" metadata.product_name est défini sur "OSSEC" |
/var/log/mail.log | 7 avril 13:44:02 prod postfix/local[23439]: E62521627DC: to=<root@server.hostname.01>, relay=local, delay=0.01, delay=0/0.01/0/0, dsn=2.0.0, status=sent (envoyé à la boîte aux lettres) | {timestamp} {target_hostname} {application}[{pid}]: <message_text>{KV} | EMAIL_UNCATEGORIZED | target_hostname est mappé sur target.hostname application est mappée sur target.application pid est mappé sur target.process.pid metadata.vendor_name est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" |
/var/log/rundeck/service.log | [2022-05-04T17:03:11,166] WARN config.NavigableMap - L'accès à la clé de configuration "[filterNames]" via la notation en points est obsolète et sera supprimé dans une prochaine version. Utilisez plutôt "config.getProperty(key, targetClass)". | [{timestamp}]{severity}{summary}\-{security_description}
, à {command_line}\({file_path}:<message_text>\) |
STATUS_UPDATE | command_line est mappée sur "target.process.command_line". file_path est mappé sur "target.process.file.full_path" l'horodatage est mappé sur "metadata.event_timestamp" severity est mappé sur "security_result.severity" le résumé est mappé sur "security_result.summary" security_description est mappé sur "security_result.description" metadata.product_name est défini sur "OSSEC" "metadata.vendor_name" est défini sur "OSSEC" |
/var/log/auth.log | 27 avril 21:03:03 Ubuntu18 systemd-logind[836] : Suppression de la session 3080. | {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}]):{security_description}{network_session_id}?(of user{principal_user_userid})? | USER_LOGOUT | l'horodatage est mappé sur "metadata.timestamp" Si metadata.event_type est USER_LOGOUT, principal_hostname est mappé sur "target.hostname", sinon il est mappé sur "principal.hostname". Si metadata.event_type est USER_LOGOUT, principal_application est mappé sur "target.application", sinon il est mappé sur "principal.application". Si metadata.event_type est défini sur USER_LOGOUT, alors pid est mappé sur "target.process.pid". sinon elle est mappée sur "principal.process.pid". security_description est mappée sur "security_result.description" ; Le champ "network_session_id" est mappé sur "network.session_id". Si metadata.event_type est défini sur USER_LOGOUT, principal_user_userid est mappé sur "principal.user.userid". sinon elle est mappée sur "target.user.userid". "principal.platform" est mappé sur "LINUX" Si (removed_session) le type d'événement est défini sur USER_LOGOUT Le champ extensions.auth.type est défini sur AUTHTYPE_UNSPECIFIED. metadata.vendor_name est défini sur "OSSEC" metadata.product_name est défini sur "OSSEC" |
/var/log/auth.log | 28 avril 11:33:24 Ubuntu18 systemd-logind[836] : Nouvelle session 3205 de l'utilisateur racine. | {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}]):{security_description}{network_session_id}?(of user{principal_user_userid})? | USER_LOGIN | l'horodatage est mappé sur "metadata.timestamp" Si metadata.event_type est USER_LOGOUT, principal_hostname est mappé sur "target.hostname", sinon il est mappé sur "principal.hostname". Si metadata.event_type est USER_LOGOUT, principal_application est mappé sur "target.application", sinon il est mappé sur "principal.application". Si metadata.event_type est défini sur USER_LOGOUT, alors pid est mappé sur "target.process.pid". sinon elle est mappée sur "principal.process.pid". security_description est mappée sur "security_result.description" ; Le champ "network_session_id" est mappé sur "network.session_id". Si metadata.event_type est défini sur USER_LOGOUT, principal_user_userid est mappé sur "principal.user.userid". sinon elle est mappée sur "target.user.userid". "principal.platform" est mappé sur "LINUX" "network.application_protocol" est mappé sur "SSH" if(new_session) event_type est défini sur USER_LOGIN Le champ extensions.auth.type est défini sur AUTHTYPE_UNSPECIFIED. metadata.vendor_name est défini sur "OSSEC" metadata.product_name est défini sur "OSSEC" |
/var/log/auth.log | 28 avr. 11:35:31 Ubuntu18 sshd[23573] : Mot de passe accepté pour root depuis 10.0.1.1 port 40503 ssh2 | {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}])<optional_field> {security_description} pour (utilisateur non valide) ?{principal_user_userid} sur le port {principal_ip} du port {principal_port} ssh2(:{security_result_detection_fileds_ssh_kv}SHA256:{security_result_detection_fileds_kv}) ? | USER_LOGIN | l'horodatage est mappé sur "metadata.timestamp" Si metadata.event_type est USER_LOGOUT, principal_hostname est mappé sur "target.hostname", sinon il est mappé sur "principal.hostname". Si metadata.event_type est USER_LOGOUT, principal_application est mappé sur "target.application", sinon il est mappé sur "principal.application". Si metadata.event_type est défini sur USER_LOGOUT, alors pid est mappé sur "target.process.pid". sinon elle est mappée sur "principal.process.pid". security_description est mappé sur "security_result.description" Si metadata.event_type est USER_LOGOUT, principal_user_userid est mappé sur "principal.user.userid", 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é sur "security_result.detection_fields.key/value" security_result_detection_fields_kv est mappé sur "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 "OSSEC" metadata.product_name est défini sur "OSSEC" |
/var/log/auth.log | 28 avril 11:50:20 Ubuntu18 sshd[24145] : pam_unix(sshd:auth) : échec de l'authentification ; logname= uid=0 euid=0 tty=ssh ruser= rhost=10.0.1.1 user=root | {timestamp} {principal_hostname}{principal_application}([{pid}])<optional_field> <message_text>: {security_description};logname=(<message_text>)?uid=({principal_user_userid})?euid=({principal_user_attribute_labels_euid_kv})?tty=(<message_text>)?ruser=({principal_ruser_userid})?rhost=({target_ip})?(user=(<optional_field>{principal_user_userid}|{principal_user_userid})?)? | USER_LOGIN | l'horodatage est mappé sur "metadata.timestamp" Si metadata.event_type est USER_LOGOUT, principal_hostname est mappé sur "target.hostname", sinon il est mappé sur "principal.hostname". Si metadata.event_type est USER_LOGOUT, principal_application est mappé sur "target.application", sinon il est mappé sur "principal.application". Si metadata.event_type est défini sur USER_LOGOUT, alors pid est mappé sur "target.process.pid". sinon elle est mappée sur "principal.process.pid". security_description est mappé sur "security_result.description" principal_user_uuserid est mappé sur "principal.user.attribute.labels". principal_user_attribute_labels_euid_kv est mappé sur "principal.user.attribute.labels.key/value" principal_ruser_userid est mappé sur "principal.user.attribute.labels.key/value" target_ip est mappé sur "target.ip" Si metadata.event_type est défini sur USER_LOGOUT, alors principal_user_userid est mappé sur "principal.user.userid" sinon elle est mappée sur "target.user.userid". "principal.platform" est défini sur "LINUX" "network.application_protocol" est défini sur "SSH" "metadata.vendor_name" est défini sur "OSSEC" metadata.product_name est défini sur "OSSEC" |
/var/log/auth.log | 24 févr. 00:13:02 precise32 sudo : tsg : l'utilisateur n'est PAS dans sudoers ; TTY=pts/1 ; PWD=/home/vagrant ; 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} | STATUS_UPDATE | l'horodatage est mappé sur "metadata.timestamp" principal_hostname est mappé sur principal.hostname principal_application est mappé sur principal.application pid est mappé sur principal.process.pid. principal_user_userid est mappé sur target.user.userid security_description est mappée 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 | 26 avr. 07:39:01 Ubuntu18 CRON[2126] : pam_unix(cron:session) : session ouverte pour l'utilisateur racine par (uid=0) | {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}])<optional_field> {security_description} for (invalid user|user)?{principal_user_userid}(by (uid={principal_user_attribute_labels_uid_kv}))?$ | USER_LOGIN | l'horodatage est mappé sur "metadata.timestamp" Si metadata.event_type est défini sur USER_LOGOUT, alors principal_hostname est mappé sur "target.hostname" sinon elle est mappée à "principal.hostname". Si metadata.event_type est USER_LOGOUT, principal_application est mappé sur "target.application", sinon il est mappé sur "principal.application". Si metadata.event_type est défini sur USER_LOGOUT, alors pid est mappé sur "target.process.pid". sinon elle est mappée sur "principal.process.pid". security_description est mappé sur "security_result.description" Si metadata.event_type est USER_LOGOUT, principal_user_userid est mappé sur "principal.user.userid", 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 "OSSEC" metadata.product_name est défini sur "OSSEC" |
/var/log/auth.log | 26 avril 07:39:01 Ubuntu18 CRON[2126]: pam_unix(cron:session): session fermée pour la racine de l'utilisateur | {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}])<optional_field> {security_description} for (invalid user|user)?{principal_user_userid}(by (uid={principal_user_attribute_labels_uid_kv}))?$ | USER_LOGOUT | l'horodatage est mappé sur "metadata.timestamp" Si metadata.event_type est défini sur USER_LOGOUT, alors principal_hostname est mappé sur "target.hostname" sinon elle est mappée à "principal.hostname". Si metadata.event_type est USER_LOGOUT, principal_application est mappé sur "target.application", sinon il est mappé sur "principal.application". Si metadata.event_type est défini sur USER_LOGOUT, alors pid est mappé sur "target.process.pid". sinon elle est mappée sur "principal.process.pid". security_description est mappé sur "security_result.description" Si metadata.event_type est défini sur USER_LOGOUT, principal_user_userid est mappé sur "principal.user.userid". sinon elle est mappée 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" metadata.vendor_name est défini sur "OSSEC" metadata.product_name est défini sur "OSSEC" |
/var/log/auth.log | 24 mai 12:56:31 ip-10-50-2-176 sshd[119931]: Expiration du délai, le client ne répond pas. | {timestamp} {principal_hostname}{principal_application}([{pid}])<optional_field> {security_result_description} | STATUS_UPDATE | l'horodatage est mappé sur "metadata.timestamp" principal_hostname est mappé sur principal.hostname principal_application est mappé sur principal.application pid est mappé sur principal.process.pid. security_result_description est mappé sur security_result_description "principal.platform" est défini sur "LINUX" metadata.vendor_name est défini sur OSSEC metadata.product_name est défini sur OSSEC |
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} | STATUS_UPDATE | l'horodatage est mappé sur "metadata.timestamp" pid est mappé sur "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é sur "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 "OSSEC" "metadata.vendor_name" est défini sur "OSSEC" |
var/log/samba/log.winbindd | messaging_dgm_init : échec de l'association : aucun espace restant sur l'appareil | {user_id} : {desc} | STATUS_UPDATE | metadata.product_name est défini sur "OSSEC" metadata.vendor_name" est défini sur "OSSEC" user_id est mappé sur principal.user.userid desc est mappé sur metadata.description |
var/log/openvpnas.log | 2022-04-29T10:51:22+0530 [stdout#info] [OVPN 4] OUT: '2022-04-29 05:21:22 mohit_AUTOLOGIN/10.50.0.1:16245 MULTI: Learn: 172.27.232.2 -> mohit_AUTOLOGIN/10.50.0.1:16245' | {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<champ_facultatif>'|")<texte_message>-<texte_message>{utilisateur}\/{ip}:{port}MULTI:Learn:{local_ip}->{target_hostname}?{target_ip}:{port}(<champ_facultatif>'|") | NETWORK_HTTP | l'horodatage est mappé sur "metadata.timestamp" log_level est mappé sur security_result.severity local_ip est mappé sur principal.ip target_ip est mappé sur target.ip target_hostname est mappé sur principal.hostname Le port est mappé sur target.port user est mappé sur 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 | 28-04-2022T16:14:13+0530 [stdout#info] [OVPN 6] SORT : '2022-04-28 16:14:13 versions de la bibliothèque: OpenSSL 1.1.1 11 sept. 2018, LZO 2.08' | {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<optional_field>'|")<message_text>{msg}(<optional_field>'|") | STATUS_UPDATE | l'horodatage est mappé sur "metadata.timestamp" log_level est mappé sur security_result.severity message 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-29T10:51:22+0530 [stdout#info] [OVPN 4] OUT: '2022-04-29 05:21:22 10.50.0.1:16245 [mohit_AUTOLOGIN] Peer Connection Initiated with [AF_INET]10.50.0.1:16245 (via [AF_INET]10.50.2.175%ens160)' | {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<optional_field>'|")<message_text>{message}(<optional_field>'|")
le message est mappé sur <message_text>avec[<message_text>]<message_text>:{port}<message_text> |
STATUS_UPDATE | l'horodatage est mappé sur "metadata.timestamp" log_level est mappé sur security_result.severity Le message 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-29T10:51:22+0530 [stdout#info] [OVPN 4] OUT: "2022-04-29 05:21:22 mohit_AUTOLOGIN/10.50.0.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 172.27.232.1,dhcp-option DNS 10.0.1.99,dhcp-option DNS 10.0.1.94,register-dns,block-ipv6,ifconfig 172.27.232.2 255.255.254.0,peer-id 0,auth-tokenSESS_ID,cipher AES-256-GCM,key-derivation tls-ekm' (status=1)" | {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<champ_facultatif>'|")<texte_message>{utilisateur}\/{ip}:{message}(<champ_facultatif>'|") | STATUS_UPDATE | l'horodatage est mappé sur "metadata.timestamp" log_level est mappé sur security_result.severity message est mappé sur security_result.description "user" est mappé sur principal.user.user_display_name L'adresse IP est mappée sur principal.ip "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}' | STATUS_UPDATE | l'horodatage est mappé sur "metadata.timestamp" log_level est mappé sur security_result.severity message est mappé sur security_result.description summary est mappé sur security_result.summary user_name est mappé sur principal.user.user_display_name La ligne de commande est mappée sur principal.process.command_line. é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/audit.log | type=SYSTEM_RUNLEVEL metadata_description=audit(1651576133.423:202): pid=1571 uid=0 auid=4294967295 ses=4294967295 metadata_description='old-level=N new-level=5 comm="systemd-update-utmp" exe="/lib/systemd/systemd-update-utmp" hostname=? addr=? terminal=? res=success' | type={audit_log_type} |
EventType dans l'onglet de mappage EventType du journal d'audit de la feuille actuelle | audit_log_type est mappé sur metadata.product_event_type "metadata_ingested_timestamp" est mappé sur "metadata.event_timestamp" "metadata.vendor_name" est défini sur "OSSEC" metadata.product_name est défini sur "OSSEC" principal.plateform est défini sur "LINUX" les données sont mappées avec la clé-valeur paire-> Mappage UDM dans l'onglet audit.log de la feuille actuelle |
var/ossec/logs/ossec.log | 2022/05/12 18:15:34 ossec-syscheckd: INFO: démarrage de l'analyse syscheck | {timestamp} {application}(({pid}))<optional_field>{severity}:{metadata_description} | STATUS_UPDATE | application est mappée sur target.application Le PID est mappé sur target.process.pid severity est mappé sur security_result.severity metadata_description est mappé sur metadata.description metadata.vendor_name est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" |
var/ossec/logs/ossec.log | 2022/05/11 19:34:27 ossec-logcollector: INFO: Monitoring full output of command(360): last -n 5 | {timestamp} {application}(({pid}))<optional_field>{severity}:(?<metadata_description>.*command.*(<message_text>)):{command_line} | PROCESS_UNCATEGORIZED | application est mappée sur target.application Le PID est mappé sur target.process.pid severity est mappé sur security_result.severity command_line est mappé sur target.process.command_line metadata_description est mappé sur metadata.description metadata.vendor_name est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" |
var/ossec/logs/ossec.log | 2022/05/11 19:34:27 ossec-analysisd(1210): ERROR: Queue '/queue/alerts/ar' not accessible: "Connection refused" (Connexion refusée). | {timestamp} {application}(({pid}))<optional_field>{severity}: Queue '{resource}'<message_text>:'{metadata_description}' | USER_RESOURCE_ACCESS | application est mappée sur target.application Le PID est mappé sur target.process.pid severity est mappé sur security_result.severity "metadata_description" est mappé sur "metadata.description" La ressource est mappée sur target.resource.name "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" |
var/ossec/logs/ossec.log | 2022/05/11 19:34:27 ossec-logcollector(1950): INFO: Analyse du fichier : '/var/log/rundeck/rundeck.log'. | {timestamp} {application}(({pid}))<optional_field>{severity}:(?<metadata_description><message_tewxt>fichier<message_text>):'{file_path}' | FILE_UNCATEGORIZED | application est mappée sur target.application Le PID est mappé sur target.process.pid severity est mappé sur security_result.severity file_path est mappé sur target.file.full_path metadata_description est mappé sur metadata.description metadata.vendor_name est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" |
var/ossec/logs/ossec.log | 2022/05/11 19:34:25 ossec-syscheckd: INFO: ignoring: 'C:\WINDOWS/PCHEALTH/HELPCTR/DataColl' | {timestamp} {application}(({pid}))<optional_field>{severity}:<message_text>ignoring<message_text>:'{file_path}' | SCAN_PROCESS | application est mappée sur target.application Le PID est mappé sur target.process.pid severity est mappé sur security_result.severity file_path est mappé sur target.file.full_path metadata.vendor_name est défini sur OSSEC "metadata.product_name" est défini sur "OSSEC" |
var/ossec/logs/ossec.log | 2022/05/11 19:34:21 ossec-remoted(1410): INFO: Lecture du fichier des clés d'authentification. | {timestamp} {application}(({pid}))<optional_field>{severity}:{metadata_description} | STATUS_UPDATE | application est mappée sur target.application Le PID est mappé sur target.process.pid severity est mappé sur security_result.severity metadata_description est mappé sur metadata.description metadata.vendor_name est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" |
var/ossec/logs/ossec.log | 11/05/2022 19:34:21 ossec-remoted(1103): ERREUR: impossible d'ouvrir le fichier "/queue/rids/004" pour la raison suivante : [(13)-(Permission denied)]. | {timestamp} {application}(({pid}))<optional_field>{severity}:(?<metadata_description><message_text>file<message_text>) '{file_path}'<message_text>[({error_code})-({error_metadata_description})] | FILE_UNCATEGORIZED | application est mappée sur target.application Le PID est mappé sur target.process.pid severity est mappé sur security_result.severity file_path est mappé sur target.file.full_path "metadata_description" est mappé sur "metadata.description" error_code est mappé sur security_result.summary error_metadata_description est mappé sur security_result.summary metadata.vendor_name est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" |
var/ossec/logs/ossec.log | 23/03/2022 13:00:51 ossec-remoted(1206): ERREUR: impossible de lier le port "1514" | {timestamp} {application}(({pid}))<optional_field>{severity}:{metadata_description}port'{port}' | STATUS_UPDATE | application est mappée sur target.application Le PID est mappé sur target.process.pid severity est mappé sur security_result.severity metadata_description est mappé sur metadata.description Le port est mappé sur target.port metadata.vendor_name est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" |
var/ossec/logs/ossec.log | 2022/05/11 19:32:05 ossec-analysisd : INFO : Lecture du fichier de règles : "ms-se_rules.xml" | {timestamp} {application}(({pid}))<optional_field>{severity}:{metadata_description}:'{file_path}' | FILE_READ | application est mappée sur target.application Le PID est mappé sur target.process.pid severity est mappé sur security_result.severity metadata_description est mappé sur metadata.description file_path est mappé sur target.file.full_path "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" |
var/ossec/logs/ossec.log | 2022/05/11 19:32:06 ossec-analysisd : INFO : Ignoré le fichier : '/etc/mnttab' | {timestamp} {application}(({pid}))<champ_facultatif>{severity}:<texte_message>(ignorant|ignorant le fichier)<message_text>:'{file_path}' | FILE_UNCATEGORIZED | application est mappée sur target.application Le PID est mappé sur target.process.pid severity est mappé sur security_result.severity file_path est mappé sur target.file.full_path "metadata.vendor_name" est défini sur "OSSEC" metadata.product_name est défini sur "OSSEC" |
Processus ntpd | udp6 0 0 fe80::c59:3eff:fe14:123 :::* 999 20209 570/ntpd | {protocol}{rec}{send}{ip}:{port}<message_text>{pid}/{process_name} | STATUS_UPDATE | Le protocole est mappé sur network.ip_protocol Le pid est mappé sur principal.process.pid metadata.description est défini sur "Nom du programme : %{process_name}". metadata.vendor_name est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" |
syscheck | Fichier '/usr/bin/fwts' modifié | Fichier "{file_path}" {description} | FILE_MODIFICATION | description est mappée sur metadata.description file_path est mappé sur target.file.full_path "metadata.vendor_name" est défini sur "OSSEC" "metadata.product_name" est défini sur "OSSEC" principal.platform est défini sur "LINUX" |
Audit
Champs de journaux d'audit vers des champs UDM
Le tableau suivant répertorie les champs de journal du type de journal d'audit. et les champs UDM correspondants.
Champ du journal | Champ UDM |
---|---|
compte | 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 |
nœud d'index | 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 |
Nouveau disque | target.resource.name |
nouvelle mémoire | 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 |
permanente | 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 |
triste | security_result.detection_fields.key/value |
sauid | target.user.attribute.labels.key/value |
S | 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', securtiy_result.summary est défini sur "l'appel système a réussi".
else securtiy_result.summary est défini sur "systemcall was failed" |
suid | target.user.userid |
appel système | 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 ID de compte principal, USER_MAC_POLICY] est défini sur USER_MAC_POLICY.
sinon uid est défini sur target.user.userid |
vm | target.resource.name |
Passer du type de journal d'audit au type d'événement UDM
Le tableau suivant répertorie 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 d'espace utilisateur est ajouté. |
ANOM_ABEND | GENERIC_EVENT/PROCESS_TERMINATION | Déclenché lorsqu'un processus se termine de manière anormale (avec un signal pouvant provoquer un vidage de mémoire, s'il est activé). |
AVC | GENERIC_EVENT | Déclenchement de l'enregistrement d'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éclenché lorsqu'un utilisateur obtient 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 dans l'espace utilisateur. |
CRYPTO_KEY_USER | USER_RESOURCE_ACCESS | Déclenchement de l'enregistrement de l'identifiant de clé cryptographique utilisé à des fins de chiffrement. |
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é 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é lorsqu'un daemon est arrêté avec succès. |
DAEMON_RESUME | PROCESS_UNCATEGORIZED | Déclenché lorsque le daemon auditd reprend la journalisation. |
DAEMON_ROTATE | PROCESS_UNCATEGORIZED | Déclenché lorsque le daemon auditd effectue la rotation des fichiers journaux d'audit. |
DAEMON_START | PROCESS_LAUNCH | Déclenché lors du démarrage du daemon 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 | Se déclenche pour enregistrer des informations sur un événement IPSec lorsqu'un tel événement est détecté ou lorsque la configuration IPSec change. |
MAC_POLICY_LOAD | GENERIC_EVENT | Déclenché lorsqu'un fichier de règles SELinux est chargé. |
MAC_STATUS | GENERIC_EVENT | Déclenché lors de la modification du mode SELinux (application forcée, permissif, désactivé). |
MAC_UNLBL_STCADD | SYSTEM_AUDIT_LOG_UNCATEGORIZED | Déclenché lorsqu'une étiquette statique est ajoutée lors de l'utilisation des fonctionnalités de libellé 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éclenchement pour enregistrer les informations sur le chemin du nom de fichier. |
SELINUX_ERR | GENERIC_EVENT | Déclenché 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éclenché lorsqu'un service est arrêté. |
SYSCALL | GENERIC_EVENT | Déclenchement de l'enregistrement d'un appel système au noyau. |
SYSTEM_BOOT | STATUS_STARTUP | Déclenché 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éclenchement lorsqu'une tentative d'authentification de 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 d'espace utilisateur est exécutée. |
USER_END | USER_LOGOUT | Déclenché lorsqu'une session d'espace utilisateur est arrêtée. |
USER_ERR | USER_UNCATEGORIZED | Déclenché lorsqu'une erreur d'état du 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éclenché lorsqu'un daemon d'espace utilisateur charge une règle SELinux. |
USER_MGMT | USER_UNCATEGORIZED | Déclenchement 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éclenché au démarrage d'une session d'espace utilisateur. |
USYS_CONFIG | USER_RESOURCE_UPDATE_CONTENT | Déclenché lorsqu'une modification de la configuration système dans l'espace utilisateur est détectée. |
VIRT_CONTROL | STATUS_UPDATE | Déclenché 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 à une machine virtuelle. |
Champs du journal de messagerie vers les champs UDM
Le tableau suivant répertorie les champs de journal du type de journal de messagerie. 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 |
Statistiques | security_result.summary |
à | network.email.to |
Types de journaux de messagerie en fonction du type d'événement 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 | GENERIC_EVENT |
pickup | EMAIL_UNCATEGORIZED |
cleanup | GENERIC_EVENT |
qmgr | EMAIL_UNCATEGORIZED |
smtp | GENERIC_EVENT |
interprétabilité locale | EMAIL_UNCATEGORIZED |