Recopila registros de Cisco Secure ACS

Compatible con:

En este documento, se describe cómo recopilar registros de Cisco Secure Access Control Server (ACS) con un reenvío de Google Security Operations.

Para obtener más información, consulta Transferencia de datos a Google Security Operations.

Una etiqueta de transferencia identifica el analizador que normaliza los datos de registro sin procesar al formato UDM estructurado. La información de este documento se aplica al analizador con la etiqueta de transferencia CISCO_ACS.

Configura Cisco Secure ACS

  1. Accede a la consola de Cisco Secure ACS con las credenciales de administrador.
  2. En la consola de Cisco Secure ACS, selecciona Administración del sistema > Configuración > Configuración de registros > Destinos de registros remotos.
  3. Haz clic en Crear.
  4. En la ventana Crear, especifica valores para los siguientes campos:

    Campo Descripción
    Nombre Nombre del reenvío de Google Security Operations.
    Descripción Es la descripción del agente de reenvío de Google Security Operations.
    Dirección IP Es la dirección IP del reenviador de Google Security Operations.
    Cómo usar opciones avanzadas de syslog Selecciona esta opción para habilitar las opciones avanzadas de syslog.
    Tipo de objetivo Selecciona Syslog TCP o Syslog UDP.
    Puerto Usa un puerto alto, como 10514.
    Código de la instalación LOCAL6 (código = 22; predeterminado)
    Longitud máxima El valor recomendado es de 1024.
  5. Haz clic en Enviar. Aparecerá la ventana Destinos de registro remotos con la nueva configuración del destino de registro remoto.

  6. En la consola de Cisco Secure ACS, selecciona Administración del sistema > Configuración > Configuración de registros > Categorías de registros > Por instancia.

  7. Selecciona ACS y, luego, haz clic en Configurar.

  8. En la ventana Por instancia, selecciona una categoría de registro y, luego, haz clic en Editar.

    En la pestaña General, para algunas categorías de registro, la gravedad del registro debe establecerse como predeterminada o según lo proporcione el proveedor.

    En el caso de Cisco Secure ACS, la gravedad predeterminada es Advertencia para todas las categorías de registro, excepto para aquellas en las que no se puede cambiar la gravedad, como AAA audit-notice, accounting-notice, administrative and operational audit-notice y system statistics-notice.

  9. Haz clic en la pestaña Destino de syslog remoto y mueve el destino remoto recién creado de Destinos disponibles a Destinos seleccionados.

  10. Haz clic en Enviar.

  11. Para configurar destinos remotos para otras categorías de registro, repite los pasos del 8 al 10.

Configura el reenvío y el syslog de Google Security Operations para transferir los registros de Cisco Secure ACS

  1. Ve a Configuración del SIEM > Reenviadores.
  2. Haz clic en Agregar un nuevo reenvío.
  3. En el campo Nombre del reenviador, ingresa un nombre único para el reenviador.
  4. Haz clic en Enviar. Se agregará el reenvío y aparecerá la ventana Add collector configuration.
  5. En el campo Nombre del recopilador, escribe un nombre.
  6. Selecciona Cisco ACS como el Tipo de registro.
  7. Selecciona Syslog como el Tipo de recopilador.
  8. Configura los siguientes parámetros de entrada obligatorios:
    • Protocolo: Especifica el protocolo.
    • Dirección: Especifica la dirección IP o el nombre de host de destino en el que reside el recopilador y al que se dirigen los datos de syslog.
    • Puerto: Especifica el puerto de destino en el que reside el recopilador y escucha los datos de syslog.
  9. Haz clic en Enviar.

Para obtener más información sobre los retransmisores de Google Security Operations, consulta la documentación de los retransmisores de Google Security Operations. Para obtener información sobre los requisitos de cada tipo de reenvío, consulta Configuración del reenvío por tipo. Si tienes problemas para crear reenvíos, comunícate con el equipo de asistencia de Operaciones de seguridad de Google.

Referencia de la asignación de campos

