Biblioteca de referencia para IBM Cloud Reglas de detección de amenazas CDR

Workload Protection le permite crear y personalizar reglas de detección de amenazas para detectar actividades sospechosas en sus entornos IBM Cloud. Este tema proporciona todos los campos disponibles para escribir reglas Falco contra eventos de auditoría IBM Cloud ingestados vía CDR.

Las reglas dirigidas a los eventos de auditoría de IBM Cloud deben utilizar source: ibm_activitytracker. Se puede acceder a los campos directamente por su nombre de plugin (por ejemplo ibm.action) o a través de la ruta JSON sin procesar utilizando jevt.value[/fieldPath] (por ejemplo jevt.value[/action]).

Campos

En las reglas de detección de amenazas, un campo representa un atributo específico del evento capturado a partir de un evento sin procesar. Puede utilizar campos para definir la condición de detección y la salida.

Clase de campo: ibm (evento)

Campos de nivel superior presentes en todos los eventos de auditoría de IBM Cloud.

Fuentes del evento: ibm_activitytracker

Nombre Tipo Vía de acceso JSON Descripción
ibm.action string /action La acción que desencadenó el evento. Por ejemplo, iam-am.policy.delete o iam-identity.user-apikey.create.
ibm.correlationId string /correlationId GUID único utilizado para correlacionar eventos relacionados a través de múltiples servicios en la misma cuenta.
ibm.dataEvent booleano /dataEvent Indica si el evento es de datos (true) o de gestión (false).
ibm.eventTime string /eventTime Marca de tiempo en la que se creó el evento, en formato ISO 8601.
ibm.id string /id Campo opcional que puede utilizarse para correlacionar eventos de seguimiento de actividad dentro de un servicio.
ibm.logSourceCRN string /logSourceCRN Nombre de recurso en la nube (CRN) de la instancia de servicio que generó el evento.
ibm.message string /message Descripción legible por humanos del acontecimiento.
ibm.observer.name string /observer/name Configúralo siempre en « ActivityTracker ». Identifica el servicio observador que registró el suceso.
ibm.outcome string /outcome Resultado de la acción. Valores típicos: success, failure, pending.
ibm.requestData JSON /requestData Información adicional sobre la solicitud, si está disponible.
ibm.responseData JSON /responseData Información adicional sobre la respuesta, si está disponible.
ibm.saveServiceCopy booleano /saveServiceCopy Cuando true, el servicio que generó el evento guarda una copia para la auditoría de IBM Cloud.
ibm.severity string /severity Nivel de amenaza que la acción puede tener en IBM Cloud. Valores típicos: normal, warning, critical.

Clase de campo: ibm.initiator

Campos que describen la identidad y el origen de la entidad que solicitó la acción.

Fuentes del evento: ibm_activitytracker

Nombre Tipo Vía de acceso JSON Descripción
ibm.initiator.id string /initiator/id Identificador del iniciador que solicitó la acción. Para los usuarios es el valor IBMid; para los ID de servicio es el valor ServiceId-xxx.
ibm.initiator.name string /initiator/name Nombre de usuario o nombre del iniciador. Cuando el iniciador es un servicio de IBM, este campo se establece en IBM o en el nombre del servicio.
ibm.initiator.authnId string /initiator/authnId ID del usuario que ha iniciado sesión en IBM Cloud.
ibm.initiator.authnName string /initiator/authnName Nombre de usuario de la persona que ha iniciado sesión en IBM Cloud.
ibm.initiator.typeURI string /initiator/typeURI Tipo de la fuente de eventos. Por ejemplo, service/security/account/user o service/security/account/serviceid.
ibm.initiator.credential.type string /initiator/credential/type Tipo de credencial utilizada por el iniciador. Valores típicos: apikey, token, serviceid.
ibm.initiator.host.address string /initiator/host/address Dirección IP o URL desde la que se originó la solicitud, como la consola IBM Cloud o CLI.
ibm.initiator.host.addressType string /initiator/host/addressType Tipo de dirección IP. Por ejemplo, IPv4 o IPv6.
ibm.initiator.host.agent string /initiator/host/agent Cadena de agente de usuario que identifica dónde se originó la solicitud, por ejemplo una versión CLI o un navegador.

Clase de campo: ibm.target

Campos que describen el recurso IBM Cloud en el que se ejecutó la acción.

Fuentes del evento: ibm_activitytracker

Nombre Tipo Vía de acceso JSON Descripción
ibm.target.id string /target/id CRN o identificador del recurso IBM Cloud sobre el que se ejecutó la acción.
ibm.target.name string /target/name Nombre legible para el usuario del recurso IBM Cloud sobre el que se ha ejecutado la acción.
ibm.target.alias string /target/alias Alias del recurso en la nube utilizado en la solicitud, cuando proceda.
ibm.target.typeURI string /target/typeURI Tipo del recurso de destino. Por ejemplo, iam-am/policy o iam-identity/account/serviceid.
ibm.target.resourceGroupId string /target/resourceGroupId CRN del grupo de recursos asociado al recurso de destino.
ibm.target.host.address string /target/host/address Dirección IP o URL del servicio de destino.

Clase de campo: ibm.reason

Campos que proporcionan detalles adicionales sobre el resultado de una acción, en particular para las solicitudes fallidas.

Fuentes del evento: ibm_activitytracker

Nombre Tipo Vía de acceso JSON Descripción
ibm.reason.reasonCode numérico /reason/reasonCode HTTP código de respuesta de la acción solicitada. Por ejemplo, 200 para éxito o 403 para no autorizado.
ibm.reason.reasonType string /reason/reasonType Información adicional sobre el resultado. Por ejemplo, OK o Forbidden.
ibm.reason.reasonForFailure string /reason/reasonForFailure Detalles adicionales que expliquen por qué falló la acción, cuando estén disponibles.

Ejemplos de redacción de normas

Los siguientes ejemplos muestran cómo hacer referencia a estos campos en las reglas Falco para CDR.

Filtrado por acción y resultado:

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

Filtrado por tipo de credencial de iniciador:

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

Filtrado por dirección IP de origen:

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

Para obtener más información sobre la creación de reglas y políticas, consulte Creación de una política de detección de amenazas en IBM Cloud.