4. Syslog

Menu : Administrators > GCenter > Data export

4.1. Configuration Syslog

Depuis cette section les administrateurs de la solution sont capables d'exporter les alertes ou une partie des alertes vers un SIEM.

L'administrateur peut exporter les données en temps réel en ciblant un corrélateur de log de type Syslog primaire et/ou secondaire dont il peut paramétrer les envois :

Pour que la solution TRACKWATCH puisse communiquer ses informations à un serveur Syslog, il faut que cette partie soit paramétrée avec les informations nécessaires. Cette configuration se fait depuis trois onglets:

4.1.1. Paramètres généraux

Enable permet d'activer ou désactiver l'export Syslog.

Name (Exemple : First logging server) est le nom du serveur Syslog attribué par l'administrateur.

Host name (Exemple : localhost ou 192.168.199.1) est l'adresse IP ou le nom du serveur Syslog pour la connexion.

Port number : est le port d'écoute du serveur Syslog pour la connexion. La valeur par défaut est à 514.

Codec : (Exemple : json, idmef, cef ou plain) est le codec utilisé pour les données de sortie. Les codecs de sortie sont une méthode pratique pour coder vos données avant l'exportation sans avoir besoin d'un autre filtre. Par défaut la valeur est en json.

RFC (Exemple : 3164 ou 5424) permet de sélectionner la RFC correspondante à la normalisation des messages voulue.

Facility (Exemple : kernel, user-level, mail, deamon, security/authorization, syslogd, line printer, network news, uucp) correspond à la catégorie de message utilisée pour l'envoi vers le serveur Syslog. La valeur par défaut est à kernel.

Severity (Exemple : emergency, alert, critical, error, warning, notice, informational, debug) correspond au taux de gravité pour les messages Syslog. La valeur par défaut est à emergency.

Severity Description
Emergency Le système est inutilisable
Alert Des mesures doivent être prises immédiatement
Critical Conditions critiques
Error Conditions d'erreur
Warning Conditions d'avertissement
Notice Condition normale mais significative
Informational Messages informatifs
Debug Messages de niveau débogage

Protocol (Exemple : tcp, udp ou ssl_tcp) est le protocole utilisé pour le transfert des données. La valeur par défaut est en TCP.

Note

Le protocole SSL-TCP est obligatoire lorsque le chiffrement SSL est activé. Sinon, il est désactivé.

Output interface (Exemple : mgmt0, sup0) correspond à l'interface sélectionnée de sortie entre le GCENTER et le SIEM.

La prise en compte de toute modification est effective qu'après avoir appuyé sur 'Save'.

4.1.2. Filtrage

Message type : (Exemple : alerts, all) définit le type d'évènement à envoyer : uniquement les alertes ou toutes les informations (méta-données, fileinfo, ...)

Protocols : (Exemple : dcerpc, dhcp, dnp3, dns, ftp, http, ikev2, krb5, modbus, netflow, nfs, smb, smtp, ssh, tftp, tls et ntp) permet de sélectionner les protocoles à exporter.

Note

[Select All] sélectionne tous les protocoles listés: un protocole qui n'est pas listé ne sera pas exporté. Si la version du GCAP est plus récente que celle du GCENTER, certains protocoles peuvent manquer. Pour tout exporter, désactivez ce filtre avec [Deselect all].

Gcaps : (Exemple : GCap1, GCap2) permet de filtrer par GCAP. Toutes les données des GCAP appairés au GCENTER sont envoyés au serveur Syslog si rien n'est sélectionné.

Additional fields permet à l'administrateur d'ajouter des champs supplémentaires aux données transférées. Un nom (Name) et une description (value) peuvent être renseignés dans cette fenêtre. Dans le cas de l'utilisation du codec idmef, ce champs n'est pas supporté.

La prise en compte de toute modification est effective qu'après avoir appuyé sur 'Save'.

4.1.3. Chiffrement

Cette partie permet d'ajouter du chiffrement dans le transfert de ses données entre le GCENTER et le receveur syslog. Il sera nécessaire d'ajouter un certificat, la clé associée ainsi que l'autorité de certification afin de valider cette fonctionnalité.

Enable TLS : possibilité d'activer le service TLS (Transport Layer Security). Désactivée par défaut.

Check certificate : paramètre qui consiste à arrêter la vérification de la validité du certificat lorsque le service TLS est activé.

