Consultation des évènements de sécurité

Description

Cette API permet de récupérer une quantité limitée de journaux d'accès dans une plage horaire définie, avec la possibilité d'appliquer des filtres optionnels.

Méthode : POST

URL : https://console.baleen.cloud/api/logs/waf-logs

Authentification

L'utilisateur doit être authentifié avec son token d'accès personnel.

Le namespace de Baleen doit être défini dans le cookie baleen-namespace.

Format de la requête

Paramètres de la requête (Query Params)

Paramètre

Requis/Optionnel

Type

Description

Paramètre

Requis/Optionnel

Type

Description

start

optionnel

long

Le timestamp (en secondes) à partir duquel collecter les données.

end

optionnel

long

Le timestamp (en secondes) jusqu'auquel collecter les données.

size

optionnel

integer

Le nombre d'entrées de logs à récupérer (entre 1 et 100).

page

optionnel

integer

Le numéro de la page des entrées de logs à récupérer.

Paramètres du corps de la requête (Body Params)

  • filters (objet optionnel) : tableau définissant les filtres à appliquer aux logs WAF avec les paramètres suivants :

Paramètre

Type

Description

Paramètre

Type

Description

field

enum

Le champ ciblé pour filtrer les logs. Doit être "ruleId".

operator

enum

L'opérateur utilisé pour filtrer les logs : "equals" pour récupérer les logs dont le champ spécifié est strictement égal à la valeur indiquée.

value

string

La valeur à utiliser pour filtrer les logs.

Format de la réponse

Requête réussie

  • Code : 200 OK

  •  

Objet transaction :

Cet objet rassemble des informations sur la menace identifiée par les règles OWASP.

Champ

Type

Description

Champ

Type

Description

clientIP

string

 

clientPort

integer

 

hostIP

string

 

hostPort

integer

 

messages

object[]

 

producer

object

 

request

object

 

response

object

 

serverId

string

 

timeStamp

string

 

uniqueId

string

 

Description de l'objet messages :

Cet array explique pourquoi la requête est considérée comme une menace, avec une occurrence pour chaque règle OWASP déclenchée.

Champ

Type

Description

Champ

Type

Description

details

object

 

message

string

 

Description de l'objet details :

Cet objet fournit des détails précis sur la règle déclenchée (ID, sévérité) et la raison du déclenchement.

Champ

Type

Description

Champ

Type

Description

accuracy

string

 

data

string

 

file

string

 

lineNumber

string

 

match

string

 

maturity

string

 

reference

string

 

rev

string

 

ruleId

string

 

severity

string

 

tags

string[]

 

ver

string

 

Description de l'objet producer :

Cet objet donne des informations sur ModSecurity, le producteur du log WAF.

Champ

Type

Description

Champ

Type

Description

components

string[]

 

connector

string

 

modsecurity

string

 

secrulesEngine

string

 

Description de l'objet request :

Cet objet regroupe des informations sur la requête HTTP initiale.

Champ

Type

Description

Champ

Type

Description

headers

string[]

 

httpVersion

number

 

method

string

 

uri

string

 

Description de l'objet response :

Cet objet regroupe des informations sur la réponse HTTP.

Champ

Type

Description

Champ

Type

Description

headers

string[]

 

httpCode

string

 

Requête échouée

  • 400 Bad Request

  • 500 Internal Server Error

Exemple

L'exemple suivant montre un appel d'API récupérant les événements de sécurité créés après une requête ayant déclenché la règle 920320 entre le 25 avril 2023 à 15h et le 25 avril 2023 à 20h.

Requête :

POST https://console.baleen.cloud/api/logs/waf-logs?start=1682427600&end=1682445600&page=0&size=100

Corps de la requête :

{ "filters": [ { "field": "ruleId", "value": "920320", "operator": "equals" } ] }

Réponse :

[ { "transaction": { "clientPort": 33150, "request": { "headers": { "BLN-REQUEST-FATE-ACTION": "pass", "x-request-id": "cbe396108b24cef402c1f2a63341ac73", "clientipaddrwaf": "62.122.15.8", ... }, "method": "GET", "httpVersion": 1, "uri": "/DisplayRwdHeader.mvc/0/0" }, ... } }, ... ]