借助威胁日志,您可以审核、验证和分析在网络中检测到的威胁。
若 Cloud 新一代防火墙检测到正在监控进行第 7 层检查的流量存在威胁,则会在原始项目中生成一个日志条目,其中包含威胁的详细信息。如需查看和检查威胁日志,请在 Logs Explorer 中搜索日志 networksecurity.googleapis.com/firewall_threat
。您还可以在威胁页面上查看这些威胁日志。
本页介绍了在检测到威胁时生成的威胁日志的格式和结构。
威胁日志格式
Cloud NGFW 会在 Cloud Logging 中,为进出特定可用区的虚拟机 (VM) 实例的受监控流量中检测到的每个威胁创建日志记录条目。日志记录包含在 LogEntry 的 JSON 载荷字段中。
某些日志字段采用多字段格式,在给定字段中包含多段数据。例如,connection
字段采用 Connection
格式,它在单个字段中包含服务器 IP 地址和端口、客户端 IP 地址和端口以及协议号。
下表介绍了威胁日志字段的格式。
字段 | 类型 | 说明 |
---|---|---|
connection
|
Connection
|
一个 5 元组,用于描述与检测到威胁的流量关联的连接参数。 |
action
|
string
|
对检测到威胁的数据包执行的操作。此操作可以是安全配置文件中指定的默认操作或替换操作。 |
threatDetails
|
ThreatDetails
|
检测到的威胁的详细信息。 |
securityProfileGroupDetails
|
SecurityProfileGroupDetails
|
应用于被拦截流量的安全配置文件组的详细信息。 |
interceptVpc
|
VpcDetails
|
与检测到威胁的虚拟机实例关联的虚拟私有云 (VPC) 网络的详细信息。 |
interceptInstance
|
InterceptInstance
|
检测到威胁的虚拟机实例的详细信息。 |
Connection
字段格式
下表介绍了 Connection
字段的格式。
字段 | 类型 | 说明 |
---|---|---|
clientIp
|
string
|
客户端 IP 地址。如果客户端是 Compute Engine 虚拟机,则 clientIp 是主要内部 IP 地址或虚拟机网络接口的别名 IP 范围内的地址。系统不显示外部 IP 地址。日志显示数据包标头上观察到的虚拟机实例的 IP 地址,类似于虚拟机实例上的 TCP 转储。 |
clientPort
|
integer
|
客户端端口号。 |
serverIp
|
string
|
服务器 IP 地址。如果服务器是 Compute Engine 虚拟机,则 serverIp 是主要内部 IP 地址或虚拟机网络接口的别名 IP 范围内的地址。即使使用外部 IP 地址进行连接,系统也不会显示此地址。 |
serverPort
|
integer
|
服务器端口号。 |
protocol
|
string
|
连接的 IP 协议。 |
ThreatDetails
字段格式
下表介绍了 ThreatDetails
字段的格式。
字段 | 类型 | 说明 |
---|---|---|
id
|
string
|
唯一的 Palo Alto Networks 威胁标识符。 |
threat
|
string
|
检测到的威胁的名称。 |
description
|
string
|
检测到的威胁的详细说明。 |
direction
|
string
|
流量方向。例如 client_to_server 或 server_to_client 。
|
application
|
string
|
与检测到的威胁关联的应用。 |
severity
|
string
|
与检测到的威胁关联的严重级别。如需了解详情,请参阅威胁严重级别。 |
detectionTime
|
string
|
检测到威胁的时间。 |
category
|
string
|
检测到的威胁的子类型。例如 CODE_EXECUTION 。
|
uriOrFilename
|
string
|
相关威胁的 URI 或文件名(如果适用)。 |
type
|
string
|
检测到的威胁类型。例如 SPYWARE 。
|
repeatCount
|
integer
|
在五秒内出现相同客户端 IP 地址、服务器 IP 地址和威胁类型的会话数。 |
cves
|
string
|
与威胁关联的常见漏洞和披露 (CVE) 列表。例如 CVE-2021-44228-Apache Log4j remote code execution vulnerability 。
|
SecurityProfileGroupDetails
字段格式
下表介绍了 SecurityProfileGroupDetails
字段的格式。
字段 | 类型 | 说明 |
---|---|---|
securityProfileGroupId
|
string
|
应用于流量的安全配置文件组名称。 |
organizationId
|
integer
|
虚拟机实例所属的组织 ID。 |
VpcDetails
字段格式
下表介绍了 VpcDetails
字段的格式。
字段 | 类型 | 说明 |
---|---|---|
vpc
|
string
|
与被拦截流量关联的 VPC 网络的名称。 |
projectId
|
string
|
与 VPC 网络关联的 Google Cloud 项目的名称。 |
InterceptInstance
字段格式
下表介绍了 InterceptInstance
字段的格式。
字段 | 类型 | 说明 |
---|---|---|
projectId
|
string
|
与被拦截流量关联的 Google Cloud 项目的名称。 |
vm
|
string
|
与被拦截流量关联的虚拟机实例的名称。 |
威胁日志与防火墙日志的关联
当数据包与已启用日志记录的防火墙规则匹配时,Cloud NGFW 会记录 Firewall Rules Logging 条目。此条目包含来源 IP 地址、目标 IP 地址和数据包检查时间等字段。如需查看这些防火墙规则日志,请参阅查看日志。
如果您有启用了日志记录的第 7 层检查防火墙政策规则,Cloud NGFW 会先为匹配的数据包记录防火墙规则日志记录条目。然后,将数据包发送到防火墙端点以进行第 7 层检查。防火墙端点会分析数据包是否存在威胁。如果检测到威胁,系统会创建单独的威胁日志。此威胁日志包含威胁类型、威胁来源和威胁目的地等字段。如需查看威胁日志,请参阅查看威胁。
您可以比较防火墙规则日志和威胁日志中的字段,以确定触发威胁的数据包,并采取适当措施来解决该问题。
例如,您已使用以下设置配置了防火墙政策规则:
- 来源 IP 地址:
192.0.2.0
- 来源端口:
47644
- 目的地 IP 地址:
192.0.2.1
- 目标端口:
80
- 日志记录:
Enabled
如需查看与此规则关联的威胁日志,请前往 Logs Explorer 页面。在查询窗格中,将以下查询粘贴到查询编辑器字段中。
resource.type="networksecurity.googleapis.com/FirewallEndpoint" jsonPayload.source_ip_address="192.0.2.0" jsonPayload.source_port="47644" jsonPayload.destination_ip_address="192.0.2.1" jsonPayload.destination_port="80"
查询结果部分会显示以下威胁日志:
{ insertId: "0ac7f359-263f-4428-8ded-ac655d8a09db" jsonPayload: { action: "reset-server" alert_severity: "HIGH" alert_time: "2023-11-28T19:07:15Z" category: "info-leak" ▸ cves: [6] } destination_ip_address: "192.0.2.1" destination_port: "80" details: "This signature detects Microsoft Windows win.ini access attempts. A successful attack could allow an attacker to access sensitive information and conduct further attacks." direction: "CLIENT_TO_SERVER" ip_protocol: "tcp" name: "Microsoft Windows win.ini Access Attempt Detected" network: "projects/XXXX/global/networks/fwplus-vpc. repeat_count: "1" security_profile_group: "organizations/XXXX/locations/global/securityprofileGroups/XXXX-fwplus-spg" source_ip_address: "192.0.2.0" source_port: "47644" threat_id: "30851" type: "vulnerability" uri_or_filename: logName: "projects/XXXX/logs/networksecurity.googleapis.com%2Ffirewall_threat" receiveTimestamp: "2023-11-28T19:08:49.841883684Z" ▸ resource: {2} } timestamp: "2023-11-28T19:08:47.560012184Z"
同样,如需查看与此规则关联的防火墙日志,请前往 Logs Explorer 页面。在查询窗格中,将以下查询粘贴到查询编辑器字段中。
jsonPayload.rule_details.action="APPLY_SECURITY_PROFILE_GROUP" jsonPayload.connection.src_ip="192.0.2.0" jsonPayload.connection.src_port="47644" jsonPayload.connection.dest_ip="192.0.2.1" jsonPayload.connection.dest_port="80"
查询结果部分会显示以下防火墙日志:
{ insertId: "qn82vdg109q3r9" jsonPayload: { connection: { } dest_ip: "192.0.2.1" dest_port: 80 protocol: 6 src_ip: "192.0.2.0" src_port: 47644 disposition: "INTERCEPTED" ►instance: {4} ▸ remote_instance: {4} ▸ remote_vpc: {3} rule_details: { action: "APPLY_SECURITY_PROFILE_GROUP" apply_security_profile_fallback_action: "UNSPECIFIED" direction: "INGRESS" ▸ ip_port_info: [1] ▼ priority: 6000 reference: "network: fwplus-vpc/firewallPolicy: fwplus-fwpolicy" source_range: [ 1 0: "192.0.2.0/24" target_secure_tag: [ 0: "tagValues/281479199099651" ] } vpc: { project_id:XXXX subnetwork_name: "fwplus-us-central1-subnet" vpc_name: "fwplus-vpc" } } logName: "projects/XXXX/logs/compute.googleapis.com%2Ffirewall", receiveTimestamp: "2023-11-28T19:08:46.749244092Z" resource: {2} timestamp: "2023-11-28T19:08:40.207465099Z" }
通过查询威胁日志和防火墙日志,您可以查看它们之间的相关性。下表将防火墙日志字段映射到相应的威胁日志字段。
防火墙日志字段 | 威胁日志字段 | 说明 |
---|---|---|
src_ip
|
source_ip_address
|
防火墙日志中的来源 IP 地址与威胁日志中的来源 IP 地址相关联,以便确定潜在威胁的来源 |
src_port
|
source_port
|
防火墙日志中的来源端口与威胁日志中的来源端口相关联,以识别潜在威胁中使用的来源端口 |
dest_ip
|
destination_ip_address
|
防火墙日志中的目标 IP 地址与威胁日志中的目标 IP 地址相关联,以精确定位潜在威胁的目标 |
dest_port
|
destination_port
|
防火墙日志中的目标端口与威胁日志中的目标端口相关联,以识别潜在威胁中使用的目标端口 |