La prise en compte de toute modification est effective qu'après avoir appuyé sur 'Save'.

4.2. Logstash

Menu : Administrators > GCenter > Data export

Le GCenter peut exporter ses logs vers l'ETL Logstash. Un pipeline développé par Gatewatcher permet de récupérer le contenu JSON des logs exportés afin de pouvoir le manipuler ensuite comme on le souhaite avec les filtres Logstash. L'intégration du Gcenter est donc très rapide, et ne nécessite que deux étapes :

  • Sur le Gcenter, configurer l'export de données vers Logstash.

  • Sur Logstash, configurer le pipeline de réception du flux provenant du GCenter.

4.2.1. Configuration de l'export de données Logstash

Choisir l'un des deux pipelines d'export en cliquant sur Configure.

Le tableau suivant résume les paramètres à appliquer dans l'onglet GENERAL.

Note

Les valeurs dont le format est de type $VALEUR sont spécifiques au contexte et sont notées comme telles afin qu'il puisse y être fait référence dans la suite de la documentation.

Paramètre Description Valeur
Enable Activer ce pipeline d'export Activé
Name Nom de l'export Syslog $SYSLOG_NAME
Hostname Nom DNS ou adresse IP du serveur Logstash $LOGSTASH_IP
Port Port de destination $LOGSTASH_PORT
Codecs Codec utilisé pour l'export JSON
RFC Norme utilisée par le codec 3164
Facility Valeur de "facility" dans l'en-tête Syslog kernel par défaut ; L'en-tête sera supprimé par le pipeline de réception
Severity Valeur de "severity" dans l'en-tête Syslog emergency par défaut ; L'en-tête sera supprimé par le pipeline de réception
Protocol Le protocole de transport utilisé. TCP ou UDP peuvent être utilisés $PROTOCOL
Output interface Choisir l'interface du GCenter utilisée pour l'export Syslog $GCENTER_IFACE

L'onglet FILTERS permet de choisir quels logs seront exportés. Voir filtrage dans la section syslog.

L'onglet "ENCRYPTION" permet d'activer le chiffrement du flux généré par le GCenter. L'input "syslog" de Logstash n'est pas compatible avec le chiffrement des données, et cette fonctionnalité ne peut donc pas être utilisée.

4.2.2. Pipeline Logstash

L'input utilisé est de type Syslog. Afin d'être compatible avec n'importe quel en-tête Syslog, un motif grok est spécifié. Le contenu JSON du log se trouve dans le champ syslog_message.

input {
  syslog {
    port => $LOGSTASH_PORT
    type => syslog
    grok_pattern => '^<%{NUMBER:syslog_priority}>(?:1 |)(?:%{SYSLOGTIMESTAMP:syslog_timestamp}|%{TIMESTAMP_ISO8601:syslog_timestamp}) %{SYSLOGHOST:syslog_hostname} (?:gatewatcher\[-\]:|gatewatcher - - \[-\]) %{GREEDYDATA:syslog_message}\n$'
  }
}

On ne garde que le champ syslog_message, et on le convertit en JSON. Le champ d'origine (syslog_message) et le champ propre à elasticsearch (@version) sont ensuite retirés.

filter {
  prune {
    whitelist_names => [ "syslog_message" ]
  }

  json {
    source => "syslog_message"
  }

  mutate {
    remove_field => [ "@version","syslog_message" ]
  }

 }

N'importe quel output peut être ensuite utilisé. Dans cet exemple, on écrit les logs directement sur le disque sous forme de fichiers:

output {
  file {
    path => '/usr/share/logstash/data/output/%{[type]}-%{+YYYY.MM.dd}.log'
    codec => json_lines
  }
}

4.2.3. POC rapide

Un POC avec un docker Logstash peut être réalisé en quelques minutes. Les commandes suivantes, données à titre indicatif, devraient faciliter cette tâche.

Sur une machine linux possédant docker, exécuter les commandes suivantes afin de récupérer les fichiers de configuration par défaut de Logstash : (procédure testée avec la version 7.13.1 de Logstash)

mkdir logstash_docker
cd logstash_docker
sudo docker run --name="logstash_tmp" --rm -d -it docker.elastic.co/logstash/logstash:7.13.1
sudo docker cp logstash_tmp:/usr/share/logstash/config config
sudo docker cp logstash_tmp:/usr/share/logstash/pipeline pipeline
sudo docker rm -f logstash_tmp

