Palo Alto Networks Prisma Cloud
本文档介绍了如何将 Palo Alto Networks Prisma Cloud 与 Google Security Operations 的 SOAR 模块集成。在 Google SecOps 平台中,Palo Alto Networks Prisma Cloud 的集成称为 Palo Alto Prisma Cloud。
集成版本:3.0
将 Prisma Cloud 与 Google SecOps 集成
集成需要以下参数:
| 参数 | 说明 |
|---|---|
API Root |
必需 Prisma Cloud 实例的 API 根。 默认值为 |
Access Key ID |
必需 Prisma Cloud 账号的访问密钥 ID。 |
Secret Access Key |
必需 Prisma Cloud 账号的私有访问密钥。 |
Verify SSL |
必需 如果选中此复选框,Google SecOps 会验证与 Prisma Cloud 服务器的连接所用的 SSL 证书是否有效。 此选项将会默认选中。 |
如有必要,您可以在稍后阶段进行更改。配置 Prisma Cloud 实例后,您可以在 playbook 中使用该实例。如需了解如何配置和支持 Prisma Cloud 的多个实例,请参阅支持多个实例。
如需了解如何在 Google SecOps 中配置集成,请参阅配置集成。
操作
以下是 Prisma Cloud 集成中可用的操作列表:
丰富素材资源
使用 Prisma Cloud 丰富有关资源的信息。
此操作不适用于 Google SecOps 实体。如需详细了解支持的实体,请参阅我们支持哪些实体类型。
操作输入
该操作需要以下参数:
| 参数 | 说明 |
|---|---|
Asset Identifiers |
必需 以英文逗号分隔的资产标识符列表,用于指定要获取详细信息的资产。 素材资源标识符可以是素材资源 ID,也可以是素材资源受限资源名称 (RRN)。 |
操作输出
该操作提供以下输出:
| 操作输出类型 | 操作输出可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 脚本结果 | 可用 |
| 输出消息 | 可用 |
JSON 结果
以下示例介绍了使用“丰富素材资源”操作时收到的 JSON 结果输出:
{
"id":"2dcffa4a51d892bcf48ed80652e75650",
"externalAssetId":"5115585594921894848",
"cloudType":"gcp",
"createdTs":1707216238063,
"insertTs":1707216238063,
"dynamicData":null,
"data":{
"id":"5115585594921894848",
"kind":"compute#instance",
"name":"example-name-rgmn",
"tags":{
"items":[
"example-name"
],
"fingerprint":"ycXN3kijHZc="
},
"zone":"https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/us-central1-a",
"disks":[
{
"boot":true,
"kind":"compute#attachedDisk",
"mode":"READ_WRITE",
"type":"PERSISTENT",
"index":0,
"source":"https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/us-central1-a/disks/example-name-rgmn",
"licenses":[
"https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/licenses/LICENSE_ID"
],
"interface":"SCSI",
"autoDelete":true,
"deviceName":"persistent-disk-0",
"diskSizeGb":"30",
"architecture":"X86_64",
"guestOsFeatures":[
{
"type":"GVNIC"
},
{
"type":"SEV_CAPABLE"
},
{
"type":"UEFI_COMPATIBLE"
},
{
"type":"VIRTIO_SCSI_MULTIQUEUE"
}
],
"shieldedInstanceInitialState":{
"dbxs":[
]
}
}
],
"labels":{
"goog-ccm":"true",
"goog-solutions-console-solution-id":"java-application",
"goog-solutions-console-deployment-name":"java-application"
},
"status":"RUNNING",
"metadata":{
"kind":"compute#metadata",
"items":[
{
"key":"created-by",
"value":"projects/PROJECT_ID/regions/us-central1/instanceGroupManagers/example-name"
},
{
"key":"instance-template",
"value":"projects/PROJECT_ID/global/instanceTemplates/xwiki-us-central1-a-temp"
},
{
"key":"startup-script",
"value":"#! /bin/bash\n\nsed -i \"s/$(echo JGROUP_BUCKET | sed -e 's/\\([[\/.*]\\|\\]\\)/\\\\&/g')/$(echo xwiki-jgroup-PROJECT_ID-gce | sed -e 's/[\/&]/\\\\&/g')/g\" /usr/lib/xwiki/WEB-INF/observation/remote/jgroups/tcp.xml\nsed -i \"s/$(echo ACCESS_KEY | sed -e 's/\\([[\/.*]\\|\\]\\)/\\\\&/g')/$(echo GOOG1E | sed -e 's/[\/&]/\\\\&/g')/g\" /usr/lib/xwiki/WEB-INF/observation/remote/jgroups/tcp.xml\nsed -i \"s/$(echo SECRET_KEY | sed -e 's/\\([[\/.*]\\|\\]\\)/\\\\&/g')/$(echo IvgTtIJJq+68sI9XISo2qMXGyONmFDf7U9QuegN/ | sed -e 's/[\/&]/\\\\&/g')/g\" /usr/lib/xwiki/WEB-INF/observation/remote/jgroups/tcp.xml\n\nDB_PASS=\"$(gcloud secrets versions access --secret xwiki-db-password latest --project PROJECT_NAME)\"\n\nbash /home/xwiki_startup.sh \"203.0.113.2\" \"xwiki\" \"${DB_PASS}\" \"203.0.113.242\"\nbash /home/xwiki_deploy_flavor.sh \"203.0.113.2\" \"xwiki\" \"${DB_PASS}\" \"203.0.113.242\"\n"
}
],
"fingerprint":"_s0ui1yxFME="
},
"selfLink":"https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/us-central1-a/instances/example-name-rgmn",
"scheduling":{
"preemptible":false,
"automaticRestart":true,
"onHostMaintenance":"MIGRATE",
"provisioningModel":"STANDARD"
},
"cpuPlatform":"Intel Cascade Lake",
"fingerprint":"YBMt5z3lxpI=",
"machineType":"https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/us-central1-a/machineTypes/n2-standard-2",
"minCpuPlatform":"Intel Cascade Lake",
"serviceAccounts":[
{
"email":"example@developer.gserviceaccount.com",
"scopes":[
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/compute",
"https://www.googleapis.com/auth/devstorage.full_control",
"https://www.googleapis.com/auth/devstorage.read_only",
"https://www.googleapis.com/auth/logging.write",
"https://www.googleapis.com/auth/monitoring.write",
"https://www.googleapis.com/auth/service.management.readonly",
"https://www.googleapis.com/auth/servicecontrol",
"https://www.googleapis.com/auth/trace.append"
]
}
],
"startRestricted":false,
"labelFingerprint":"Cy_Kdpu4cz8=",
"creationTimestamp":"2024-02-05T16:28:31.856-08:00",
"networkInterfaces":[
{
"kind":"compute#networkInterface",
"name":"nic0",
"network":"https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/networks/NETWORK_ID",
"networkIP":"203.0.113.2",
"stackType":"IPV4_ONLY",
"subnetwork":"https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/us-central1/subnetworks/SUBNETWORK_ID",
"fingerprint":"lpKHF5wzhv4="
}
],
"deletionProtection":false,
"lastStartTimestamp":"2024-02-05T16:28:47.038-08:00",
"shieldedInstanceConfig":{
"enableVtpm":true,
"enableSecureBoot":false,
"enableIntegrityMonitoring":true
},
"shieldedInstanceIntegrityPolicy":{
"updateAutoLearnPolicy":true
}
},
"name":"example-name-rgmn",
"regionId":"us-central1",
"regionName":"US",
"riskGrade":"B",
"stateId":null,
"url":"https://console.cloud.google.comhttps://console.cloud.google.com/compute/instancesDetail/zones/us-central1-a/instances/example-name-rgmn?project=PROJECT_NAME",
"vpcId":null,
"vpcName":null,
"relationshipCounts":1,
"vulnerabilityCounts":{
"critical":17,
"high":38,
"knownExploits":{
"critical":0,
"high":0,
"low":0,
"medium":0
},
"low":31,
"medium":59,
"old":{
"critical":0,
"high":0,
"low":0,
"medium":0
},
"patchable":{
"critical":17,
"high":38,
"low":5,
"medium":26
}
},
"vpcExternalAssetId":null,
"tags":{
"goog-ccm":true,
"xwiki-us-central1-autoscale":"",
"goog-solutions-console-deployment-name":"java-application",
"goog-solutions-console-solution-id":"java-application"
},
"assetType":"Google Compute Engine VM Instance",
"serviceName":"Google Compute Engine",
"resourceType":"Google Compute Engine VM Instance",
"accountGroup":"account",
"accountName":"Example-Name",
"assetClassId":"compute",
"assetClass":"Compute",
"deleted":false,
"problem":[
],
"alertsCount":[
{
"count":5,
"severity":"high"
},
{
"count":3,
"severity":"critical"
},
{
"count":2,
"severity":"low"
}
],
"attributes":{
"altAssetId":"example-name-rgmn.us-central1-a.c.PROJECT_NAME.internal",
"name":"example-name-rgmn.us-central1-a.c.PROJECT_NAME.internal",
"provider":"gcp",
"accountID":"example-account",
"region":"us-central1-a",
"resourceName":"5115585594921894848",
"osRelease":"focal",
"osDistro":"ubuntu",
"distro":"Ubuntu 20.04.5 LTS",
"scannedBy":"Agentless",
"docker":"",
"kubernetes":"",
"cluster":"",
"vmImage":"hsa-xwiki-vm-img-latest",
"collections":[
"All"
],
"scanPassed":true,
"stage":"run",
"lastScanTime":"2024-02-12T18:25:39.39Z"
},
"alertCountBySeverity":[
{
"severity":"high",
"count":5
},
{
"severity":"critical",
"count":3
},
{
"severity":"low",
"count":2
}
]
}
脚本结果
下表介绍了使用“丰富资产”操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
| is_success | True 或 False |
输出消息
在案例墙上,“丰富素材资源”操作会提供以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "Enrich Assets". Reason:
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
Ping
使用此操作测试与 Prisma Cloud 服务器的连接。
操作输入
无。
操作输出
该操作提供以下输出:
| 操作输出类型 | 操作输出可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 不可用 |
| 脚本结果 | 可用 |
| 输出消息 | 可用 |
脚本结果
下表介绍了使用 Ping 操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
| is_success | True 或 False |
输出消息
在“支持请求墙”上,“Ping”操作会提供以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
Successfully connected to the Palo Alto Prisma Cloud server with
the provided connection parameters! |
操作成功。 |
Failed to connect to the Palo Alto Prisma Cloud server! Error is
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
响应提醒
使用 Prisma Cloud 响应提醒。
此操作不适用于 Google SecOps 实体。如需详细了解支持的实体,请参阅我们支持哪些实体类型。
操作输入
该操作需要以下参数:
| 参数 | 说明 |
|---|---|
Alert ID |
必需 响应提醒的 ID。 |
Response Type |
可选 提醒状态。 如果选择
|
Snooze Time |
可选 延后时间(以小时为单位)。 |
Dismiss Note |
可选 用于说明解雇原因的备注。 |
操作输出
该操作提供以下输出:
| 操作输出类型 | 操作输出可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 脚本结果 | 可用 |
| 输出消息 | 可用 |
JSON 结果
以下示例介绍了使用“响应提醒”操作时收到的 JSON 结果输出:
{
"response_status": {"Reopened", "Snoozed", "Dismissed", "Remediated", "No Remediation Applied."}
}
脚本结果
下表介绍了使用“响应提醒”操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
| is_success | True 或 False |
输出消息
在“支持请求墙”上,“Ping”操作会提供以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
Successfully responded to an alert with ID
ALERT_ID in Palo Alto Prisma
Cloud. |
操作成功。 |
Error executing action "Respond To Alert". Reason: Alert with
ID ALERT_ID wasn't found in Palo
Alto Prisma Cloud. Please check the spelling. |
操作失败。 找不到相应提醒。检查拼写。 |
Error executing action "Respond To Alert". Reason: The Response
Type parameter is misconfigured. Select a valid value for the Response
Type parameter. |
操作失败。 检查响应类型参数值。 |
Error executing action "Respond To Alert". Reason: Action
couldn't respond to alert with ID
ALERT_ID in Palo Alto Prisma Cloud.
Please check the action configuration parameters. |
操作失败。 检查输入参数值。 |
Error executing action "Respond To Alert". Reason:
The Response Type parameter was set to "Snooze". Make sure that the Snooze
Time parameter value is configured and valid. |
操作失败。 检查休眠时间参数值。 |
Error executing action "Respond To Alert". Reason:
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
连接器
如需详细了解如何在 Google SecOps 中配置连接器,请参阅配置连接器。
Palo Alto Prisma Cloud - 提醒连接器
使用此连接器从 Prisma Cloud 拉取提醒。
动态列表可与 policy.name 参数搭配使用,如以下示例所示:
"filters": [
{
"operator": "=",
"name": "policy.name",
"value": "Google Cloud VM instance that is internet reachable with unrestricted access (203.0.113.0/24)"
},
{
"operator": "=",
"name": "policy.name",
"value": "Compute Engine with IAM write access level"
}
]
连接器输入
连接器需要以下参数:
| 参数 | 说明 |
|---|---|
Product Field Name |
必需 用于检索产品字段名称的源字段名称。 默认值为 |
Event Field Name |
必需 用于检索事件字段名称的源字段名称。 默认值为 |
Environment Field Name |
可选
存储环境名称的字段的名称。 如果找不到环境字段,则将环境设置为默认环境。 |
Environment Regex Pattern |
可选
要对 使用默认值 如果正则表达式模式为 null 或空,或者环境值为 null,则最终环境结果为默认环境。 |
API Root |
必需
Prisma Cloud 实例的 API 根。 默认值为 |
Access Key ID |
必需
Prisma Cloud 账号的访问密钥 ID。 |
Secret Access Key |
必需
Prisma Cloud 账号的私有访问密钥。 |
Lowest Severity to Fetch |
可选
要提取的提醒的最低严重程度。 如果您未提供任何值,连接器会注入所有严重程度的提醒。 可能的值:
|
Max Hours Backwards |
可选 连接器首次开始检索事件之前的小时数。此参数仅在您首次启用连接器后,对初始连接器迭代应用一次。 默认值为 1 小时。 |
Max Alerts To Fetch |
可选
一次连接器迭代中要处理的提醒数量。 默认值为 100。最大值为 1000。 |
Use dynamic list as a blocklist |
必需
如果选中,则动态列表用作屏蔽名单。 默认情况下未选中。 |
Verify SSL |
必需
如果选中此复选框,Google SecOps 会验证与 Prisma Cloud 服务器的连接所用的 SSL 证书是否有效。 默认情况下未选中。 |
Proxy Server Address |
可选 要使用的代理服务器的地址。 |
Proxy Username |
可选 用于进行身份验证的代理用户名。 |
Proxy Password |
可选 用于进行身份验证的代理密码。 |
连接器事件
以下是连接器事件的示例:
{
"id": "ID",
"status": "open",
"reason": "NEW_ALERT",
"firstSeen": 1706971601230,
"lastSeen": 1706971601230,
"alertTime": 1706971601230,
"lastUpdated": 1707806767098,
"saveSearchId": "b1ccf7df-d2c8-4588-8d06-b62738fd9745",
"policy": {
"policyId": "45488d62-6abe-4938-9b7a-aaa44858540e",
"name": "Data destruction risk due to a publicly exposed and vulnerable Google Cloud VM instance with delete permissions",
"policyType": "attack_path",
"systemDefault": true,
"description": "This policy idnces as soon as possible.",
"severity": "critical",
"recommendation": "The followinge vulnerabilities quickly.",
"labels": [
"Prisma_Cloud"
],
"lastModifiedOn": 1702006359544,
"lastModifiedBy": "user@example.com",
"deleted": false,
"findingTypes": [],
"remediable": false
},
"alertRules": [
{
"policyScanConfigId": "9612cba4-4f76-44ec-b11f-9c01ba9a4c04",
"name": "Default Alert Rule",
"enabled": true,
"scanAll": true,
"target": {
"accountGroups": [],
"excludedAccounts": [],
"regions": [],
"tags": []
},
"createdBy": "example@example.com",
"alertRuleNotificationConfig": [],
"allowAutoRemediate": false,
"notifyOnOpen": true,
"notifyOnSnoozed": false,
"notifyOnDismissed": false,
"notifyOnResolved": false
}
],
"resource": {
"id": "ID",
"name": "gke-gke-pc-pool-1-4e52a225-12id",
"account": "Example-Account",
"accountId": "ACCOUNT_ID",
"cloudAccountGroups": [
"Default Account Group"
],
"region": "US",
"regionId": "us-central1",
"resourceType": "INSTANCE",
"resourceApiName": "gcloud-compute-instances-list",
"cloudServiceName": "Google Compute Engine",
"data": {},
"cloudType": "gcp",
"resourceTs": 1706915178410,
"internalResourceId": "INTERNAL_RESOURCE_ID",
"cloudAccountOwners": [
"user1@example.com",
"user2@example.com"
],
"unifiedAssetId": "393924d2b306c07490b19615c6e1a265",
"resourceConfigJsonAvailable": false,
"resourceDetailsAvailable": true
},
"networkAnomaly": false
}
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。