收集 Cisco Secure ACS 日志
本文档介绍了如何使用 Google Security Operations 转发器收集 Cisco Secure Access Control Server (ACS) 日志。
如需了解详情,请参阅将数据注入 Google Security Operations。
注入标签用于标识将原始日志数据标准化为结构化 UDM 格式的解析器。本文档中的信息适用于具有 CISCO_ACS
注入标签的解析器。
配置 Cisco Secure ACS
- 使用管理员凭据登录 Cisco Secure ACS 控制台。
- 在 Cisco Secure ACS 控制台中,依次选择系统管理 > 配置 > 日志配置 > 远程日志目标。
- 点击创建。
在创建窗口中,为以下字段指定值:
字段 说明 名称 Google Security Operations 转发器的名称。 说明 Google Security Operations 转发器的说明。 IP 地址 Google Security Operations 转发器的 IP 地址。 使用高级 syslog 选项 选择此选项可启用高级 syslog 选项。 目标类型 选择 TCP syslog 或 UDP syslog。 端口 使用高端口,例如 10514。 设施代码 LOCAL6(代码 = 22;默认)。 密码长度上限 建议值为 1,024。 点击提交。系统会显示“远程日志目标”窗口,其中包含新的远程日志目标配置。
在 Cisco Secure ACS 控制台中,依次选择系统管理 > 配置 > 日志配置 > 日志记录类别 > 按实例。
选择 ACS,然后点击配置。
在按实例窗口中,选择一个日志记录类别,然后点击修改。
在常规标签页中,对于某些日志记录类别,日志记录严重程度必须设置为默认值或由供应商提供的值。
对于 Cisco Secure ACS,除了无法更改严重程度的日志记录类别(例如 AAA 审核通知、结算通知、管理和运营审核通知以及系统统计信息通知)之外,所有日志记录类别的默认严重程度均为 Warn。
点击远程 syslog 目标标签页,然后将新创建的远程目标从可用目标移至所选目标。
点击提交。
如需为其他日志记录类别配置远程目标,请重复执行第 8 步到第 10 步。
配置 Google Security Operations 转发器和 syslog 以注入 Cisco Secure ACS 日志
- 依次前往 SIEM 设置 > 转发器。
- 点击添加新转发器。
- 在 Forwarder Name(转发器名称)字段中,输入转发器的唯一名称。
- 点击提交。转发器已添加,系统会显示添加收集器配置窗口。
- 在收集器名称字段中,输入一个名称。
- 选择 Cisco ACS 作为日志类型。
- 选择 Syslog 作为收集器类型。
- 配置以下必需的输入参数:
- 协议:指定协议。
- 地址:指定收集器所在的 syslog 数据目标 IP 地址或主机名。
- 端口:指定收集器所在的并监听 syslog 数据的目标端口。
- 点击提交。
如需详细了解 Google Security Operations 转发器,请参阅 Google Security Operations 转发器文档。 如需了解每种转发器类型的要求,请参阅按类型划分的转发器配置。 如果您在创建转发器时遇到问题,请与 Google 安全运营支持团队联系。
字段映射参考
此解析器可处理 Cisco ACS 日志,包括身份验证、统计、诊断和系统统计信息。它使用 grok 模式从各种日志格式 (SYSLOG + KV、LEEF) 中提取字段,对时间戳和时区进行归一化处理,并将关键字段映射到 UDM,通过特定逻辑处理不同的日志类型,以实现身份验证成功/失败、TACACS+ 结算和 RADIUS 事件。它还会使用设备信息和身份验证详细信息等其他字段来丰富 UDM。
UDM 映射表
日志字段 | UDM 映射 | 逻辑 |
---|---|---|
Acct-Authentic |
additional.fields[].value.string_value |
值取自 Acct-Authentic 字段。 |
Acct-Delay-Time |
additional.fields[].value.string_value |
值取自 Acct-Delay-Time 字段。 |
Acct-Input-Octets |
additional.fields[].value.string_value |
值取自 Acct-Input-Octets 字段。 |
Acct-Input-Packets |
additional.fields[].value.string_value |
值取自 Acct-Input-Packets 字段。 |
Acct-Output-Octets |
additional.fields[].value.string_value |
值取自 Acct-Output-Octets 字段。 |
Acct-Output-Packets |
additional.fields[].value.string_value |
值取自 Acct-Output-Packets 字段。 |
Acct-Session-Id |
additional.fields[].value.string_value |
值取自 Acct-Session-Id 字段。 |
Acct-Session-Time |
additional.fields[].value.string_value |
值取自 Acct-Session-Time 字段。 |
Acct-Status-Type |
additional.fields[].value.string_value |
值取自 Acct-Status-Type 字段。 |
Acct-Terminate-Cause |
additional.fields[].value.string_value |
值取自 Acct-Terminate-Cause 字段。 |
ACSVersion |
additional.fields[].value.string_value |
值取自 ACSVersion 字段。 |
AD-Domain |
principal.group.group_display_name |
值取自 AD-Domain 字段。 |
AD-IP-Address |
principal.ip |
值取自 AD-IP-Address 字段。 |
Called-Station-ID |
additional.fields[].value.string_value |
值取自 Called-Station-ID 字段。 |
Calling-Station-ID |
additional.fields[].value.string_value |
值取自 Calling-Station-ID 字段。 |
Class |
additional.fields[].value.string_value |
值取自 Class 字段。 |
CmdSet |
(未映射) | 未映射到 IDM 对象。 |
ConfigVersionId |
additional.fields[].value.number_value |
值取自 ConfigVersionId 字段并转换为浮点数。 |
DestinationIPAddress |
target.ip ,intermediary.ip |
值取自 DestinationIPAddress 字段。intermediary.ip 派生自 Device IP Address 。 |
DestinationPort |
target.port |
值取自 DestinationPort 字段并转换为整数。 |
Device IP Address |
intermediary.ip |
值取自 Device IP Address 字段。 |
Device Port |
intermediary.port |
值取自 Device Port 字段并转换为整数。 |
DetailedInfo |
security_result.summary 、security_result.description 、security_result.action |
如果 DetailedInfo 为“身份验证成功”,security_result.summary 为“已成功登录”,且 security_result.action 为 ALLOW。如果 DetailedInfo 包含“Invalid username or password specified”(指定的用户名或密码无效),则 security_result.summary 为“failed login occurred”(登录失败),且 security_result.action 为 BLOCK。security_result.description 派生自 log_header 。 |
Framed-IP-Address |
principal.ip |
值取自 Framed-IP-Address 字段。 |
Framed-Protocol |
additional.fields[].value.string_value |
值取自 Framed-Protocol 字段。 |
NAS-IP-Address |
target.ip |
值取自 NAS-IP-Address 字段。 |
NAS-Port |
additional.fields[].value.string_value |
值取自 NAS-Port 字段。 |
NAS-Port-Id |
target.port |
值取自 NAS-Port-Id 字段并转换为整数。 |
NAS-Port-Type |
additional.fields[].value.string_value |
值取自 NAS-Port-Type 字段。 |
NetworkDeviceName |
target.hostname |
值取自 NetworkDeviceName 字段。 |
Protocol |
additional.fields[].value.string_value |
值取自 Protocol 字段。 |
RadiusPacketType |
(未映射) | 未映射到 IDM 对象。 |
Remote-Address |
principal.ip ,target.ip |
值取自 Remote-Address 字段,并解析为 IP 地址。对于身份验证事件,它会映射到 principal.ip ;对于结算和诊断事件,它会映射到 target.ip 。 |
RequestLatency |
additional.fields[].value.string_value |
值取自 RequestLatency 字段。 |
Response |
principal.user.userid |
如果 Response 包含“User-Name”,则提取用户名并将其映射到 principal.user.userid 。 |
SelectedAccessService |
additional.fields[].value.string_value |
值取自 SelectedAccessService 字段。 |
SelectedAuthenticationIdentityStores |
security_result.detection_fields[].value |
值取自 SelectedAuthenticationIdentityStores 字段。 |
SelectedAuthorizationProfiles |
security_result.detection_fields[].value |
值取自 SelectedAuthorizationProfiles 字段。 |
Service-Type |
additional.fields[].value.string_value |
值取自 Service-Type 字段。 |
Tunnel-Client-Endpoint |
additional.fields[].value.string_value |
值取自 Tunnel-Client-Endpoint 字段,并解析为 IP 地址。 |
User |
target.user.userid |
值取自 User 字段。 |
UserName |
target.user.userid ,principal.mac |
如果 UserName 是 MAC 地址,则会对其进行解析并将其映射到 principal.mac 。否则,它会映射到 target.user.userid 。 |
ac-user-agent |
network.http.user_agent |
值取自 ac-user-agent 字段。 |
cat |
metadata.description |
值取自 cat 字段。 |
device-mac |
principal.mac |
值取自 device-mac 字段,添加英文冒号,并将值转换为小写。如果 device-mac 为“00”,则替换为“00:00:00:00:00:00”。 |
device-platform |
principal.asset.platform_software.platform |
如果 device-platform 为“win”,则将值“WINDOWS”分配给 principal.asset.platform_software.platform 。 |
device-platform-version |
principal.asset.platform_software.platform_version |
值取自 device-platform-version 字段。 |
device-public-mac |
principal.mac |
值取自 device-public-mac 字段,连字符替换为英文冒号,并且值转换为小写。 |
device-type |
principal.asset.hardware.model |
值取自 device-type 字段。 |
device-uid |
principal.asset.asset_id |
值取自 device-uid 字段,并添加了“ASSET ID: ”前缀。 |
device-uid-global |
principal.asset.product_object_id |
值取自 device-uid-global 字段。 |
hostname |
principal.hostname |
值取自 hostname 字段。 |
ip:source-ip |
principal.ip |
值取自 ip:source-ip 字段。 |
kv.ADDomain |
(未映射) | 未映射到 IDM 对象。 |
kv.Airespace-Wlan-Id |
(未映射) | 未映射到 IDM 对象。 |
kv.AuthenticationIdentityStore |
(未映射) | 未映射到 IDM 对象。 |
kv.AVPair |
(未映射) | 未映射到 IDM 对象。 |
kv.CVPN3000/ASA/PIX7.x-DAP-Tunnel-Group-Name |
(未映射) | 未映射到 IDM 对象。 |
kv.CVPN3000/ASA/PIX7.x-Group-Based-Address-Pools |
(未映射) | 未映射到 IDM 对象。 |
kv.ExternalGroups |
(未映射) | 未映射到 IDM 对象。 |
kv.FailureReason |
(未映射) | 未映射到 IDM 对象。 |
kv.IdentityAccessRestricted |
(未映射) | 未映射到 IDM 对象。 |
kv.IdentityGroup |
(未映射) | 未映射到 IDM 对象。 |
kv.NAS-Identifier |
(未映射) | 未映射到 IDM 对象。 |
kv.SelectedShellProfile |
(未映射) | 未映射到 IDM 对象。 |
kv.ServiceSelectionMatchedRule |
(未映射) | 未映射到 IDM 对象。 |
kv.State |
(未映射) | 未映射到 IDM 对象。 |
kv.Step |
(未映射) | 未映射到 IDM 对象。 |
kv.Tunnel-Medium-Type |
(未映射) | 未映射到 IDM 对象。 |
kv.Tunnel-Private-Group-ID |
(未映射) | 未映射到 IDM 对象。 |
kv.Tunnel-Type |
(未映射) | 未映射到 IDM 对象。 |
kv.UseCase |
(未映射) | 未映射到 IDM 对象。 |
kv.UserIdentityGroup |
(未映射) | 未映射到 IDM 对象。 |
kv.VendorSpecific |
(未映射) | 未映射到 IDM 对象。 |
kv.attribute-131 |
(未映射) | 未映射到 IDM 对象。 |
kv.attribute-89 |
(未映射) | 未映射到 IDM 对象。 |
kv.cisco-av-pair |
(未映射) | 未映射到 IDM 对象。 |
kv.cisco-av-pair:CiscoSecure-Group-Id |
(未映射) | 未映射到 IDM 对象。 |
leef_version |
(未映射) | 未映射到 IDM 对象。 |
log_header |
metadata.description |
值取自 log_header 字段。 |
log_id |
metadata.product_log_id |
值取自 log_id 字段。 |
log_type |
metadata.product_event_type |
值取自 log_type 字段。 |
message_severity |
(未映射) | 未映射到 IDM 对象。 |
product |
metadata.product_name |
值取自 product 字段。 |
product_version |
metadata.product_version |
值取自 product_version 字段。 |
server_host |
target.hostname |
值取自 server_host 字段。 |
timestamp |
metadata.event_timestamp |
值取自 timestamp 字段和 timezone 字段(移除英文冒号后)。系统会将合并后的值解析为时间戳。 |
url |
network.dns.questions[].name |
值取自 url 字段。 |
vendor |
metadata.vendor_name |
值取自 vendor 字段。最初设置为“GENERIC_EVENT”,然后可能会根据 log_type 和已解析的字段进行覆盖。可以是“USER_LOGIN”“USER_UNCATEGORIZED”“NETWORK_DNS”“NETWORK_CONNECTION”“STATUS_UPDATE”或“STATUS_UNCATEGORIZED”。最初设置为“Cisco”,然后可能会被 vendor 字段覆盖。最初设置为“ACS”,然后可能会被 product 字段覆盖。设置为“CISCO_ACS”。设置为“USERNAME_PASSWORD”。设置为“TACACS”。对于 RADIUS 结算和诊断事件,请设置为“UDP”。对于 DNS 事件,请设置为“DNS”。派生自 security_action 字段,该字段根据登录是否成功而设置。对于成功登录,设置为“成功登录”;对于失败登录,设置为“登录失败”。对于某些身份存储诊断事件,也可能会设置为“passed”。对于失败的登录尝试,设置为“低”。通过在 device-uid 字段前面添加“ASSET ID: ”来构建。 |
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。