On obtient alors un dossier logstash_docker, au sein duquel deux sous-dossiers sont apparus : config et pipeline.

Dans config, les paramètres peuvent être gardés par défaut, à l'exception du paramètre xpack.monitoring.elasticsearch.hosts qui doit être commenté dans logstash.yaml.

Dans le dossier pipeline, remplacer le pipeline par défaut par le pipeline décrit dans la section ci-dessus.

Un docker utilisant ces fichiers de configuration et ce pipeline peut ensuite être démarré :

sudo docker run --name="logstash_export" --rm -d -it -p $LOGSTASH_PORT:$LOGSTASH_PORT/$PROTOCOL -v $(pwd)/config/:/usr/share/logstash/config/ -v $(pwd)/pipeline:/usr/share/logstash/pipeline/ -v $(pwd)/output:/usr/share/logstash/data/output/ --user $(id -u):$(id -g) docker.elastic.co/logstash/logstash:7.13.1

Logstash va alors créer un répertoire output dans lequel les logs reçus seront écrits, avec un JSON par ligne.

4.3. Splunk

Menu : Administrators > GCenter > Data export

Le GCenter peut exporter ses logs vers le SIEM Splunk. Un Technological Add-On (TA) développé par Gatewatcher permet de mapper les logs exportés par le GCenter vers les modèles de données Splunk. L'intégration du GCenter est donc très rapide, et nécessite trois étapes :

  • Sur le GCenter, configurer l'export de données vers Splunk.

  • Sur le serveur Splunk, installer le TA compatible avec la version du GCenter installé. En l'occurrence, TA-gatewatcher-gcenter-v101.

  • Sur le serveur Splunk, configurer la réception des données en provenance du GCenter et les associer au TA.

Note

Le TA Splunk est encore en version bêta. Le contenu du TA est détaillé à la fin de cette documentation afin que les administrateurs puissent l'adapter à leurs besoins.

4.3.1. Configuration de l'export de données Splunk

Choisir l'un des deux pipelines d'export en cliquant sur "Configure".

Le tableau suivant résume les paramètres à appliquer dans l'onglet "GENERAL"

Note

Les valeurs dont le format est de type $VALEUR sont spécifiques au contexte et sont notées comme telles afin qu'il puisse y être fait référence dans la suite de la documentation.

Paramètre Description Valeur
Enable Activer ce pipeline d'export Activé
Name Nom de l'export Syslog $SYSLOG_NAME
Hostname Nom DNS ou adresse IP du serveur Splunk $SPLUNK_IP
Port Port de destination du flux Syslog $SYSLOG_PORT
Codecs Codec utilisé pour l'export JSON
RFC Norme utilisée par le codec 3164
Facility Valeur de "facility" dans l'en-tête Syslog kernel par défaut ; l'en-tête sera supprimé par le TA Splunk.
Severity Valeur de "severity" dans l'en-tête Syslog emergency par défaut ; l'en-tête sera supprimé par le TA Splunk.
Protocol Le protocole de transport utilisé. TCP ou UDP peuvent être utilisés $PROTOCOL
Output interface Choisir l'interface du GCenter utilisée pour l'export Syslog $GCENTER_IFACE

L'onglet "FILTERS" permet de choisir les logs qui seront exportés. Voir filtrage dans la section syslog.

L'onglet "ENCRYPTION" permet d'activer si nécessaire le chiffrement du flux entre le GCenter et Splunk. $PROTOCOL devra alors être TCP. Si le chiffrement est activé, la configuration de l'entrée de donnée Splunk (input.conf) devra contenir les stanzas appropriées. Ce guide ne couvre pas la configuration du chiffrement entre le GCenter et Splunk.

4.3.2. Installation du TA

Télécharger le TA ici : TA-gatewatcher-gcenter-v101-0.1.0.spl

L'installation du TA se fait comme pour toute app Splunk. Les étapes sont les suivantes (consultez la documentation relative à votre version de Splunk pour plus de détails) :
Gérer les apps > Installer une application depuis un fichier > choisir le TA Gatewatcher > "Envoyer"