Este analizador controla los registros de Cisco ACS, incluidas las estadísticas de autenticación, contabilidad, diagnóstico y sistema. Utiliza patrones de Grok para extraer campos de varios formatos de registro (SYSLOG + KV, LEEF), normaliza las marcas de tiempo y las zonas horarias, y asigna campos clave al UDM, controlando diferentes tipos de registros con lógica específica para los éxitos o errores de autenticación, la contabilidad de TACACS+ y los eventos de RADIUS. También enriquece el UDM con campos adicionales, como información del dispositivo y detalles de autenticación.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
Acct-Authentic additional.fields[].value.string_value El valor se toma del campo Acct-Authentic.
Acct-Delay-Time additional.fields[].value.string_value El valor se toma del campo Acct-Delay-Time.
Acct-Input-Octets additional.fields[].value.string_value El valor se toma del campo Acct-Input-Octets.
Acct-Input-Packets additional.fields[].value.string_value El valor se toma del campo Acct-Input-Packets.
Acct-Output-Octets additional.fields[].value.string_value El valor se toma del campo Acct-Output-Octets.
Acct-Output-Packets additional.fields[].value.string_value El valor se toma del campo Acct-Output-Packets.
Acct-Session-Id additional.fields[].value.string_value El valor se toma del campo Acct-Session-Id.
Acct-Session-Time additional.fields[].value.string_value El valor se toma del campo Acct-Session-Time.
Acct-Status-Type additional.fields[].value.string_value El valor se toma del campo Acct-Status-Type.
Acct-Terminate-Cause additional.fields[].value.string_value El valor se toma del campo Acct-Terminate-Cause.
ACSVersion additional.fields[].value.string_value El valor se toma del campo ACSVersion.
AD-Domain principal.group.group_display_name El valor se toma del campo AD-Domain.
AD-IP-Address principal.ip El valor se toma del campo AD-IP-Address.
Called-Station-ID additional.fields[].value.string_value El valor se toma del campo Called-Station-ID.
Calling-Station-ID additional.fields[].value.string_value El valor se toma del campo Calling-Station-ID.
Class additional.fields[].value.string_value El valor se toma del campo Class.
CmdSet (sin asignar) No se asignó al objeto IDM.
ConfigVersionId additional.fields[].value.number_value El valor se toma del campo ConfigVersionId y se convierte en un número de punto flotante.
DestinationIPAddress target.ip, intermediary.ip El valor se toma del campo DestinationIPAddress. intermediary.ip se deriva de Device IP Address.
DestinationPort target.port El valor se toma del campo DestinationPort y se convierte en un número entero.
Device IP Address intermediary.ip El valor se toma del campo Device IP Address.
Device Port intermediary.port El valor se toma del campo Device Port y se convierte en un número entero.
DetailedInfo security_result.summary, security_result.description, security_result.action Si DetailedInfo es "Authentication succeed", security_result.summary es "successful login occurred" y security_result.action es ALLOW. Si DetailedInfo contiene "Invalid username or password specified", security_result.summary es "failed login occurred" y security_result.action es BLOCK. security_result.description se deriva de log_header.
Framed-IP-Address principal.ip El valor se toma del campo Framed-IP-Address.
Framed-Protocol additional.fields[].value.string_value El valor se toma del campo Framed-Protocol.
NAS-IP-Address target.ip El valor se toma del campo NAS-IP-Address.
NAS-Port additional.fields[].value.string_value El valor se toma del campo NAS-Port.
NAS-Port-Id target.port El valor se toma del campo NAS-Port-Id y se convierte en un número entero.
NAS-Port-Type additional.fields[].value.string_value El valor se toma del campo NAS-Port-Type.
NetworkDeviceName target.hostname El valor se toma del campo NetworkDeviceName.
Protocol additional.fields[].value.string_value El valor se toma del campo Protocol.
RadiusPacketType (sin asignar) No se asignó al objeto IDM.
Remote-Address principal.ip, target.ip El valor se toma del campo Remote-Address y se analiza como una dirección IP. Se asigna a principal.ip para los eventos de autenticación y a target.ip para los eventos de diagnóstico y contabilidad.
RequestLatency additional.fields[].value.string_value El valor se toma del campo RequestLatency.
Response principal.user.userid Si Response contiene "User-Name", se extrae el nombre de usuario y se asigna a principal.user.userid.
SelectedAccessService additional.fields[].value.string_value El valor se toma del campo SelectedAccessService.
SelectedAuthenticationIdentityStores security_result.detection_fields[].value El valor se toma del campo SelectedAuthenticationIdentityStores.
SelectedAuthorizationProfiles security_result.detection_fields[].value El valor se toma del campo SelectedAuthorizationProfiles.
Service-Type additional.fields[].value.string_value El valor se toma del campo Service-Type.
Tunnel-Client-Endpoint additional.fields[].value.string_value El valor se toma del campo Tunnel-Client-Endpoint y se analiza como una dirección IP.
User target.user.userid El valor se toma del campo User.
UserName target.user.userid, principal.mac Si UserName es una dirección MAC, se analiza y se asigna a principal.mac. De lo contrario, se asigna a target.user.userid.
ac-user-agent network.http.user_agent El valor se toma del campo ac-user-agent.
cat metadata.description El valor se toma del campo cat.
device-mac principal.mac El valor se toma del campo device-mac, se agregan dos puntos y el valor se convierte a minúsculas. Si device-mac es "00", se reemplaza por "00:00:00:00:00:00".
device-platform principal.asset.platform_software.platform Si device-platform es "win", se asigna el valor "WINDOWS" a principal.asset.platform_software.platform.
device-platform-version principal.asset.platform_software.platform_version El valor se toma del campo device-platform-version.
device-public-mac principal.mac El valor se toma del campo device-public-mac, los guiones se reemplazan por dos puntos y el valor se convierte a minúsculas.
device-type principal.asset.hardware.model El valor se toma del campo device-type.
device-uid principal.asset.asset_id El valor se toma del campo device-uid y se le antepone "ID DE RECURSO: ".
device-uid-global principal.asset.product_object_id El valor se toma del campo device-uid-global.
hostname principal.hostname El valor se toma del campo hostname.
ip:source-ip principal.ip El valor se toma del campo ip:source-ip.
kv.ADDomain (sin asignar) No se asignó al objeto IDM.
kv.Airespace-Wlan-Id (sin asignar) No se asignó al objeto IDM.
kv.AuthenticationIdentityStore (sin asignar) No se asignó al objeto IDM.
kv.AVPair (sin asignar) No se asignó al objeto IDM.
kv.CVPN3000/ASA/PIX7.x-DAP-Tunnel-Group-Name (sin asignar) No se asignó al objeto IDM.
kv.CVPN3000/ASA/PIX7.x-Group-Based-Address-Pools (sin asignar) No se asignó al objeto IDM.
kv.ExternalGroups (sin asignar) No se asignó al objeto IDM.
kv.FailureReason (sin asignar) No se asignó al objeto IDM.
kv.IdentityAccessRestricted (sin asignar) No se asignó al objeto IDM.
kv.IdentityGroup (sin asignar) No se asignó al objeto IDM.
kv.NAS-Identifier (sin asignar) No se asignó al objeto IDM.
kv.SelectedShellProfile (sin asignar) No se asignó al objeto IDM.
kv.ServiceSelectionMatchedRule (sin asignar) No se asignó al objeto IDM.
kv.State (sin asignar) No se asignó al objeto IDM.
kv.Step (sin asignar) No se asignó al objeto IDM.
kv.Tunnel-Medium-Type (sin asignar) No se asignó al objeto IDM.
kv.Tunnel-Private-Group-ID (sin asignar) No se asignó al objeto IDM.
kv.Tunnel-Type (sin asignar) No se asignó al objeto IDM.
kv.UseCase (sin asignar) No se asignó al objeto IDM.
kv.UserIdentityGroup (sin asignar) No se asignó al objeto IDM.
kv.VendorSpecific (sin asignar) No se asignó al objeto IDM.
kv.attribute-131 (sin asignar) No se asignó al objeto IDM.
kv.attribute-89 (sin asignar) No se asignó al objeto IDM.
kv.cisco-av-pair (sin asignar) No se asignó al objeto IDM.
kv.cisco-av-pair:CiscoSecure-Group-Id (sin asignar) No se asignó al objeto IDM.
leef_version (sin asignar) No se asignó al objeto IDM.
log_header metadata.description El valor se toma del campo log_header.
log_id metadata.product_log_id El valor se toma del campo log_id.
log_type metadata.product_event_type El valor se toma del campo log_type.
message_severity (sin asignar) No se asignó al objeto IDM.
product metadata.product_name El valor se toma del campo product.
product_version metadata.product_version El valor se toma del campo product_version.
server_host target.hostname El valor se toma del campo server_host.
timestamp metadata.event_timestamp El valor se toma de los campos timestamp y timezone (después de quitar los dos puntos). El valor combinado se analiza como una marca de tiempo.
url network.dns.questions[].name El valor se toma del campo url.
vendor metadata.vendor_name El valor se toma del campo vendor. Inicialmente, se establece en "GENERIC_EVENT" y, luego, se puede reemplazar según los campos log_type y analizados. Puede ser "USER_LOGIN", "USER_UNCATEGORIZED", "NETWORK_DNS", "NETWORK_CONNECTION", "STATUS_UPDATE" o "STATUS_UNCATEGORIZED". Se establece en "Cisco" de forma inicial y, luego, el campo vendor puede reemplazarlo. Se establece en "ACS" de forma inicial y, luego, el campo product podría reemplazarlo. Se establece en "CISCO_ACS". Se debe establecer en "USERNAME_PASSWORD". Se debe establecer en "TACACS". Se establece en "UDP" para los eventos de diagnóstico y de registro de RADIUS. Se establece en "DNS" para los eventos de DNS. Se deriva del campo security_action, que se establece según si el acceso fue exitoso o no. Se establece en "Acceso exitoso" para los accesos exitosos y en "Acceso fallido" para los accesos fallidos. También se puede establecer como "passed" para ciertos eventos de diagnóstico del almacén de identidades. Se establece en "LOW" para los intentos de acceso fallidos. Se construye anteponiendo "ASSET ID: " al campo device-uid.

¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.