Libreria di riferimento per le regole di rilevamento delle minacce CDR IBM Cloud

Workload Protection consente di creare e personalizzare le regole di rilevamento delle minacce per rilevare attività sospette negli ambienti IBM Cloud. Questo argomento fornisce tutti i campi disponibili per la scrittura di regole Falco contro gli eventi di audit IBM Cloud ingeriti tramite CDR.

Le regole che mirano agli eventi di audit di IBM Cloud devono utilizzare source: ibm_activitytracker. Si può accedere ai campi direttamente con il nome del plugin (ad esempio ibm.action) o tramite il percorso JSON grezzo usando jevt.value[/fieldPath] (ad esempio jevt.value[/action]).

Campi

Nelle regole di rilevamento delle minacce, un campo rappresenta un attributo specifico dell'evento catturato da un evento grezzo. È possibile utilizzare i campi per definire la condizione di rilevamento e l'uscita.

Classe di campo: ibm (evento)

Campi di primo livello presenti in ogni evento di audit di IBM Cloud.

Fonti dell'evento: ibm_activitytracker

Nome Immettere Percorso JSON Descrizione
ibm.action stringa /action L'azione che ha dato origine all'evento. Ad esempio, iam-am.policy.delete o iam-identity.user-apikey.create.
ibm.correlationId stringa /correlationId GUID univoco utilizzato per correlare eventi correlati tra più servizi dello stesso account.
ibm.dataEvent booleano /dataEvent Indica se l'evento è un evento di dati (true) o un evento di gestione (false).
ibm.eventTime stringa /eventTime Data di creazione dell'evento, in formato ISO 8601.
ibm.id stringa /id Campo opzionale che può essere usato per correlare gli eventi di tracciamento delle attività all'interno di un servizio.
ibm.logSourceCRN stringa /logSourceCRN Cloud Resource Name (CRN) dell'istanza del servizio che ha generato l'evento.
ibm.message stringa /message Descrizione leggibile dell'evento.
ibm.observer.name stringa /observer/name Sempre impostato su ActivityTracker. Identifica il servizio di osservazione che ha registrato l'evento.
ibm.outcome stringa /outcome Risultato dell'azione. Valori tipici: success, failure, pending.
ibm.requestData JSON /requestData Informazioni aggiuntive sulla richiesta, se disponibili.
ibm.responseData JSON /responseData Ulteriori informazioni sulla risposta, se disponibili.
ibm.saveServiceCopy booleano /saveServiceCopy Quando true, il servizio che ha generato l'evento ne salva una copia per l'auditing IBM Cloud.
ibm.severity stringa /severity Livello di minaccia che l'azione può avere su IBM Cloud. Valori tipici: normal, warning, critical.

Classe di campo: ibm.initiator

Campi che descrivono l'identità e l'origine dell'entità che ha richiesto l'azione.

Fonti dell'evento: ibm_activitytracker

Nome Immettere Percorso JSON Descrizione
ibm.initiator.id stringa /initiator/id ID dell'iniziatore che ha richiesto l'azione. Per gli utenti è il valore IBMid; per gli ID servizio è il valore ServiceId-xxx.
ibm.initiator.name stringa /initiator/name Nome utente o nome dell'iniziatore. Quando l'iniziatore è un servizio IBM, questo campo è impostato su IBM o sul nome del servizio.
ibm.initiator.authnId stringa /initiator/authnId ID dell'utente che si è collegato a IBM Cloud.
ibm.initiator.authnName stringa /initiator/authnName Nome utente dell'utente che si è collegato a IBM Cloud.
ibm.initiator.typeURI stringa /initiator/typeURI Tipo di sorgente dell'evento. Ad esempio, service/security/account/user o service/security/account/serviceid.
ibm.initiator.credential.type stringa /initiator/credential/type Tipo di credenziale utilizzata dall'iniziatore. Valori tipici: apikey, token, serviceid.
ibm.initiator.host.address stringa /initiator/host/address Indirizzo IP o URL da cui proviene la richiesta, come la console o la CLI di IBM Cloud.
ibm.initiator.host.addressType stringa /initiator/host/addressType Tipo di indirizzo IP. Ad esempio, IPv4 o IPv6.
ibm.initiator.host.agent stringa /initiator/host/agent Stringa di user-agent che identifica l'origine della richiesta, ad esempio una versione di CLI o un browser.

Classe di campo: ibm.target

Campi che descrivono la risorsa IBM Cloud su cui è stata eseguita l'azione.

Fonti dell'evento: ibm_activitytracker

Nome Immettere Percorso JSON Descrizione
ibm.target.id stringa /target/id CRN o identificatore della risorsa IBM Cloud su cui è stata eseguita l'azione.
ibm.target.name stringa /target/name Nome leggibile dalla persona della risorsa IBM Cloud su cui è stata eseguita l'azione.
ibm.target.alias stringa /target/alias Alias della risorsa cloud utilizzata nella richiesta, se applicabile.
ibm.target.typeURI stringa /target/typeURI Tipo di risorsa di destinazione. Ad esempio, iam-am/policy o iam-identity/account/serviceid.
ibm.target.resourceGroupId stringa /target/resourceGroupId CRN del gruppo di risorse associato alla risorsa di destinazione.
ibm.target.host.address stringa /target/host/address Indirizzo IP o URL del servizio di destinazione.

Classe di campo: ibm.reason

Campi che forniscono ulteriori dettagli sull'esito di un'azione, in particolare per le richieste fallite.

Fonti dell'evento: ibm_activitytracker

Nome Immettere Percorso JSON Descrizione
ibm.reason.reasonCode numerico /reason/reasonCode HTTP codice di risposta dell'azione richiesta. Ad esempio, 200 per successo o 403 per non autorizzato.
ibm.reason.reasonType stringa /reason/reasonType Ulteriori informazioni sul risultato. Ad esempio, OK o Forbidden.
ibm.reason.reasonForFailure stringa /reason/reasonForFailure Ulteriori dettagli che spiegano il motivo del fallimento dell'azione, se disponibili.

Esempi di scrittura di regole

Gli esempi seguenti mostrano come fare riferimento a questi campi nelle regole Falco per il CDR.

Filtrare per azione e risultato:

condition: >
  jevt.value[/action] = "iam-am.policy.delete"
  and jevt.value[/outcome] = "success"

Filtraggio per tipo di credenziale dell'iniziatore:

condition: >
  jevt.value[/action] startswith "iam-identity"
  and jevt.value[/initiator/credential/type] = "apikey"

Filtraggio in base all'indirizzo IP di origine:

condition: >
  jevt.value[/action] = "iam-identity.user-apikey.create"
  and not jevt.value[/initiator/host/address] in (trusted_ips)

Per ulteriori informazioni sulla creazione di regole e criteri, vedere Creazione di un criterio di rilevamento delle minacce IBM Cloud.