Dans le menu de gestion des apps Splunk, en cliquant sur "Afficher les objets", vous pouvez accéder à l'ensemble des objets apportés par le TA :

  • La définition des alias de champ.

  • La définition des eventtypes.

  • Les associations entre eventtype et tags.

Vous pouvez activer/désactiver les objets depuis cette interface et modifier leurs permissions (par défaut, les permissions sont à "Global" - Lecture pour tout le monde - Écriture pour les admins seulement).

4.3.3. Configuration de la réception des données

La configuration de l'entrée de données au niveau de Splunk doit être faite en cohérence avec la configuration du GCenter.

Dans Splunk, la configuration se fera dans Paramètres > Données > Entrées de données > TCP/UDP

Le tableau suivant résume les paramètres à appliquer pour que l'entrée de donnée fonctionne :

Paramètre Description Valeur
TCP/UDP Protocole de transport utilisé Doit être égal à $PROTOCOL
Port Port d'écoute sur le serveur Splunk Doit être égal à $SYSLOG_PORT
Sourcetype Sourcetype assigné au flux reçu gw:gcenter:101
Contexte de l'app App dans laquelle le fichier input.conf relatif à cette entrée sera placé TA-gatewatcher-gcenter-101
Index Index dans lequel les données reçues seront écrites Selon votre architecture de données, vous pouvez utiliser un index spécifique pour les logs de Gatewatcher.

4.3.4. Composition du TA

Le TA est composé des fichiers ci-après, placé dans le répertoire default de l'application. Vous pouvez apporter des modifications à ces fichiers pour adapter le comportement du TA à vos besoins spécifiques et à votre usage des modèles de données. La bonne pratique recommandée consiste à créer un dossier local et à garder le dossier "default" intact (voir la documentation de Splunk "how to edit a configuration file").

4.3.4.1. props.conf

[gw:gcenter:101]
KV_MODE = json
MAX_TIMESTAMP_LOOKAHEAD = 31

La section suivante supprime les en-têtes Syslog et le champ @version d'elasticsearch, qui n'est pas utilisé.

SEDCMD-gw-1-remove-header = s/^([^\{]+)//
SEDCMD-gw-2-remove-host = s/\"host\":\"[^\s"]+\",?//
SEDCMD-gw-3-remove-version = s/\"@version\":\"[^\s"]+\",?//
SEDCMD-gw-4-remove-trailing_comma = s/,}/}/
TIME_FORMAT = %Y-%m-%dT%H:%M:%S.%6N%Z
TIME_PREFIX = \"timestamp_detected\":\"

La transformation suivante appelle gw_force_host dans transforms.conf, et permet d'associer le nom du GCenter au champ host utilisé par Splunk.

TRANSFORMS-host = gw_force_host

La transformation suivante appelle les stanzas sourcetype_* de transforms.conf afin d'associer un sourcetype en fonction du moteur qui a généré le log.

TRANSFORMS-override_sourcetype_engine = sourcetype_malcore,sourcetype_codebreaker,sourcetype_sigflow,sourcetype_sigflow_alert

Les logs ne peuvent pas dépasser 65 ko, les GCenter sont en UTC.

TRUNCATE = 65535
TZ = UTC
category = Splunk App Add-on Builder
pulldown_type = 1

La suite de props.conf permet d'associer à chaque sourcetype les alias de champ et les évaluations de champ permettant de transformer les logs pour les faire correspondre aux modèles de données.

[gw:gcenter:101:sigflow:meta]
FIELDALIAS-gw_gcenter_101_sigflow_meta_src = src_ip AS src
FIELDALIAS-gw_gcenter_101_sigflow_meta_dest = dest_ip AS dest
FIELDALIAS-gw_gcenter_101_sigflow_meta_hash = fileinfo.sha256 AS file_hash
FIELDALIAS-gw_gcenter_101_sigflow_meta_alias_1 = tcp.tcp_flags AS tcp_flag
FIELDALIAS-gw_gcenter_101_sigflow_meta_alias_2 = netflow.pkts AS packets
FIELDALIAS-gw_gcenter_101_sigflow_meta_alias_3 = netflow.bytes AS bytes
FIELDALIAS-gw_gcenter_101_sigflow_meta_alias_4 = event_type AS app

