Aller au contenu

Service SQL IBM i (AS/400) · Fonction table

SYSTOOLS.AUDIT_JOURNAL_IM

Journal d'audit : détection d'intrusion (IM)

Lit les entrées IM du journal d'audit : événements de détection d'intrusion (adresses, ports, type d'attaque) signalés par le système.

À quoi ça sert

Cette fonction de table lit les entrées de type IM du journal d'audit, écrites par la détection d'intrusion de l'IBM i. Chaque ligne décrit un événement : horodatage (EVENT_TIMESTAMP), adresses et ports local et distant, type de sonde (PROBE_TYPE) et type d'attaque (EVENT_ATTACK_TYPE), avec une version détaillée en clair.

C'est utile pour la sécurité réseau : on voit quelle adresse a sondé la machine, avec quel protocole, et à quelle fréquence. Le SQL permet de regrouper par adresse distante ou par type d'attaque, et de conserver les résultats pour suivre une campagne d'attaque dans le temps.

Les paramètres de sélection sont facultatifs, comme pour les autres fonctions d'audit. L'exemple d'IBM liste tous les événements d'intrusion de la semaine.

Résultat réel sur un IBM i 7.5

Ce que nous avons exécuté :

SELECT * FROM TABLE(SYSTOOLS.AUDIT_JOURNAL_IM(STARTING_TIMESTAMP => CURRENT TIMESTAMP - 90 DAYS)) X

Aucune entrée de ce type dans le journal d'audit sur les 90 derniers jours : ce type d'événement n'est pas audité ou ne s'est pas produit sur notre IBM i de test.

L'exemple d'IBM

Lister tous les événements d'intrusion de cette semaine.

-- Description: List all intrusion events for this week. 
 SELECT * FROM TABLE( 
  SYSTOOLS.AUDIT_JOURNAL_IM( 
    STARTING_TIMESTAMP => CURRENT TIMESTAMP - 7 DAYS ) );

Bon à savoir

Ces entrées dépendent de la configuration de la détection d'intrusion. Une machine exposée sur Internet gagne à regrouper les résultats par EVENT_REMOTE_ADDRESS pour repérer les sources récurrentes.

Paramètres

ParamètreTypePar défautSignification
STARTING_RECEIVER_NAME VARCHAR(10) '*CURAVLCHN' Nom du récepteur de journal de départ
ENDING_RECEIVER_NAME VARCHAR(10) '*CURRENT' Nom du récepteur de journal de fin
STARTING_TIMESTAMP TIMESTAMP NULL Horodatage de début
ENDING_TIMESTAMP TIMESTAMP NULL Horodatage de fin
USER_NAME VARCHAR(10) '*ALL' Nom du profil utilisateur
JOB VARCHAR(28) '*ALL' Nom qualifié du travail
PROGRAM VARCHAR(10) '*ALL' Programme
STARTING_SEQUENCE DECIMAL(21, 0) NULL Numéro de séquence de départ
ENDING_SEQUENCE DECIMAL(21, 0) NULL Numéro de séquence de fin
STARTING_RECEIVER_LIBRARY VARCHAR(10) '*CURRENT' Bibliothèque du récepteur de journal de départ
ENDING_RECEIVER_LIBRARY VARCHAR(10) '*CURRENT' Bibliothèque du récepteur de journal de fin

Colonnes renvoyées (44)

Afficher les 44 colonnes
ColonneTypeSignification
ENTRY_TIMESTAMP TIMESTAMP Horodatage de l'entrée
SEQUENCE_NUMBER DECIMAL(21, 0) Numéro de séquence
USER_NAME VARCHAR(10) Nom du profil utilisateur
QUALIFIED_JOB_NAME VARCHAR(28) Nom qualifié du travail
JOB_NAME VARCHAR(10) Nom du travail
JOB_USER VARCHAR(10) Profil utilisateur du travail
JOB_NUMBER VARCHAR(6) Numéro du travail
THREAD BIGINT Unité d'exécution (thread)
PROGRAM_LIBRARY VARCHAR(10) Bibliothèque du programme
PROGRAM_NAME VARCHAR(10) Nom du programme
PROGRAM_LIBRARY_ASP_DEVICE VARCHAR(10) Unité ASP de la bibliothèque du programme
PROGRAM_LIBRARY_ASP_NUMBER INTEGER Numéro de l'ASP de la bibliothèque du programme
REMOTE_PORT INTEGER Port distant
REMOTE_ADDRESS VARCHAR(46) Adresse distante
SYSTEM_NAME VARCHAR(8) Nom du système
SYSTEM_SEQUENCE_NUMBER DECIMAL(21, 0) Numéro de séquence système
RECEIVER_LIBRARY VARCHAR(10) Bibliothèque du récepteur de journal
RECEIVER_NAME VARCHAR(10) Nom du récepteur de journal
RECEIVER_ASP_DEVICE VARCHAR(10) Unité ASP du récepteur de journal
RECEIVER_ASP_NUMBER INTEGER Numéro d'ASP du récepteur de journal
ARM_NUMBER INTEGER Numéro ARM
ENTRY_TYPE CHAR(1) Type de l'entrée
ENTRY_TYPE_DETAIL VARCHAR(200) Détail du type de l'entrée
EVENT_TIMESTAMP TIMESTAMP Horodatage de l'événement
EVENT_LOCAL_ADDRESS_FAMILY CHAR(4) Famille d'adresses locales de l'événement
EVENT_LOCAL_ADDRESS VARCHAR(45) Adresse locale de l'événement
EVENT_LOCAL_PORT INTEGER Port local de l'événement
EVENT_REMOTE_ADDRESS_FAMILY CHAR(4) Famille d'adresses distantes de l'événement
EVENT_REMOTE_ADDRESS VARCHAR(45) Adresse distante de l'événement
EVENT_REMOTE_PORT INTEGER Port distant de l'événement
PROBE_TYPE VARCHAR(6) Type de sonde
PROBE_TYPE_DETAIL VARCHAR(200) Détail du type de sonde
EVENT_CORRELATOR VARCHAR(4) Corrélateur de l'événement
EVENT_ATTACK_TYPE VARCHAR(8) Type d'attaque de l'événement
EVENT_ATTACK_TYPE_DETAIL VARCHAR(200) Détail du type d'attaque de l'événement
PROTOCOL VARCHAR(6) Protocole
CONDITION_NUMBER INTEGER Numéro de condition
THROTTLING_ACTIVE VARCHAR(3) Limitation de débit active
DISCARDED_PACKETS INTEGER Paquets rejetés
TARGET_TCPIP_STACK VARCHAR(10) Pile TCP/IP cible
SUSPECTED_PACKET BINARY VARYING Paquet suspect
FAILING_HANDSHAKE_LOCATION VARCHAR(6) Emplacement de la négociation (handshake) en échec
FAILING_HANDSHAKE_ERROR VARCHAR(40) Erreur de la négociation (handshake) en échec
DETECTION_POINT_ID VARCHAR(4) Identifiant du point de détection