FIELDALIAS-gw_gcenter_101_sigflow_meta_http_alias_02 = http.status AS status
FIELDALIAS-gw_gcenter_101_sigflow_meta_http_alias_03 = http.length AS bytes
FIELDALIAS-gw_gcenter_101_sigflow_meta_http_alias_04 = http.url AS uri_query
FIELDALIAS-gw_gcenter_101_sigflow_meta_http_alias_05 = http.hostname AS url_domain
FIELDALIAS-gw_gcenter_101_sigflow_meta_http_alias_06 = http.http_content_type AS http_content_type
FIELDALIAS-gw_gcenter_101_sigflow_meta_http_alias_07 = http.http_method AS http_method
FIELDALIAS-gw_gcenter_101_sigflow_meta_http_alias_08 = http.http_user_agent AS http_user_agent
FIELDALIAS-gw_gcenter_101_sigflow_meta_http_alias_09 = http.http_refer AS http_referrer

EVAL-action = "allowed"
EVAL-protocol = "ip"
EVAL-transport = lower(proto)
EVAL-url = url_domain+uri_query

[gw:gcenter:101:sigflow:alert]
EVAL-action = "allowed"
EVAL-transport = low(proto)
FIELDALIAS-gw_gcenter_101_sigflow_alert_alias_1 = src_ip AS src
FIELDALIAS-gw_gcenter_101_sigflow_alert_alias_2 = dest_ip AS dest
FIELDALIAS-gw_gcenter_101_sigflow_alert_alias_3 = alert.signature AS signature
FIELDALIAS-gw_gcenter_101_sigflow_alert_alias_4 = alert.signature_id AS signature_id
FIELDALIAS-gw_gcenter_101_sigflow_alert_alias_5 = severity AS severity_id

[gw:gcenter:101:malcore]
FIELDALIAS-gw_gcenter_101_malcore_src = src_ip AS src
FIELDALIAS-gw_gcenter_101_malcore_dest = dest_ip AS dest
FIELDALIAS-gw_gcenter_101_malcore_hash = SHA256 AS file_hash
FIELDALIAS-gw_gcenter_101_malcore_alias_2 = src_ip AS src
FIELDALIAS-gw_gcenter_101_malcore_alias_3 = dest_ip AS dest
FIELDALIAS-gw_gcenter_101_malcore_alias_4 = filename AS file_name
FIELDALIAS-gw_gcenter_101_malcore_alias_5 = http_uri AS file_path
FIELDALIAS-gw_gcenter_101_malcore_alias_6 = total_found AS signature_id

[gw:gcenter:101:codebreaker]
FIELDALIAS-gw_gcenter_101_codebreaker_src = src_ip AS src
FIELDALIAS-gw_gcenter_101_codebreaker_dest = dest_ip AS dest
FIELDALIAS-gw_gcenter_101_codebreaker_hash = SHA256 AS file_hash
FIELDALIAS-gw_gcenter_101_codebreaker_alias_4 = event_type AS category

4.3.4.2. transforms.conf

Les stanzas présentes dans ce fichier sont utilisées par props.conf, et concernent les champs indexés par Splunk, comme host ou sourcetype.

[gw_force_host]
LOOKAHEAD = 65535
DEST_KEY = MetaData:Host
REGEX = \"GCenter\"\:\"([^\"]+)
FORMAT = host::$1

[sourcetype_malcore]
LOOKAHEAD = 65535
REGEX = \"type\"\:\"malcore\"
FORMAT = sourcetype::gw:gcenter:101:malcore
DEST_KEY = MetaData:Sourcetype

[sourcetype_codebreaker]
LOOKAHEAD = 65535
REGEX = \"type\"\:\"codebreaker\"
FORMAT = sourcetype::gw:gcenter:101:codebreaker
DEST_KEY = MetaData:Sourcetype

[sourcetype_sigflow]
LOOKAHEAD = 65535
REGEX = \"type\"\:\"suricata\"
FORMAT = sourcetype::gw:gcenter:101:sigflow:meta
DEST_KEY = MetaData:Sourcetype

[sourcetype_sigflow_alert]
LOOKAHEAD = 65535
REGEX = \"event_type\"\:\"alert\"
FORMAT = sourcetype::gw:gcenter:101:sigflow:alert
DEST_KEY = MetaData:Sourcetype

4.3.4.3. eventtype.conf

Ce fichier permet de réaliser des associations entre les logs et des événements.

Evénements relatifs à l'analyse antivirale des fichiers (malcore) :

[malcore_clean]
search = (sourcetype=gw:gcenter:101:malcore event_type=malware retroact="None" code=0 )
description = An event that occurs when malcore analyses a file and none of the engines detects a threat

[malcore_infected]
search = (sourcetype=gw:gcenter:101:malcore event_type=malware retroact="None" code=1)
description = An event that occurs when malcore analyses a file and at least one of the engines detects a threat
color = et_red

[malcore_suspicious]
search = (sourcetype=gw:gcenter:101:malcore event_type=malware retroact="None" code=2)
description = An event that occurs when malcore analyses a file, none of the engines detects a threat but at least one classifies the file as suspicious. Suspicious files can be analysed lated by retroact, if enabled.
color = et_orange

[malcore_other]
search = (sourcetype=gw:gcenter:101:malcore event_type=malware retroact="None" NOT code IN (0,1,2))
description = An event that occurs when malcore returns a code indicating an exception or a failure in the analysis.
color = et_blue

Evénements relatifs à la réanalyse antivirale des fichiers suspicious (retroact) :

[retroact_clean]
search = (sourcetype=gw:gcenter:101:malcore event_type=malware retroact!="None" code=0 )
description = An event that occurs when retroact analyses a file and none of the engines detects a threat
color = et_blue

[retroact_infected]
search = (sourcetype=gw:gcenter:101:malcore event_type=malware retroact!="None" code=2)
description = An event that occurs when retroact analyses a file and at least one of the engines detects a threat
color = et_red

[retroact_suspicious]
search = (sourcetype=gw:gcenter:101:malcore event_type=malware retroact!="None" code=2)
description = An event that occurs when retroact analyses a file, none of the engines detects a threat but at least one classifies the file as suspicious. Suspicious files can be analysed lated by retroact, if enabled.
color = et_orange

[retroact_other]
search = (sourcetype=gw:gcenter:101:malcore event_type=malware retroact!="None" NOT code IN (0,1,2))
description = An event that occurs when retroact returns a code indicating an exception or a failure in the analysis.
color = et_blue

Evénement relatif à l'activation du logging netflow sur le gcap :

[sigflow_netflow]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=netflow)
description = An event that occurs when sigflow generates a netflow event from a network event.

Evénements relatifs à la reconstruction de fichiers par le gcap :

[sigflow_fileinfo_stored]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=fileinfo fileinfo.stored="true")
description = An event that occurs when sigflow has performed a file reconstruction and based on its ruleset, has stored it on disk to perform malcore analysis afterwards.
color = et_blue

[sigflow_fileinfo_not_stored]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=fileinfo fileinfo.stored="false")
description = An event that occurs when sigflow has performed a file reconstruction and based on its ruleset, has not stored it on disk.

Les événements relatifs au moteur sigflow peuvent être de deux types pour chaque protocole :

  • Evénement "meta" : génération de métadonnées, obtenues par l'activation du logging du protocole sur le gcap.

  • Evénement "alert" : génération d'une alerte, obtenues par l'activation du parsing du protocole sur le gcap, et la correspondance entre un flux et une règle sigflow.

[sigflow_meta_dcerpc]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=dcerpc)
description = An event that occurs when sigflow has reconstructed a dcerpc flow and has logged its metadata.

[sigflow_alert_dcerpc]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=dcerpc)
description = An event that occurs when sigflow has reconstructed a dcerpc flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_dhcp]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=dhcp)
description = An event that occurs when sigflow has reconstructed a dhcp flow and has logged its metadata.

[sigflow_alert_dhcp]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=dhcp)
description = An event that occurs when sigflow has reconstructed a dhcp flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_dnp3]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=dnp3)
description = An event that occurs when sigflow has reconstructed a dnp3 flow and has logged its metadata.

[sigflow_alert_dnp3]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=dnp3)
description = An event that occurs when sigflow has reconstructed a dnp3 flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_dns]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=dns)
description = An event that occurs when sigflow has reconstructed a dns flow and has logged its metadata.
priority = 2

[sigflow_alert_dns]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=dns)
description = An event that occurs when sigflow has reconstructed a dns flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_ftp]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=ftp)
description = An event that occurs when sigflow has reconstructed a ftp flow and has logged its metadata.

[sigflow_alert_ftp]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=ftp)
description = An event that occurs when sigflow has reconstructed a ftp flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_http]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=http)
description = An event that occurs when sigflow has reconstructed a http flow and has logged its metadata.

[sigflow_alert_http]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=http)
description = An event that occurs when sigflow has reconstructed a http flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_ikev2]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=ikev2)
description = An event that occurs when sigflow has reconstructed a ikev2 flow and has logged its metadata.

[sigflow_alert_ikev2]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=ikev2)
description = An event that occurs when sigflow has reconstructed a ikev2 flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_krb5]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=krb5)
description = An event that occurs when sigflow has reconstructed a krb5 flow and has logged its metadata.

[sigflow_alert_krb5]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=krb5)
description = An event that occurs when sigflow has reconstructed a krb5 flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_modbus]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=modbus)
description = An event that occurs when sigflow has reconstructed a modbus flow and has logged its metadata.

[sigflow_alert_modbus_alert]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=modbus)
description = An event that occurs when sigflow has reconstructed a modbus flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_nfs]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=nfs)
description = An event that occurs when sigflow has reconstructed a nfs flow and has logged its metadata.

[sigflow_alert_nfs]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=nfs)
description = An event that occurs when sigflow has reconstructed a nfs flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_ntp]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=ntp)
description = An event that occurs when sigflow has reconstructed a ntp flow and has logged its metadata.

[sigflow_alert_ntp]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=ntp)
description = An event that occurs when sigflow has reconstructed a ntp flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_smb]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=smb)
description = An event that occurs when sigflow has reconstructed a smb flow and has logged its metadata.

[sigflow_alert_smb]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=smb)
description = An event that occurs when sigflow has reconstructed a smb flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_smtp]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=smtp)
description = An event that occurs when sigflow has reconstructed a smtp flow and has logged its metadata.

[sigflow_alert_smtp]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=smtp)
description = An event that occurs when sigflow has reconstructed a smtp flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_ssh]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=ssh)
description = An event that occurs when sigflow has reconstructed a ssh flow and has logged its metadata.

[sigflow_alert_ssh]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=ssh)
description = An event that occurs when sigflow has reconstructed a ssh flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_tftp]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=tftp)
description = An event that occurs when sigflow has reconstructed a tftp flow and has logged its metadata.

[sigflow_alert_tftp]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=tftp)
description = An event that occurs when sigflow has reconstructed a tftp flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_meta_tls]
search = (sourcetype=gw:gcenter:101:sigflow:meta event_type=tls)
description = An event that occurs when sigflow has reconstructed a tls flow and has logged its metadata.

[sigflow_alert_tls]
search = (sourcetype=gw:gcenter:101:sigflow:alert event_type=alert app_proto=tls)
description = An event that occurs when sigflow has reconstructed a tls flow and that one of its rules matched the content of this flow.
color = et_red

[sigflow_unknown_alert]
search = (sourcetype=gw:gcenter:101:sigflow* event_type=alert (app_proto=failed OR NOT app_proto=*))
description = An event that occurs when sigflow has reconstructed the flow of an unknown protocol, and that one of its rules matched the content of this flow.
color = et_red

[sigflow_other]
search = (sourcetype=gw:gcenter:101:sigflow* type=suricata NOT event_type IN (netflow,fileinfo,alert,dcerpc,dhcp,dnp3,dns,ftp,http,ikev2,krb5,modbus,nfs,ntp,smb,smtp,ssh,tftp,tls))
description = An event that occurs when sigflow has reconstructed the flow of a protocol not expected by this add-on.
color = et_blue

Événements relatifs au moteur de machine learning DGA DETECT :

[dgadetect_clean]
search = (sourcetype=gw:gcenter:101:sigflow:meta dga_probability=* severity=0)
description = An event that occurs when dgadetect find that a domain name is not suspicious (likeky not generated by a Domain Generation Algorithm). This eventtype overlap the sigflow:dns:meta eventtype.

[dgadetect_suspicious]
search = (sourcetype=gw:gcenter:101:sigflow:meta dga_probability=* severity=1)
description = An event that occurs when dgadetect find that a domain name is suspicious (likeky generated by a Domain Generation Algorithm).
color = et_red

Événements relatifs au moteur codebreaker :

[codebreaker_shellcode_expoit]
search = (sourcetype=gw:gcenter:101:codebreaker type=codebreaker event_type=shellcode state=Exploit)
description = An event that occurs when codebreaker has detected a shellcode.
color = et_red

[codebreaker_shellcode_suspicious]
search = (sourcetype=gw:gcenter:101:codebreaker type=codebreaker event_type=shellcode state=Suspicious)
description = An event that occurs when codebreaker suspects it has potentially detected a shellcode.
color = et_orange

[codebreaker_shellcode_other]
search = (sourcetype=gw:gcenter:101:codebreaker type=codebreaker event_type=shellcode NOT state IN ('Suspicious','Exploit'))
description = An event that occurs when codebreaker returns a code indicating an exception or a failure in its shellcode analysis.
color = et_blue

[codebreaker_powershell_expoit]
search = (sourcetype=gw:gcenter:101:codebreaker type=codebreaker event_type=powershell state=Exploit)
description = An event that occurs when codebreaker has detected an exploit in a powershell.
color = et_red

[codebreaker_powershell_suspicious]
search = (sourcetype=gw:gcenter:101:codebreaker type=codebreaker event_type=powershell state=Suspicious)
description = An event that occurs when codebreaker suspects it has potentially detected a suspicious powershell.
color = et_orange

[codebreaker_powershell_other]
search = (sourcetype=gw:gcenter:101:codebreaker type=codebreaker event_type=powershell NOT state IN ('Suspicious','Exploit'))
description = An event that occurs when codebreaker returns a code indicating an exception or a failure in its powershell analysis.
color = et_blue

4.3.4.4. tags.conf

Ce fichier permet d'associer des tags aux événements définis dans eventtype.conf. Ces tags permettront de faire rentrer ces événements dans le Common Information Model de Splunk. Les associations proposées par défaut sont minimales et doivent être adaptées à votre usage des modèles de données.

[eventtype=malcore_clean]
attack = enabled
malware = enabled

[eventtype=malcore_infected]
attack = enabled
malware = enabled

[eventtype=malcore_suspicious]
attack = enabled
malware = enabled

[eventtype=malcore_other]
attack = enabled
malware = enabled

[eventtype=retroact_clean]
attack = enabled
malware = enabled

[eventtype=retroact_infected]
attack = enabled
malware = enabled

[eventtype=retroact_suspicious]
attack = enabled
malware = enabled

[eventtype=retroact_other]
attack = enabled
malware = enabled

[eventtype=sigflow_netflow]
communicate = enabled
network = enabled

[eventtype=sigflow_fileinfo_stored]
communicate = enabled
network = enabled

[eventtype=sigflow_fileinfo_not_stored]
communicate = enabled
network = enabled

[eventtype=sigflow_meta_dcerpc]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_dcerpc]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_dhcp]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_dhcp]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_dnp3]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_dnp3]
attack = enabled
ids = enabled

[eventtype=dgadetect_clean]
communicate = enabled
network = enabled

[eventtype=dgadetect_suspicious]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_dns]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_dns]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_ftp]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_ftp]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_http]
communicate = enabled
network = enabled
web = enabled

[eventtype=sigflow_alert_http]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_ikev2]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_ikev2]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_krb5]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_krb5]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_modbus]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_modbus_alert]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_nfs]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_nfs]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_ntp]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_ntp]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_smb]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_smb]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_smtp]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_smtp]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_ssh]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_ssh]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_tftp]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_tftp]
attack = enabled
ids = enabled

[eventtype=sigflow_meta_tls]
communicate = enabled
network = enabled

[eventtype=sigflow_alert_tls]
attack = enabled
ids = enabled

[eventtype=sigflow_unknown_alert]
attack = enabled
ids = enabled

[eventtype=sigflow_other]
communicate = enabled
network = enabled

[eventtype=codebreaker_shellcode_expoit]
attack = enabled
malware = enabled

[eventtype=codebreaker_shellcode_suspicious]
attack = enabled
malware = enabled

[eventtype=codebreaker_shellcode_other]
attack = enabled
malware = enabled

[eventtype=codebreaker_powershell_expoit]
attack = enabled
malware = enabled

[eventtype=codebreaker_powershell_suspicious]
attack = enabled
malware = enabled

[eventtype=codebreaker_powershell_other]
attack = enabled
malware = enabled