REST Resource: organizations.sources.findings

Recurso: Resultado

Hallazgo de Security Command Center

Un hallazgo es un registro de datos de evaluación, como seguridad, riesgo, estado o privacidad, que se transfieren a Security Command Center para fines de presentación, notificación, análisis, pruebas de políticas y aplicación. Por ejemplo, una vulnerabilidad de secuencia de comandos entre sitios (XSS) en una aplicación de App Engine es un resultado.

Representación JSON
{
  "name": string,
  "parent": string,
  "resourceName": string,
  "state": enum (State),
  "category": string,
  "externalUri": string,
  "sourceProperties": {
    string: value,
    ...
  },
  "securityMarks": {
    object (SecurityMarks)
  },
  "eventTime": string,
  "createTime": string,
  "severity": enum (Severity),
  "canonicalName": string,
  "mute": enum (Mute),
  "findingClass": enum (FindingClass),
  "indicator": {
    object (Indicator)
  },
  "vulnerability": {
    object (Vulnerability)
  },
  "muteUpdateTime": string,
  "externalSystems": {
    string: {
      object (ExternalSystem)
    },
    ...
  },
  "mitreAttack": {
    object (MitreAttack)
  },
  "access": {
    object (Access)
  },
  "connections": [
    {
      object (Connection)
    }
  ],
  "muteInitiator": string,
  "muteInfo": {
    object (MuteInfo)
  },
  "processes": [
    {
      object (Process)
    }
  ],
  "contacts": {
    string: {
      object (ContactDetails)
    },
    ...
  },
  "compliances": [
    {
      object (Compliance)
    }
  ],
  "parentDisplayName": string,
  "description": string,
  "exfiltration": {
    object (Exfiltration)
  },
  "iamBindings": [
    {
      object (IamBinding)
    }
  ],
  "nextSteps": string,
  "moduleName": string,
  "containers": [
    {
      object (Container)
    }
  ],
  "kubernetes": {
    object (Kubernetes)
  },
  "database": {
    object (Database)
  },
  "attackExposure": {
    object (AttackExposure)
  },
  "files": [
    {
      object (File)
    }
  ],
  "cloudDlpInspection": {
    object (CloudDlpInspection)
  },
  "cloudDlpDataProfile": {
    object (CloudDlpDataProfile)
  },
  "kernelRootkit": {
    object (KernelRootkit)
  },
  "orgPolicies": [
    {
      object (OrgPolicy)
    }
  ],
  "job": {
    object (Job)
  },
  "application": {
    object (Application)
  },
  "ipRules": {
    object (IpRules)
  },
  "backupDisasterRecovery": {
    object (BackupDisasterRecovery)
  },
  "securityPosture": {
    object (SecurityPosture)
  },
  "logEntries": [
    {
      object (LogEntry)
    }
  ],
  "loadBalancers": [
    {
      object (LoadBalancer)
    }
  ],
  "cloudArmor": {
    object (CloudArmor)
  },
  "notebook": {
    object (Notebook)
  },
  "toxicCombination": {
    object (ToxicCombination)
  },
  "groupMemberships": [
    {
      object (GroupMembership)
    }
  ],
  "disk": {
    object (Disk)
  },
  "dataAccessEvents": [
    {
      object (DataAccessEvent)
    }
  ],
  "dataFlowEvents": [
    {
      object (DataFlowEvent)
    }
  ],
  "networks": [
    {
      object (Network)
    }
  ],
  "dataRetentionDeletionEvents": [
    {
      object (DataRetentionDeletionEvent)
    }
  ]
}
Campos
name

string

El nombre de recurso relativo del hallazgo. Ejemplo: “organizations/{organization_id}/sources/{source_id}/findings/{findingId}”, “folders/{folder_id}/sources/{source_id}/findings/{findingId}”, “projects/{projectId}/sources/{source_id}/findings/{findingId}”.

parent

string

Es el nombre de recurso relativo de la fuente a la que pertenece el hallazgo. Consulta: https://cloud.google.com/apis/design/resource_names#relative_resource_name Este campo es inmutable después del tiempo de creación. Por ejemplo: "organizations/{organization_id}/sources/{source_id}"

resourceName

string

Para los resultados sobre recursos de Google Cloud, el nombre completo del recurso de Google Cloud al que se refiere el resultado. Consulta: https://cloud.google.com/apis/design/resource_names#full_resource_name Cuando el hallazgo es para un recurso que no es de Google Cloud, resourceName puede ser una cadena definida por un cliente o socio. Este campo es inmutable después de la creación.

state

enum (State)

Es el estado del hallazgo.

category

string

Es el grupo de taxonomía adicional dentro de los resultados de una fuente determinada. Este campo es inmutable después de la creación. Ejemplo: "XSS_FLASH_INJECTION"

externalUri

string

Es el URI que, si está disponible, apunta a una página web fuera de Security Command Center en la que se puede encontrar información adicional sobre el resultado. Se garantiza que este campo esté vacío o sea una URL con el formato correcto.

sourceProperties

map (key: string, value: value (Value format))

Propiedades específicas de la fuente. La fuente que escribe el hallazgo administra estas propiedades. Los nombres de clave en el mapa sourceProperties deben tener entre 1 y 255 caracteres, y deben comenzar con una letra y contener solo caracteres alfanuméricos o guiones bajos.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

securityMarks

object (SecurityMarks)

Solo salida. Marcas de seguridad especificadas por el usuario El usuario administra estas marcas por completo y provienen del recurso SecurityMarks que pertenece al hallazgo.

eventTime

string (Timestamp format)

Se refiere a la fecha y hora en que se detectó el resultado por primera vez. Si se actualiza un resultado existente, esta es la fecha y hora en que ocurrió la actualización. Por ejemplo, si el resultado representa un firewall abierto, esta propiedad captura la hora en que el detector cree que se abrió el firewall. El detector determina la precisión. Si el resultado se resuelve más adelante, esta hora refleja cuándo se resolvió. No se debe establecer en un valor superior a la marca de tiempo actual.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

createTime

string (Timestamp format)

La hora en que se creó el resultado en Security Command Center.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

severity

enum (Severity)

La gravedad del hallazgo. La fuente que escribe el hallazgo administra este campo.

canonicalName

string

Es el nombre canónico del resultado. Es "organizations/{organization_id}/sources/{source_id}/findings/{findingId}", "folders/{folder_id}/sources/{source_id}/findings/{findingId}" o "projects/{project_number}/sources/{source_id}/findings/{findingId}", según el ancestro de CRM más cercano del recurso asociado con el hallazgo.

mute

enum (Mute)

Indica el estado de silenciamiento de un hallazgo (silenciado, con sonido activado o sin definir). A diferencia de otros atributos de un hallazgo, un proveedor de hallazgos no debe establecer el valor de silenciamiento.

findingClass

enum (FindingClass)

Es la clase del resultado.

indicator

object (Indicator)

Representa lo que se conoce comúnmente como un indicador de compromiso (IoC) en la informática forense. Es un artefacto que se observa en una red o en un sistema operativo que, con alta confianza, indica una intrusión informática. Para obtener más información, consulta Indicador de compromiso.

vulnerability

object (Vulnerability)

Representa campos específicos de vulnerabilidad, como CVE y puntuaciones de CVSS. CVE significa “Common Vulnerabilities and Exposures” (https://cve.mitre.org/about/).

muteUpdateTime

string (Timestamp format)

Solo salida. La última vez que se silenció o dejó de silenciar este resultado.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

externalSystems

map (key: string, value: object (ExternalSystem))

Solo salida. Los campos de SIEM/SOAR de terceros dentro de SCC contienen información del sistema externo y campos de búsqueda del sistema externo.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

mitreAttack

object (MitreAttack)

Tácticas y técnicas de MITRE ATT&CK relacionadas con este hallazgo Consulta: https://attack.mitre.org

access

object (Access)

Accede a los detalles asociados con el hallazgo, como más información sobre el emisor, a qué método se accedió y desde dónde.

connections[]

object (Connection)

Contiene información sobre la conexión de IP asociada con el hallazgo.

muteInitiator

string

Registra información adicional sobre la operación de silenciamiento, por ejemplo, la configuración de silenciamiento que silenció el hallazgo y el usuario que lo hizo.

muteInfo

object (MuteInfo)

Solo salida. La información de silenciamiento sobre este resultado

processes[]

object (Process)

Representa los procesos del sistema operativo asociados con el hallazgo.

contacts

map (key: string, value: object (ContactDetails))

Solo salida. Mapa que contiene los puntos de contacto del hallazgo determinado. La clave representa el tipo de contacto, mientras que el valor contiene una lista de todos los contactos que pertenecen a él. Consulta https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories.

{
  "security": {
    "contacts": [
      {
        "email": "person1@company.com"
      },
      {
        "email": "person2@company.com"
      }
    ]
  }
}

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

compliances[]

object (Compliance)

Contiene información de cumplimiento de los estándares de seguridad asociados al hallazgo.

parentDisplayName

string

Solo salida. Es el nombre visible legible por humanos de la fuente de resultados, como "Detección de amenazas de eventos" o "Estadísticas del estado de seguridad".

description

string

Contiene más detalles sobre el hallazgo.

exfiltration

object (Exfiltration)

Representa las extracciones asociadas con el hallazgo.

iamBindings[]

object (IamBinding)

Representa las vinculaciones de IAM asociadas con el hallazgo.

nextSteps

string

Pasos para abordar el hallazgo

moduleName

string

Es el identificador único del módulo que generó el hallazgo. Ejemplo: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885

containers[]

object (Container)

Contenedores asociados con el hallazgo Este campo proporciona información para contenedores de Kubernetes y que no son de Kubernetes.

kubernetes

object (Kubernetes)

Recursos de Kubernetes asociados con el hallazgo

database

object (Database)

Base de datos asociada con el hallazgo.

attackExposure

object (AttackExposure)

Los resultados de una simulación de ruta de ataque relevantes para este hallazgo

files[]

object (File)

Es el archivo asociado al hallazgo.

cloudDlpInspection

object (CloudDlpInspection)

Los resultados de la inspección de Cloud Data Loss Prevention (Cloud DLP) asociados con el hallazgo

cloudDlpDataProfile

object (CloudDlpDataProfile)

Es el perfil de datos de Cloud DLP asociado con el resultado.

kernelRootkit

object (KernelRootkit)

Firma del rootkit de kernel.

orgPolicies[]

object (OrgPolicy)

Contiene información sobre las políticas de la organización asociadas con el hallazgo.

job

object (Job)

Es el trabajo asociado con el hallazgo.

application

object (Application)

Representa una aplicación asociada con el hallazgo.

ipRules

object (IpRules)

Son las reglas de IP asociadas con el resultado.

backupDisasterRecovery

object (BackupDisasterRecovery)

Campos relacionados con los resultados de Backup and DR.

securityPosture

object (SecurityPosture)

La postura de seguridad asociada con el hallazgo

logEntries[]

object (LogEntry)

Entradas de registro relevantes para el hallazgo

loadBalancers[]

object (LoadBalancer)

Los balanceadores de cargas asociados con el resultado

cloudArmor

object (CloudArmor)

Campos relacionados con los resultados de Cloud Armor.

notebook

object (Notebook)

Cuaderno asociado al hallazgo.

toxicCombination

object (ToxicCombination)

Contiene detalles sobre un grupo de problemas de seguridad que, cuando ocurren juntos, representan un riesgo mayor que cuando ocurren de forma independiente. Un grupo de estos problemas se conoce como combinación tóxica. No se puede actualizar este campo. Su valor se ignora en todas las solicitudes de actualización.

groupMemberships[]

object (GroupMembership)

Contiene detalles sobre los grupos de los que este hallazgo es miembro. Un grupo es una colección de conclusiones que se relacionan de alguna manera. No se puede actualizar este campo. Su valor se ignora en todas las solicitudes de actualización.

disk

object (Disk)

Es el disco asociado con el hallazgo.

dataAccessEvents[]

object (DataAccessEvent)

Eventos de acceso a los datos asociados con el hallazgo

dataFlowEvents[]

object (DataFlowEvent)

Eventos de flujo de datos asociados con el hallazgo

networks[]

object (Network)

Representa las redes de VPC a las que está conectado el recurso.

dataRetentionDeletionEvents[]

object (DataRetentionDeletionEvent)

Eventos de eliminación por retención de datos asociados con el hallazgo

Estado

Es el estado del hallazgo.

Enums
STATE_UNSPECIFIED Estado sin especificar.
ACTIVE El hallazgo requiere atención y aún no se solucionó.
INACTIVE El hallazgo se corrigió, se determinó que no es un problema o se abordó de alguna otra forma, y ya no está activo.

SecurityMarks

Marcas de seguridad especificadas por el usuario que se adjuntan al recurso superior de Security Command Center. Las marcas de seguridad se definen dentro de una organización de Security Command Center. Todos los usuarios que tengan los permisos adecuados en la organización pueden modificarlas y verlas.

Representación JSON
{
  "name": string,
  "marks": {
    string: string,
    ...
  },
  "canonicalName": string
}
Campos
name

string

Es el nombre de recurso relativo de SecurityMarks. Consulta: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Ejemplos: "organizations/{organization_id}/assets/{asset_id}/securityMarks" "organizations/{organization_id}/sources/{source_id}/findings/{findingId}/securityMarks".

marks

map (key: string, value: string)

Marcas de seguridad especificadas por el usuario mutables que pertenecen al recurso superior. Las restricciones son las siguientes:

  • Las claves y los valores no distinguen mayúsculas de minúsculas.
  • Las claves deben tener entre 1 y 256 caracteres (inclusive)
  • Las claves deben contener solo letras, números, guiones bajos o guiones.
  • Los valores tienen espacios en blanco iniciales y finales recortados, y los caracteres restantes deben tener entre 1 y 4,096 caracteres (inclusive).

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

canonicalName

string

Es el nombre canónico de las marcas. Ejemplos: "organizations/{organization_id}/assets/{asset_id}/securityMarks" "folders/{folder_id}/assets/{asset_id}/securityMarks" "projects/{project_number}/assets/{asset_id}/securityMarks" "organizations/{organization_id}/sources/{source_id}/findings/{findingId}/securityMarks" "folders/{folder_id}/sources/{source_id}/findings/{findingId}/securityMarks" "projects/{project_number}/sources/{source_id}/findings/{findingId}/securityMarks"

Gravedad

La gravedad del hallazgo.

Enums
SEVERITY_UNSPECIFIED Este valor se usa para los hallazgos cuando una fuente no escribe un valor de gravedad.
CRITICAL

Vulnerabilidad: Una vulnerabilidad crítica es fácilmente detectable por un actor externo, se puede aprovechar y permite ejecutar código arbitrario, robar datos y, de otra manera, obtener acceso y privilegios adicionales a recursos y cargas de trabajo en la nube. En los ejemplos, se incluyen los datos del usuario no protegidos de acceso público y el acceso SSH público con contraseñas débiles o nulas.

Amenaza: Indica una amenaza que puede acceder a los datos, modificarlos o borrarlos, o ejecutar código no autorizado en los recursos existentes.

HIGH

Vulnerabilidad: Una vulnerabilidad de alto riesgo se puede descubrir y explotar fácilmente en combinación con otras vulnerabilidades para obtener acceso directo y la capacidad de ejecutar código arbitrario, robar datos y, de otra manera, obtener acceso y privilegios adicionales a recursos y cargas de trabajo en la nube. Un ejemplo es una base de datos con contraseñas débiles o sin contraseñas a la que solo se puede acceder de forma interna. Un actor que tenga acceso a la red interna podría vulnerar fácilmente esta base de datos.

Amenaza: Indica una amenaza que puede crear recursos de procesamiento nuevos en un entorno, pero no puede acceder a los datos ni ejecutar código en recursos existentes.

MEDIUM

Vulnerabilidad: Un actor podría usar una vulnerabilidad de riesgo medio para obtener acceso a recursos o privilegios que le permitan, en última instancia (a través de varios pasos o un exploit complejo), obtener acceso y la capacidad de ejecutar código arbitrario o robar datos. Un ejemplo es una cuenta de servicio con acceso a más proyectos de los que debería tener. Si un actor obtiene acceso a la cuenta de servicio, podría usar ese acceso para manipular un proyecto para el que no se diseñó la cuenta de servicio.

Amenaza: Indica una amenaza que puede causar un impacto operativo, pero que no puede acceder a los datos ni ejecutar código no autorizado.

LOW

Vulnerabilidad: Una vulnerabilidad de bajo riesgo afecta la capacidad de una organización de seguridad de detectar vulnerabilidades o amenazas activas en su implementación, o evitan la causa raíz de los problemas de seguridad. Un ejemplo es la supervisión y los registros que están inhabilitados para la configuración y el acceso a los recursos.

Amenaza: Indica una amenaza que obtuvo acceso mínimo a un entorno, pero no puede acceder a los datos, ejecutar el código ni crear recursos.

Silenciar

Es el estado de silenciamiento en el que puede estar un hallazgo.

Enums
MUTE_UNSPECIFIED Sin especificar.
MUTED Se silenció el hallazgo.
UNMUTED Se dejó de silenciar el hallazgo.
UNDEFINED El hallazgo nunca se silenció ni se dejó de silenciar.

FindingClass

Representa el tipo de hallazgo.

Enums
FINDING_CLASS_UNSPECIFIED Clase de resultado no especificada.
THREAT Describe actividades maliciosas o no deseadas.
VULNERABILITY Describe una posible debilidad en el software que aumenta el riesgo de confidencialidad, integridad y disponibilidad.
MISCONFIGURATION Describe una posible debilidad en la configuración de recursos o activos de la nube que aumenta el riesgo.
OBSERVATION Describe una observación de seguridad con fines informativos.
SCC_ERROR Describe un error que impide algunas funciones de SCC.
POSTURE_VIOLATION Describe un posible riesgo de seguridad debido a un cambio en la postura de seguridad.
TOXIC_COMBINATION Describe un grupo de problemas de seguridad que, cuando ocurren juntos, representan un riesgo mayor que cuando ocurren de forma independiente. Un grupo de estos problemas se conoce como combinación tóxica.
SENSITIVE_DATA_RISK Describe un posible riesgo de seguridad para los recursos de datos que contienen datos sensibles.

Indicador

Representa lo que se conoce comúnmente como un indicador de compromiso (IoC) en la informática forense. Es un artefacto que se observa en una red o en un sistema operativo que, con alta confianza, indica una intrusión informática. Para obtener más información, consulta Indicador de compromiso.

Representación JSON
{
  "ipAddresses": [
    string
  ],
  "domains": [
    string
  ],
  "signatures": [
    {
      object (ProcessSignature)
    }
  ],
  "uris": [
    string
  ]
}
Campos
ipAddresses[]

string

Es la lista de direcciones IP asociadas con el hallazgo.

domains[]

string

Es la lista de dominios asociados con el hallazgo.

signatures[]

object (ProcessSignature)

Es la lista de firmas coincidentes que indican que el proceso determinado está presente en el entorno.

uris[]

string

Es la lista de URIs asociados a los resultados.

ProcessSignature

Indica qué firma coincidió con este proceso.

Representación JSON
{
  "signatureType": enum (SignatureType),

  // Union field signature can be only one of the following:
  "memoryHashSignature": {
    object (MemoryHashSignature)
  },
  "yaraRuleSignature": {
    object (YaraRuleSignature)
  }
  // End of list of possible types for union field signature.
}
Campos
signatureType

enum (SignatureType)

Describe el tipo de recurso asociado con la firma.

Campo de unión signature.

signature puede ser una de las siguientes opciones:

memoryHashSignature

object (MemoryHashSignature)

Firma que indica que se encontró una familia binaria coincidente.

yaraRuleSignature

object (YaraRuleSignature)

Firma que indica que se encontró una coincidencia con una regla de YARA.

MemoryHashSignature

Una firma que corresponde a los valores hash de la página de memoria.

Representación JSON
{
  "binaryFamily": string,
  "detections": [
    {
      object (Detection)
    }
  ]
}
Campos
binaryFamily

string

La familia binaria.

detections[]

object (Detection)

Es la lista de detecciones de hash de memoria que contribuyen a la coincidencia de la familia binaria.

Detección

Detección de hash de memoria que contribuye a la coincidencia de la familia binaria

Representación JSON
{
  "binary": string,
  "percentPagesMatched": number
}
Campos
binary

string

Es el nombre del binario asociado con la detección de la firma de hash de memoria.

percentPagesMatched

number

Es el porcentaje de hashes de páginas de memoria en la firma que coincidieron.

YaraRuleSignature

Una firma que corresponde a una regla de YARA.

Representación JSON
{
  "yaraRule": string
}
Campos
yaraRule

string

Es el nombre de la regla de YARA.

SignatureType

Son los posibles tipos de recursos que se pueden asociar con una firma.

Enums
SIGNATURE_TYPE_UNSPECIFIED Es el tipo de firma predeterminado.
SIGNATURE_TYPE_PROCESS Se usa para firmas relacionadas con procesos.
SIGNATURE_TYPE_FILE Se usa para firmas relacionadas con discos.

Vulnerabilidad

Se refiere a campos de vulnerabilidad comunes, p.ej., CVE, CVSS, CWE, etcétera.

Representación JSON
{
  "cve": {
    object (Cve)
  },
  "offendingPackage": {
    object (Package)
  },
  "fixedPackage": {
    object (Package)
  },
  "securityBulletin": {
    object (SecurityBulletin)
  }
}
Campos
cve

object (Cve)

CVE significa “Common Vulnerabilities and Exposures” (https://cve.mitre.org/about/).

offendingPackage

object (Package)

El paquete infractor es relevante para el hallazgo.

fixedPackage

object (Package)

El paquete corregido es relevante para el hallazgo.

securityBulletin

object (SecurityBulletin)

El boletín de seguridad es relevante para este hallazgo.

Cve

CVE significa “Common Vulnerabilities and Exposures”. Información del registro de CVE que describe esta vulnerabilidad.

Representación JSON
{
  "id": string,
  "references": [
    {
      object (Reference)
    }
  ],
  "cvssv3": {
    object (Cvssv3)
  },
  "upstreamFixAvailable": boolean,
  "impact": enum (RiskRating),
  "exploitationActivity": enum (ExploitationActivity),
  "observedInTheWild": boolean,
  "zeroDay": boolean,
  "exploitReleaseDate": string,
  "firstExploitationDate": string
}
Campos
id

string

Es el identificador único de la vulnerabilidad, p. ej., CVE-2021-34527.

references[]

object (Reference)

Información adicional sobre el CVE, p. ej., https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527

cvssv3

object (Cvssv3)

Describe el Common Vulnerability Scoring System especificado en https://www.first.org/cvss/v3.1/specification-document

upstreamFixAvailable

boolean

Indica si hay una solución upstream disponible para el CVE.

impact

enum (RiskRating)

El impacto potencial de la vulnerabilidad si se explotara.

exploitationActivity

enum (ExploitationActivity)

La actividad de explotación de la vulnerabilidad en el exterior.

observedInTheWild

boolean

Indica si la vulnerabilidad se observó en el exterior o no.

zeroDay

boolean

Indica si la vulnerabilidad era de día cero cuando se publicó el hallazgo.

exploitReleaseDate

string (Timestamp format)

Fecha en la que se lanzó el primer exploit o PoC disponible públicamente.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

firstExploitationDate

string (Timestamp format)

Es la fecha del primer exploit conocido.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Reference

Vínculos adicionales

Representación JSON
{
  "source": string,
  "uri": string
}
Campos
source

string

Es la fuente de la referencia, p. ej., NVD.

uri

string

Es el URI de la fuente mencionada, p.ej., https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.

Cvssv3

Common Vulnerability Scoring System versión 3

Representación JSON
{
  "baseScore": number,
  "attackVector": enum (AttackVector),
  "attackComplexity": enum (AttackComplexity),
  "privilegesRequired": enum (PrivilegesRequired),
  "userInteraction": enum (UserInteraction),
  "scope": enum (Scope),
  "confidentialityImpact": enum (Impact),
  "integrityImpact": enum (Impact),
  "availabilityImpact": enum (Impact)
}
Campos
baseScore

number

La puntuación base es una función de las puntuaciones de las métricas base.

attackVector

enum (AttackVector)

Métricas básicas: Representan las características intrínsecas de una vulnerabilidad que son constantes a lo largo del tiempo y en todos los entornos de usuario. Esta métrica refleja el contexto en el que es posible aprovecharse de una vulnerabilidad.

attackComplexity

enum (AttackComplexity)

Esta métrica describe las condiciones fuera del control del atacante que deben existir para aprovechar la vulnerabilidad.

privilegesRequired

enum (PrivilegesRequired)

Esta métrica describe el nivel de privilegios que debe tener un atacante antes de aprovechar con éxito la vulnerabilidad.

userInteraction

enum (UserInteraction)

Esta métrica captura el requisito de que un usuario humano, que no sea el atacante, participe en la vulneración exitosa del componente vulnerable.

scope

enum (Scope)

La métrica Alcance captura si una vulnerabilidad en un componente vulnerable afecta a los recursos en componentes más allá de su alcance de seguridad.

confidentialityImpact

enum (Impact)

Esta métrica mide el impacto en la confidencialidad de los recursos de información que administra un componente de software debido a una vulnerabilidad aprovechada con éxito.

integrityImpact

enum (Impact)

Esta métrica mide el impacto en la integridad de una vulnerabilidad explotada de forma correcta.

availabilityImpact

enum (Impact)

Esta métrica mide el impacto en la disponibilidad del componente afectado como resultado de una vulnerabilidad explotada con éxito.

AttackVector

Esta métrica refleja el contexto en el que es posible aprovecharse de una vulnerabilidad.

Enums
ATTACK_VECTOR_UNSPECIFIED El valor no es válido.
ATTACK_VECTOR_NETWORK El componente vulnerable está vinculado a la pila de red, y el conjunto de posibles atacantes se extiende más allá de las otras opciones que se enumeran a continuación, hasta toda Internet.
ATTACK_VECTOR_ADJACENT El componente vulnerable está vinculado a la pila de red, pero el ataque se limita a nivel del protocolo a una topología lógicamente adyacente.
ATTACK_VECTOR_LOCAL El componente vulnerable no está vinculado a la pila de red, y la ruta de acceso del atacante es a través de capacidades de lectura, escritura y ejecución.
ATTACK_VECTOR_PHYSICAL El atacante debe tocar o manipular físicamente el componente vulnerable.

AttackComplexity

Esta métrica describe las condiciones fuera del control del atacante que deben existir para aprovechar la vulnerabilidad.

Enums
ATTACK_COMPLEXITY_UNSPECIFIED El valor no es válido.
ATTACK_COMPLEXITY_LOW No existen condiciones de acceso especializadas ni circunstancias atenuantes. Un atacante puede esperar un éxito repetible cuando ataca el componente vulnerable.
ATTACK_COMPLEXITY_HIGH El éxito de un ataque depende de condiciones que están fuera de su control. Es decir, un ataque exitoso no se puede realizar a voluntad, sino que requiere que el atacante invierta una cantidad medible de esfuerzo en la preparación o ejecución contra el componente vulnerable antes de que se pueda esperar un ataque exitoso.

PrivilegesRequired

Esta métrica describe el nivel de privilegios que debe tener un atacante antes de aprovechar con éxito la vulnerabilidad.

Enums
PRIVILEGES_REQUIRED_UNSPECIFIED El valor no es válido.
PRIVILEGES_REQUIRED_NONE El atacante no tiene autorización antes del ataque y, por lo tanto, no requiere acceso a la configuración ni a los archivos del sistema vulnerable para llevar a cabo un ataque.
PRIVILEGES_REQUIRED_LOW El atacante requiere privilegios que proporcionan capacidades básicas del usuario que, por lo general, solo pueden afectar la configuración y los archivos que pertenecen a un usuario. Como alternativa, un atacante con privilegios bajos puede acceder solo a recursos no sensibles.
PRIVILEGES_REQUIRED_HIGH El atacante requiere privilegios que proporcionen un control significativo (p.ej., administrativo) sobre el componente vulnerable, lo que permite el acceso a la configuración y los archivos de todo el componente.

UserInteraction

Esta métrica captura el requisito de que un usuario humano, que no sea el atacante, participe en la vulneración exitosa del componente vulnerable.

Enums
USER_INTERACTION_UNSPECIFIED El valor no es válido.
USER_INTERACTION_NONE El sistema vulnerable se puede aprovechar sin la interacción de ningún usuario.
USER_INTERACTION_REQUIRED Para que se pueda aprovechar esta vulnerabilidad, el usuario debe realizar alguna acción.

Alcance

La métrica Alcance captura si una vulnerabilidad en un componente vulnerable afecta a los recursos en componentes más allá de su alcance de seguridad.

Enums
SCOPE_UNSPECIFIED El valor no es válido.
SCOPE_UNCHANGED Una vulnerabilidad explotada solo puede afectar a los recursos que administra la misma autoridad de seguridad.
SCOPE_CHANGED Una vulnerabilidad explotada puede afectar recursos más allá del alcance de seguridad que administra la autoridad de seguridad del componente vulnerable.

Impacto

Las métricas de impacto capturan los efectos de una vulnerabilidad explotada con éxito en el componente que sufre el peor resultado que está más directamente y de manera más predecible asociado con el ataque.

Enums
IMPACT_UNSPECIFIED El valor no es válido.
IMPACT_HIGH Alto impacto
IMPACT_LOW Impacto bajo.
IMPACT_NONE No hay impacto.

RiskRating

Los valores posibles del impacto de la vulnerabilidad si se explotara.

Enums
RISK_RATING_UNSPECIFIED El valor no es válido o está vacío.
LOW El aprovechamiento tendría poco o ningún impacto en la seguridad.
MEDIUM El aprovechamiento permitiría a los atacantes realizar actividades o tener un impacto directo, pero requeriría pasos adicionales.
HIGH El aprovechamiento permitiría a los atacantes tener un impacto directo notable sin tener que superar ningún factor mitigante importante.
CRITICAL El aprovechamiento socavaría fundamentalmente la seguridad de los sistemas afectados y permitiría que los actores realicen ataques significativos con el mínimo esfuerzo, con pocos o sin factores de mitigación que superar.

ExploitationActivity

Los valores posibles de la actividad de explotación de la vulnerabilidad en el exterior.

Enums
EXPLOITATION_ACTIVITY_UNSPECIFIED El valor no es válido o está vacío.
WIDE Se informó o confirmó que el aprovechamiento se produce de forma generalizada.
CONFIRMED Actividades de explotación informadas o confirmadas limitadas.
AVAILABLE El exploit está disponible públicamente.
ANTICIPATED No hay actividad de explotación conocida, pero tiene un alto potencial de explotación.
NO_KNOWN No hay actividad de explotación conocida.

Paquete

Un paquete es una definición genérica de un paquete.

Representación JSON
{
  "packageName": string,
  "cpeUri": string,
  "packageType": string,
  "packageVersion": string
}
Campos
packageName

string

Es el nombre del paquete en el que se detectó la vulnerabilidad.

cpeUri

string

El URI de CPE en el que se detectó la vulnerabilidad

packageType

string

Es el tipo de paquete, por ejemplo, os, maven o go.

packageVersion

string

Es la versión del paquete.

SecurityBulletin

SecurityBulletin son notificaciones de vulnerabilidades de productos de Google.

Representación JSON
{
  "bulletinId": string,
  "submissionTime": string,
  "suggestedUpgradeVersion": string
}
Campos
bulletinId

string

Es el ID del boletín correspondiente a la vulnerabilidad.

submissionTime

string (Timestamp format)

Hora de envío de este boletín de seguridad

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

suggestedUpgradeVersion

string

Representa la versión a la que se debe actualizar el clúster que recibe esta notificación, según su versión actual. Por ejemplo, 1.15.0

ExternalSystem

Representación de campos de SIEM/SOAR de terceros en SCC.

Representación JSON
{
  "name": string,
  "assignees": [
    string
  ],
  "externalUid": string,
  "status": string,
  "externalSystemUpdateTime": string,
  "caseUri": string,
  "casePriority": string,
  "caseSla": string,
  "caseCreateTime": string,
  "caseCloseTime": string,
  "ticketInfo": {
    object (TicketInfo)
  }
}
Campos
name

string

Es el nombre completo del recurso del sistema externo, por ejemplo: "organizations/1234/sources/5678/findings/123456/externalSystems/jira", "folders/1234/sources/5678/findings/123456/externalSystems/jira", "projects/1234/sources/5678/findings/123456/externalSystems/jira".

assignees[]

string

Hace referencia a los usuarios asignados principales, secundarios, etcétera, en el sistema externo.

externalUid

string

Es el identificador que se usa para hacer un seguimiento del caso correspondiente del hallazgo en el sistema externo.

status

string

Es el estado más reciente del caso correspondiente al hallazgo, según lo informa el sistema externo.

externalSystemUpdateTime

string (Timestamp format)

Es la hora en la que se actualizó el caso por última vez, según lo informa el sistema externo.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

caseUri

string

Es el vínculo al caso correspondiente del hallazgo en el sistema externo.

casePriority

string

Es la prioridad del caso correspondiente del hallazgo en el sistema externo.

caseSla

string (Timestamp format)

El ANS del caso correspondiente del hallazgo en el sistema externo

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

caseCreateTime

string (Timestamp format)

Es la hora en la que se creó el caso, según lo informa el sistema externo.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

caseCloseTime

string (Timestamp format)

Es la hora en que se cerró el caso, según lo informó el sistema externo.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

ticketInfo

object (TicketInfo)

Información sobre el ticket, si corresponde, que se usa para hacer un seguimiento de la resolución del problema que identifica este hallazgo.

TicketInfo

Información sobre el ticket, si corresponde, que se usa para hacer un seguimiento de la resolución del problema que identifica este hallazgo.

Representación JSON
{
  "id": string,
  "assignee": string,
  "description": string,
  "uri": string,
  "status": string,
  "updateTime": string
}
Campos
id

string

Es el identificador del ticket en el sistema de tickets.

assignee

string

Es la persona a la que se asignó el ticket en el sistema de tickets.

description

string

Es la descripción del ticket en el sistema de tickets.

uri

string

Es el vínculo al ticket en el sistema de tickets.

status

string

Es el estado más reciente del ticket, según lo informa el sistema de tickets.

updateTime

string (Timestamp format)

Es la hora en la que se actualizó el ticket por última vez, según lo informa el sistema de tickets.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

MitreAttack

Tácticas y técnicas de MITRE ATT&CK relacionadas con este hallazgo Consulta: https://attack.mitre.org

Representación JSON
{
  "primaryTactic": enum (Tactic),
  "primaryTechniques": [
    enum (Technique)
  ],
  "additionalTactics": [
    enum (Tactic)
  ],
  "additionalTechniques": [
    enum (Technique)
  ],
  "version": string
}
Campos
primaryTactic

enum (Tactic)

La táctica de MITRE ATT&CK que más se representa con este hallazgo, si corresponde

primaryTechniques[]

enum (Technique)

La técnica de MITRE ATT&CK que más se representa con este hallazgo, si corresponde. primaryTechniques es un campo repetido porque hay varios niveles de técnicas de MITRE ATT&CK. Si la técnica que mejor representa este hallazgo es una subtécnica (p.ej., SCANNING_IP_BLOCKS), se enumerarán tanto la subtécnica como sus técnicas superiores (p.ej., SCANNING_IP_BLOCKS, ACTIVE_SCANNING).

additionalTactics[]

enum (Tactic)

Tácticas adicionales de MITRE ATT&CK relacionadas con este hallazgo, si las hay

additionalTechniques[]

enum (Technique)

Técnicas adicionales de MITRE ATT&CK relacionadas con este hallazgo, si las hay, junto con cualquiera de sus respectivas técnicas superiores.

version

string

Es la versión de MITRE ATT&CK a la que hacen referencia los campos anteriores. P.ej., “8”.

Táctica

Tácticas de MITRE ATT&CK a las que se puede hacer referencia en los hallazgos de SCC. Consulta: https://attack.mitre.org/tactics/enterprise/

Enums
TACTIC_UNSPECIFIED Indica que no se especificó el valor.
RECONNAISSANCE TA0043
RESOURCE_DEVELOPMENT TA0042
INITIAL_ACCESS TA0001
EXECUTION TA0002
PERSISTENCE TA0003
PRIVILEGE_ESCALATION TA0004
DEFENSE_EVASION TA0005
CREDENTIAL_ACCESS TA0006
DISCOVERY TA0007
LATERAL_MOVEMENT TA0008
COLLECTION TA0009
COMMAND_AND_CONTROL TA0011
EXFILTRATION TA0010
IMPACT TA0040

Técnica

Técnicas de MITRE ATT&CK a las que se puede hacer referencia en los hallazgos de SCC. Consulta: https://attack.mitre.org/techniques/enterprise/

Enums
TECHNIQUE_UNSPECIFIED Indica que no se especificó el valor.
AUTOMATED_EXFILTRATION T1020
MASQUERADING T1036
MATCH_LEGITIMATE_NAME_OR_LOCATION T1036.005
BOOT_OR_LOGON_INITIALIZATION_SCRIPTS T1037
STARTUP_ITEMS T1037.005
NETWORK_SERVICE_DISCOVERY T1046
PROCESS_DISCOVERY T1057
COMMAND_AND_SCRIPTING_INTERPRETER T1059
UNIX_SHELL T1059.004
PYTHON T1059.006
EXPLOITATION_FOR_PRIVILEGE_ESCALATION T1068
PERMISSION_GROUPS_DISCOVERY T1069
CLOUD_GROUPS T1069.003
INDICATOR_REMOVAL_FILE_DELETION T1070.004
APPLICATION_LAYER_PROTOCOL T1071
DNS T1071.004
SOFTWARE_DEPLOYMENT_TOOLS T1072
VALID_ACCOUNTS T1078
DEFAULT_ACCOUNTS T1078.001
LOCAL_ACCOUNTS T1078.003
CLOUD_ACCOUNTS T1078.004
PROXY T1090
EXTERNAL_PROXY T1090.002
MULTI_HOP_PROXY T1090.003
ACCOUNT_MANIPULATION T1098
ADDITIONAL_CLOUD_CREDENTIALS T1098.001
ADDITIONAL_CLOUD_ROLES T1098.003
SSH_AUTHORIZED_KEYS T1098.004
ADDITIONAL_CONTAINER_CLUSTER_ROLES T1098.006
INGRESS_TOOL_TRANSFER T1105
NATIVE_API T1106
BRUTE_FORCE T1110
SHARED_MODULES T1129
ACCESS_TOKEN_MANIPULATION T1134
TOKEN_IMPERSONATION_OR_THEFT T1134.001
EXPLOIT_PUBLIC_FACING_APPLICATION T1190
USER_EXECUTION T1204
DOMAIN_POLICY_MODIFICATION T1484
DATA_DESTRUCTION T1485
SERVICE_STOP T1489
INHIBIT_SYSTEM_RECOVERY T1490
RESOURCE_HIJACKING T1496
NETWORK_DENIAL_OF_SERVICE T1498
CLOUD_SERVICE_DISCOVERY T1526
STEAL_APPLICATION_ACCESS_TOKEN T1528
ACCOUNT_ACCESS_REMOVAL T1531
CREATE_OR_MODIFY_SYSTEM_PROCESS T1543
EVENT_TRIGGERED_EXECUTION T1546
ABUSE_ELEVATION_CONTROL_MECHANISM T1548
UNSECURED_CREDENTIALS T1552
MODIFY_AUTHENTICATION_PROCESS T1556
IMPAIR_DEFENSES T1562
DISABLE_OR_MODIFY_TOOLS T1562.001
EXFILTRATION_OVER_WEB_SERVICE T1567
EXFILTRATION_TO_CLOUD_STORAGE T1567.002
DYNAMIC_RESOLUTION T1568
LATERAL_TOOL_TRANSFER T1570
MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE T1578
CREATE_SNAPSHOT T1578.001
CLOUD_INFRASTRUCTURE_DISCOVERY T1580
OBTAIN_CAPABILITIES T1588
ACTIVE_SCANNING T1595
SCANNING_IP_BLOCKS T1595.001
CONTAINER_ADMINISTRATION_COMMAND T1609
DEPLOY_CONTAINER T1610
ESCAPE_TO_HOST T1611
CONTAINER_AND_RESOURCE_DISCOVERY T1613
STEAL_OR_FORGE_AUTHENTICATION_CERTIFICATES T1649

Acceso

Representa un evento de acceso.

Representación JSON
{
  "principalEmail": string,
  "callerIp": string,
  "callerIpGeo": {
    object (Geolocation)
  },
  "userAgentFamily": string,
  "userAgent": string,
  "serviceName": string,
  "methodName": string,
  "principalSubject": string,
  "serviceAccountKeyName": string,
  "serviceAccountDelegationInfo": [
    {
      object (ServiceAccountDelegationInfo)
    }
  ],
  "userName": string
}
Campos
principalEmail

string

Correo electrónico asociado, como "foo@google.com".

La dirección de correo electrónico del usuario autenticado o de una cuenta de servicio que actúa en nombre de un principal externo que realiza la solicitud. En el caso de los llamadores de identidad de terceros, se propaga el campo principalSubject en lugar de este. Por motivos de privacidad, a veces se oculta la dirección de correo electrónico principal. Para obtener más información, consulta Identidades de los emisores en los registros de auditoría.

callerIp

string

Es la dirección IP del llamador, como “1.1.1.1”.

callerIpGeo

object (Geolocation)

La ubicación geográfica de la IP del emisor, que identifica de dónde proviene la llamada.

userAgentFamily

string

Es el tipo de usuario-agente asociado con el hallazgo. Por ejemplo, una shell de sistema operativo o una aplicación integrada o independiente.

userAgent

string

Es la cadena de usuario-agente del llamador asociada con el hallazgo.

serviceName

string

Es el servicio de API al que la cuenta de servicio realizó una llamada, p. ej., "iam.googleapis.com".

methodName

string

Es el método al que llamó la cuenta de servicio, p.ej., "SetIamPolicy".

principalSubject

string

Es una cadena que representa el principalSubject asociado con la identidad. A diferencia de principalEmail, principalSubject admite principales que no están asociados con direcciones de correo electrónico, como los principales de terceros. Para la mayoría de las identidades, el formato es principal://iam.googleapis.com/{identity pool name}/subject/{subject}. Algunas identidades de GKE, como GKE_WORKLOAD, FREEFORM y GKE_HUB_WORKLOAD, aún usan el formato heredado serviceAccount:{identity pool name}[{subject}].

serviceAccountKeyName

string

Es el nombre de la clave de la cuenta de servicio que se usó para crear o intercambiar credenciales cuando se autenticó la cuenta de servicio que realizó la solicitud. Este es un nombre de recurso completo de URI sin esquema. Por ejemplo:

"//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}".

serviceAccountDelegationInfo[]

object (ServiceAccountDelegationInfo)

El historial de delegación de identidad de una cuenta de servicio autenticada que realizó la solicitud El objeto serviceAccountDelegationInfo[] contiene información sobre las autoridades reales que intentan acceder a los recursos de Google Cloud mediante la delegación en una cuenta de servicio. Cuando hay varias autoridades, se garantiza que se ordenen según el orden original de los eventos de delegación de identidad.

userName

string

Es una cadena que representa un nombre de usuario. El nombre de usuario proporcionado depende del tipo de hallazgo y es probable que no sea un principal de IAM. Por ejemplo, puede ser un nombre de usuario del sistema si el hallazgo se relaciona con una máquina virtual, o bien un nombre de usuario de acceso a la aplicación.

Ubicación geográfica

Representa una ubicación geográfica para un acceso determinado.

Representación JSON
{
  "regionCode": string
}
Campos
regionCode

string

Un CLDR

ServiceAccountDelegationInfo

Historial de delegación de identidad de una cuenta de servicio autenticada

Representación JSON
{
  "principalEmail": string,
  "principalSubject": string
}
Campos
principalEmail

string

La dirección de correo electrónico de una Cuenta de Google.

principalSubject

string

Es una cadena que representa el principalSubject asociado con la identidad. En comparación con principalEmail, admite principales que no están asociados con direcciones de correo electrónico, como principales de terceros. Para la mayoría de las identidades, el formato será principal://iam.googleapis.com/{identity pool name}/subjects/{subject}, excepto para algunas identidades de GKE (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) que aún tienen el formato heredado serviceAccount:{identity pool name}[{subject}].

Conexión

Contiene información sobre la conexión de IP asociada con el hallazgo.

Representación JSON
{
  "destinationIp": string,
  "destinationPort": integer,
  "sourceIp": string,
  "sourcePort": integer,
  "protocol": enum (Protocol)
}
Campos
destinationIp

string

Dirección IP de destino. No está presente en los sockets que están escuchando y no están conectados.

destinationPort

integer

Es el puerto de destino. No está presente en los sockets que están escuchando y no están conectados.

sourceIp

string

Dirección IP de origen.

sourcePort

integer

Es el puerto de origen.

protocol

enum (Protocol)

Número de protocolo de Internet de la IANA, como TCP(6) y UDP(17).

Protocolo

Número de protocolo de Internet de la IANA, como TCP(6) y UDP(17).

Enums
PROTOCOL_UNSPECIFIED Protocolo no especificado (no HOPOPT).
ICMP Protocolo de mensajes de control de Internet.
TCP Protocolo de control de transmisión.
UDP Protocolo de datagramas de usuario.
GRE Encapsulamiento de enrutamiento genérico.
ESP Carga útil de seguridad de encapsulación

MuteInfo

Silenciar la información sobre el hallazgo, incluida la información sobre si tiene un silenciamiento estático o reglas de silenciamiento dinámicas coincidentes

Representación JSON
{
  "staticMute": {
    object (StaticMute)
  },
  "dynamicMuteRecords": [
    {
      object (DynamicMuteRecord)
    }
  ]
}
Campos
staticMute

object (StaticMute)

Si se establece, se aplica el silenciamiento estático a este hallazgo. Los silenciamientos estáticos anulan los dinámicos. Si no se establece, no hay silenciamiento estático.

dynamicMuteRecords[]

object (DynamicMuteRecord)

Es la lista de reglas de silenciamiento dinámico que coinciden actualmente con el hallazgo.

StaticMute

Información sobre el estado de silencio estático. Un estado de silenciamiento estático anula cualquier regla de silenciamiento dinámico que se aplique a este resultado. El estado de silenciamiento estático se puede establecer mediante una regla de silenciamiento estático o silenciando el hallazgo directamente.

Representación JSON
{
  "state": enum (Mute),
  "applyTime": string
}
Campos
state

enum (Mute)

Es el estado de silenciamiento estático. Si el valor es MUTED o UNMUTED, el estado de silenciamiento general del hallazgo tendrá el mismo valor.

applyTime

string (Timestamp format)

Cuándo se aplicó el silenciamiento estático

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

DynamicMuteRecord

Es el registro de una regla de silenciamiento dinámico que coincide con el resultado.

Representación JSON
{
  "muteConfig": string,
  "matchTime": string
}
Campos
muteConfig

string

Es el nombre de recurso relativo de la regla de silenciamiento, representada por una configuración de silenciamiento, que creó este registro, por ejemplo, organizations/123/muteConfigs/mymuteconfig o organizations/123/locations/global/muteConfigs/mymuteconfig.

matchTime

string (Timestamp format)

Indica cuándo la regla de silenciamiento dinámico coincidió por primera vez con el resultado.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Proceso

Representa un proceso del sistema operativo.

Representación JSON
{
  "name": string,
  "binary": {
    object (File)
  },
  "libraries": [
    {
      object (File)
    }
  ],
  "script": {
    object (File)
  },
  "args": [
    string
  ],
  "argumentsTruncated": boolean,
  "envVariables": [
    {
      object (EnvironmentVariable)
    }
  ],
  "envVariablesTruncated": boolean,
  "pid": string,
  "parentPid": string
}
Campos
name

string

Es el nombre del proceso, como se muestra en utilidades como top y ps. Se puede acceder a este nombre a través de /proc/[pid]/comm y cambiarlo con prctl(PR_SET_NAME).

binary

object (File)

Información del archivo del ejecutable del proceso.

libraries[]

object (File)

Información del archivo para las bibliotecas cargadas por el proceso.

script

object (File)

Cuando el proceso representa la invocación de una secuencia de comandos, binary proporciona información sobre el intérprete, mientras que script proporciona información sobre el archivo de secuencia de comandos proporcionado al intérprete.

args[]

string

Procesa los argumentos como cadenas codificadas en JSON.

argumentsTruncated

boolean

Es verdadero si args está incompleto.

envVariables[]

object (EnvironmentVariable)

Procesa las variables de entorno.

envVariablesTruncated

boolean

Es verdadero si envVariables está incompleto.

pid

string (int64 format)

El ID del proceso.

parentPid

string (int64 format)

El ID del proceso superior.

Archivo

Información de archivo sobre el objeto binario o la biblioteca relacionados que usa un ejecutable, o la secuencia de comandos que usa un intérprete de secuencias de comandos

Representación JSON
{
  "path": string,
  "size": string,
  "sha256": string,
  "hashedSize": string,
  "partiallyHashed": boolean,
  "contents": string,
  "diskPath": {
    object (DiskPath)
  }
}
Campos
path

string

Es la ruta de acceso absoluta del archivo como una cadena codificada en JSON.

size

string (int64 format)

Es el tamaño del archivo en bytes.

sha256

string

Es el hash SHA256 de los primeros hashedSize bytes del archivo codificados como una cadena hexadecimal. Si hashedSize = size, sha256 representa el hash SHA256 de todo el archivo.

hashedSize

string (int64 format)

Es la longitud en bytes del prefijo del archivo que se hash. Si hashedSize == size, los valores hash informados representan todo el archivo.

partiallyHashed

boolean

Es verdadero cuando el hash solo cubre un prefijo del archivo.

contents

string

Es el prefijo del contenido del archivo como una cadena codificada en JSON.

diskPath

object (DiskPath)

Es la ruta de acceso del archivo en términos de los identificadores de disco o partición subyacentes.

DiskPath

Es la ruta de acceso del archivo en términos de los identificadores subyacentes de disco o partición.

Representación JSON
{
  "partitionUuid": string,
  "relativePath": string
}
Campos
partitionUuid

string

UUID de la partición (formato https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid)

relativePath

string

Es la ruta de acceso relativa del archivo en la partición como una cadena codificada en JSON. Ejemplo: /home/user1/executable_file.sh

EnvironmentVariable

Es un par nombre-valor que representa una variable de entorno que se usa en un proceso del sistema operativo.

Representación JSON
{
  "name": string,
  "val": string
}
Campos
name

string

Es el nombre de la variable de entorno como una cadena codificada en JSON.

val

string

Es el valor de la variable de entorno como una cadena codificada en JSON.

ContactDetails

Detalles sobre contactos específicos

Representación JSON
{
  "contacts": [
    {
      object (Contact)
    }
  ]
}
Campos
contacts[]

object (Contact)

Una lista de contactos

Contacto

Es la dirección de correo electrónico de un contacto.

Representación JSON
{
  "email": string
}
Campos
email

string

Una dirección de correo electrónico. Por ejemplo, "person123@company.com".

Cumplimiento

Contiene información de cumplimiento sobre un estándar de seguridad que indica que no se cumplieron las recomendaciones.

Representación JSON
{
  "standard": string,
  "version": string,
  "ids": [
    string
  ]
}
Campos
standard

string

Estándares o comparativas de cumplimiento de toda la industria, como CIS, PCI y OWASP

version

string

Es la versión del estándar o de la comparativa, por ejemplo, 1.1.

ids[]

string

Políticas dentro del estándar o de la comparativa, por ejemplo, A.12.4.1

Robo de datos

La extracción representa un intento de extracción de datos de una o más fuentes a uno o más destinos. El atributo sources enumera las fuentes de los datos extraídos. El atributo targets enumera los destinos a los que se copiaron los datos.

Representación JSON
{
  "sources": [
    {
      object (ExfilResource)
    }
  ],
  "targets": [
    {
      object (ExfilResource)
    }
  ],
  "totalExfiltratedBytes": string
}
Campos
sources[]

object (ExfilResource)

Si hay varias fuentes, los datos se consideran "unidos" entre ellas. Por ejemplo, BigQuery puede unir varias tablas, y cada una se consideraría una fuente.

targets[]

object (ExfilResource)

Si hay varios destinos, cada uno recibirá una copia completa de los datos de origen "unidos".

totalExfiltratedBytes

string (int64 format)

Es el total de bytes robados procesados para toda la tarea.

ExfilResource

Es el recurso desde el que se exfiltraron los datos o al que se exfiltraron.

Representación JSON
{
  "name": string,
  "components": [
    string
  ]
}
Campos
name

string

El nombre completo del recurso.

components[]

string

Subcomponentes del activo que se extrajo, como los URIs que se usaron durante la extracción, los nombres de las tablas, las bases de datos y los nombres de archivo Por ejemplo, es posible que se hayan extraído varias tablas de la misma instancia de Cloud SQL o varios archivos del mismo bucket de Cloud Storage.

IamBinding

Representa una vinculación de IAM en particular, que captura la adición, la eliminación o el estado del rol de un miembro.

Representación JSON
{
  "action": enum (Action),
  "role": string,
  "member": string
}
Campos
action

enum (Action)

Es la acción que se realizó en una vinculación.

role

string

Es el rol que se asigna a "members". Por ejemplo, "roles/viewer", "roles/editor" o "roles/owner".

member

string

Una sola identidad que solicita acceso a un recurso de Cloud Platform, por ejemplo, "foo@google.com".

Acción

Es el tipo de acción que se realiza en una vinculación en una política.

Enums
ACTION_UNSPECIFIED Sin especificar.
ADD Se agregó una vinculación.
REMOVE Eliminación de una vinculación

Contenedor

Es el contenedor asociado con el hallazgo.

Representación JSON
{
  "name": string,
  "uri": string,
  "imageId": string,
  "labels": [
    {
      object (Label)
    }
  ],
  "createTime": string
}
Campos
name

string

Es el nombre del contenedor.

uri

string

Es el URI de la imagen del contenedor que se proporciona cuando se configura un pod o un contenedor. Esta cadena puede identificar una versión de imagen de contenedor con etiquetas mutables.

imageId

string

ID de imagen de contenedor opcional, si el entorno de ejecución del contenedor lo proporciona. Identifica de forma inequívoca la imagen de contenedor que se inicia con un resumen de imagen de contenedor.

labels[]

object (Label)

Etiquetas de contenedores, como las proporciona el entorno de ejecución del contenedor

createTime

string (Timestamp format)

Es la hora en la que se creó el contenedor.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Etiqueta

Representa una etiqueta de nombre-valor genérica. Una etiqueta tiene campos de nombre y valor separados para admitir el filtrado con la función contains(). Para obtener más información, consulta Filtrado en campos de tipo de array.

Representación JSON
{
  "name": string,
  "value": string
}
Campos
name

string

Es el nombre de la etiqueta.

value

string

Es el valor que corresponde al nombre de la etiqueta.

Kubernetes

Atributos relacionados con Kubernetes.

Representación JSON
{
  "pods": [
    {
      object (Pod)
    }
  ],
  "nodes": [
    {
      object (Node)
    }
  ],
  "nodePools": [
    {
      object (NodePool)
    }
  ],
  "roles": [
    {
      object (Role)
    }
  ],
  "bindings": [
    {
      object (Binding)
    }
  ],
  "accessReviews": [
    {
      object (AccessReview)
    }
  ],
  "objects": [
    {
      object (Object)
    }
  ]
}
Campos
pods[]

object (Pod)

Pods de Kubernetes asociados con el hallazgo Este campo contiene registros de Pod para cada contenedor que pertenece a un Pod.

nodes[]

object (Node)

Proporciona información del nodo de Kubernetes.

nodePools[]

object (NodePool)

Grupos de nodos de GKE asociados con el hallazgo Este campo contiene información del grupo de nodos de cada nodo, cuando está disponible.

roles[]

object (Role)

Proporciona información sobre los roles de Kubernetes para los hallazgos que involucran roles o ClusterRoles.

bindings[]

object (Binding)

Proporciona información de vinculación de roles de Kubernetes para los hallazgos que involucran RoleBindings o ClusterRoleBindings.

accessReviews[]

object (AccessReview)

Proporciona información sobre las revisiones de acceso de Kubernetes (verificaciones de privilegios) relevantes para el hallazgo.

objects[]

object (Object)

Objetos de Kubernetes relacionados con el hallazgo

Pod

Un Pod de Kubernetes

Representación JSON
{
  "ns": string,
  "name": string,
  "labels": [
    {
      object (Label)
    }
  ],
  "containers": [
    {
      object (Container)
    }
  ]
}
Campos
ns

string

Es el espacio de nombres del Pod de Kubernetes.

name

string

Es el nombre del pod de Kubernetes.

labels[]

object (Label)

Etiquetas de Pod En el caso de los contenedores de Kubernetes, se aplican al contenedor.

containers[]

object (Container)

Contenedores de pods asociados con este resultado, si corresponde

Nodo

Nodos de Kubernetes asociados con el hallazgo

Representación JSON
{
  "name": string
}
Campos
name

string

Nombre de recurso completo de la VM de Compute Engine que ejecuta el nodo del clúster.

Grupo de nodos

Proporciona información del grupo de nodos de GKE.

Representación JSON
{
  "name": string,
  "nodes": [
    {
      object (Node)
    }
  ]
}
Campos
name

string

Es el nombre del grupo de nodos de Kubernetes.

nodes[]

object (Node)

Nodos asociados con el hallazgo.

Rol

Rol o ClusterRole de Kubernetes.

Representación JSON
{
  "kind": enum (Kind),
  "ns": string,
  "name": string
}
Campos
kind

enum (Kind)

Tipo de rol.

ns

string

Es el espacio de nombres del rol.

name

string

Nombre del rol.

Tipo

Tipos de roles de Kubernetes.

Enums
KIND_UNSPECIFIED No se especificó el tipo de rol.
ROLE Rol de Kubernetes.
CLUSTER_ROLE ClusterRole de Kubernetes.

Vinculación

Representa un objeto RoleBinding o ClusterRoleBinding de Kubernetes.

Representación JSON
{
  "ns": string,
  "name": string,
  "role": {
    object (Role)
  },
  "subjects": [
    {
      object (Subject)
    }
  ]
}
Campos
ns

string

Es el espacio de nombres de la vinculación.

name

string

Es el nombre de la vinculación.

role

object (Role)

El Role o ClusterRole al que hace referencia la vinculación.

subjects[]

object (Subject)

Representa uno o más sujetos vinculados al rol. No siempre está disponible para las solicitudes PATCH.

Asunto

Representa un sujeto de Kubernetes.

Representación JSON
{
  "kind": enum (AuthType),
  "ns": string,
  "name": string
}
Campos
kind

enum (AuthType)

Es el tipo de autenticación del sujeto.

ns

string

Es el espacio de nombres del asunto.

name

string

Es el nombre del asunto.

AuthType

Son los tipos de autenticación que se pueden usar para el campo kind del sujeto.

Enums
AUTH_TYPE_UNSPECIFIED No se especifica la autenticación.
USER Usuario con certificado válido
SERVICEACCOUNT Usuarios administrados por la API de Kubernetes con credenciales almacenadas como secretos.
GROUP Es la colección de usuarios.

AccessReview

Transmite información sobre una revisión de acceso de Kubernetes (como la que muestra un comando kubectl auth can-i) que estuvo involucrada en un hallazgo.

Representación JSON
{
  "group": string,
  "ns": string,
  "name": string,
  "resource": string,
  "subresource": string,
  "verb": string,
  "version": string
}
Campos
group

string

Es el grupo de API del recurso. "*" significa todo.

ns

string

Es el espacio de nombres de la acción que se solicita. Actualmente, no hay distinción entre no tener espacio de nombres y tener todos los espacios de nombres. Ambos se representan con "" (vacío).

name

string

Es el nombre del recurso que se solicita. Si está vacío, significa todo.

resource

string

El tipo de recurso opcional solicitado. "*" significa todo.

subresource

string

Es el tipo de subrecurso opcional.

verb

string

Un verbo de la API de recursos de Kubernetes, como get, list, watch, create, update, delete, proxy. "*" significa todo.

version

string

La versión de la API del recurso. "*" significa todo.

Objeto

Objeto de Kubernetes relacionado con el hallazgo, identificado de forma exclusiva por GKNN. Se usa si el tipo de objeto no es Pod, Node, NodePool, Binding o AccessReview.

Representación JSON
{
  "group": string,
  "kind": string,
  "ns": string,
  "name": string,
  "containers": [
    {
      object (Container)
    }
  ]
}
Campos
group

string

Grupo de objetos de Kubernetes, como "policy.k8s.io/v1".

kind

string

Tipo de objeto de Kubernetes, como "Namespace".

ns

string

Es el espacio de nombres de objetos de Kubernetes. Debe ser una etiqueta de DNS válida. Se nombró "ns" para evitar colisiones con la palabra clave de espacio de nombres de C++. Para obtener más información, consulta https://kubernetes.io/docs/tasks/administer-cluster/namespaces/.

name

string

Es el nombre del objeto de Kubernetes. Para obtener más información, consulta https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.

containers[]

object (Container)

Contenedores de pods asociados con este resultado, si corresponde

Base de datos

Representa información de acceso a la base de datos, como consultas. Una base de datos puede ser un subrecurso de una instancia (como en el caso de las instancias de Cloud SQL o Cloud Spanner) o la propia instancia de la base de datos. Es posible que algunos recursos de base de datos no tengan propagado el nombre de recurso completo porque estos tipos de recursos, como las bases de datos de Cloud SQL, aún no son compatibles con Cloud Asset Inventory. En estos casos, solo se proporciona el nombre visible.

Representación JSON
{
  "name": string,
  "displayName": string,
  "userName": string,
  "query": string,
  "grantees": [
    string
  ],
  "version": string
}
Campos
name

string

Es posible que algunos recursos de base de datos no tengan propagado el nombre completo del recurso porque estos tipos de recursos aún no son compatibles con el Inventario de recursos de Cloud (p.ej., bases de datos de Cloud SQL). En estos casos, solo se proporcionará el nombre visible. El nombre de recurso completo de la base de datos a la que se conectó el usuario, si Cloud Asset Inventory lo admite.

displayName

string

Es el nombre legible por humanos de la base de datos a la que se conectó el usuario.

userName

string

El nombre de usuario que se usa para conectarse a la base de datos. Es posible que el nombre de usuario no sea un principal de IAM y no tenga un formato establecido.

query

string

Es la sentencia SQL asociada con el acceso a la base de datos.

grantees[]

string

Los nombres de usuario, roles o grupos de destino de un otorgamiento de privilegios de SQL, que no es un cambio en la política de IAM

version

string

Es la versión de la base de datos, por ejemplo, POSTGRES_14. Consulta la lista completa.

AttackExposure

Una exposición a ataques contiene los resultados de una ejecución de simulación de ruta de ataque.

Representación JSON
{
  "score": number,
  "latestCalculationTime": string,
  "attackExposureResult": string,
  "state": enum (State),
  "exposedHighValueResourcesCount": integer,
  "exposedMediumValueResourcesCount": integer,
  "exposedLowValueResourcesCount": integer
}
Campos
score

number

Es un número entre 0 (inclusive) y el infinito que representa la importancia de corregir este hallazgo. Cuanto más alta sea la puntuación, más importante es la solución.

latestCalculationTime

string (Timestamp format)

La última vez que se actualizó la exposición a ataques en este resultado.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

attackExposureResult

string

Es el nombre del recurso del resultado de la simulación de la ruta de ataque que contiene los detalles sobre esta puntuación de exposición al ataque. Ejemplo: organizations/123/simulations/456/attackExposureResults/789

state

enum (State)

Indica en qué estado se encuentra este AttackExposure. Esto captura si se calculó o no una exposición a un ataque.

exposedHighValueResourcesCount

integer

Es la cantidad de recursos de alto valor que se exponen como resultado de este hallazgo.

exposedMediumValueResourcesCount

integer

Es la cantidad de recursos de valor medio que se exponen como resultado de este hallazgo.

exposedLowValueResourcesCount

integer

Es la cantidad de recursos de alto valor que se exponen como resultado de este hallazgo.

Estado

Esta enumeración define los diversos estados en los que puede estar un AttackExposure.

Enums
STATE_UNSPECIFIED El estado no se especifica.
CALCULATED Se calculó la exposición al ataque.
NOT_CALCULATED No se calculó la exposición al ataque.

CloudDlpInspection

Detalles sobre el trabajo de inspección de Cloud Data Loss Prevention (Cloud DLP) que generó el hallazgo

Representación JSON
{
  "inspectJob": string,
  "infoType": string,
  "infoTypeCount": string,
  "fullScan": boolean
}
Campos
inspectJob

string

Es el nombre del trabajo de inspección, por ejemplo, projects/123/locations/europe/dlpJobs/i-8383929.

infoType

string

El tipo de información (o infoType) que se encontró, por ejemplo, EMAIL_ADDRESS o STREET_ADDRESS.

infoTypeCount

string (int64 format)

Es la cantidad de veces que Cloud DLP encontró este infotipo dentro de este trabajo y recurso.

fullScan

boolean

Indica si Cloud DLP analizó el recurso completo o un subconjunto de muestra.

CloudDlpDataProfile

El perfil de datos asociado con el hallazgo.

Representación JSON
{
  "dataProfile": string,
  "parentType": enum (ParentType)
}
Campos
dataProfile

string

Es el nombre del perfil de datos, por ejemplo, projects/123/locations/europe/tableProfiles/8383929.

parentType

enum (ParentType)

Es el nivel de jerarquía de recursos en el que se generó el perfil de datos.

ParentType

Elementos superiores para las configuraciones que producen resultados de perfiles de datos.

Enums
PARENT_TYPE_UNSPECIFIED Tipo superior no especificado.
ORGANIZATION Parámetros de configuración a nivel de la organización
PROJECT Parámetros de configuración a nivel del proyecto

KernelRootkit

Firmas de rootkits de modo kernel

Representación JSON
{
  "name": string,
  "unexpectedCodeModification": boolean,
  "unexpectedReadOnlyDataModification": boolean,
  "unexpectedFtraceHandler": boolean,
  "unexpectedKprobeHandler": boolean,
  "unexpectedKernelCodePages": boolean,
  "unexpectedSystemCallHandler": boolean,
  "unexpectedInterruptHandler": boolean,
  "unexpectedProcessesInRunqueue": boolean
}
Campos
name

string

Nombre del rootkit, si está disponible

unexpectedCodeModification

boolean

Es verdadero si hay modificaciones inesperadas de la memoria del código del kernel.

unexpectedReadOnlyDataModification

boolean

Es verdadero si hay modificaciones inesperadas de la memoria de datos de solo lectura del kernel.

unexpectedFtraceHandler

boolean

Es verdadero si hay puntos ftrace con devoluciones de llamada que apuntan a regiones que no están en el rango de código esperado del kernel o del módulo.

unexpectedKprobeHandler

boolean

Es verdadero si hay puntos kprobe con devoluciones de llamada que apuntan a regiones que no están en el rango de código esperado del kernel o del módulo.

unexpectedKernelCodePages

boolean

Es verdadero si hay páginas de código de kernel que no están en las regiones de código de kernel o módulo esperadas.

unexpectedSystemCallHandler

boolean

Es verdadero si hay controladores de llamadas del sistema que no están en las regiones de código del kernel o del módulo esperadas.

unexpectedInterruptHandler

boolean

Es verdadero si hay controladores de interrupción que no están en las regiones de código del kernel o del módulo esperadas.

unexpectedProcessesInRunqueue

boolean

Es verdadero si hay procesos inesperados en la cola de ejecución del programador. Estos procesos se encuentran en la lista de ejecución, pero no en la lista de tareas del proceso.

OrgPolicy

Contiene información sobre las políticas de la organización asociadas con el hallazgo.

Representación JSON
{
  "name": string
}
Campos
name

string

Es el nombre del recurso de la política de la organización. Ejemplo: "organizations/{organization_id}/policies/{constraint_name}"

Trabajo

Describe un trabajo

Representación JSON
{
  "name": string,
  "state": enum (JobState),
  "errorCode": integer,
  "location": string
}
Campos
name

string

Es el nombre completamente calificado de un trabajo, p. ej., projects/<projectId>/jobs/<job_id>.

state

enum (JobState)

Solo salida. Estado del trabajo, como RUNNING o PENDING

errorCode

integer

Opcional. Si el trabajo no se completó correctamente, este campo describe el motivo.

location

string

Opcional. Proporciona la ubicación en la que se ejecutó la tarea, como US o europe-west1.

JobState

JobState representa el estado del trabajo.

Enums
JOB_STATE_UNSPECIFIED Sin especificar representa un estado desconocido y no se debe usar.
PENDING El trabajo está programado y pendiente de ejecución
RUNNING Trabajo en curso
SUCCEEDED El trabajo se completó correctamente
FAILED El trabajo se completó, pero con errores

Aplicación

Representa una aplicación asociada con un hallazgo.

Representación JSON
{
  "baseUri": string,
  "fullUri": string
}
Campos
baseUri

string

Es el URI base que identifica la ubicación de red de la aplicación en la que se detectó la vulnerabilidad. Por ejemplo, http://example.com.

fullUri

string

El URI completo con la carga útil que se puede usar para reproducir la vulnerabilidad Por ejemplo, http://example.com?p=aMmYgI6H.

IpRules

Son las reglas de IP asociadas con el resultado.

Representación JSON
{
  "direction": enum (Direction),
  "sourceIpRanges": [
    string
  ],
  "destinationIpRanges": [
    string
  ],
  "exposedServices": [
    string
  ],

  // Union field rules can be only one of the following:
  "allowed": {
    object (Allowed)
  },
  "denied": {
    object (Denied)
  }
  // End of list of possible types for union field rules.
}
Campos
direction

enum (Direction)

La dirección a la que se aplica la regla, una de entrada o salida.

sourceIpRanges[]

string

Si se especifican rangos de IP de origen, la regla de firewall se aplica solo al tráfico que tiene una dirección IP de origen en estos rangos. Estos rangos se deben expresar en formato CIDR. Solo es compatible con IPv4.

destinationIpRanges[]

string

Si se especifican rangos de IP de destino, la regla de firewall se aplica solo al tráfico que tiene una dirección IP de destino en estos rangos. Estos rangos se deben expresar en formato CIDR. Solo es compatible con IPv4.

exposedServices[]

string

Es el nombre del servicio de protocolo de red, como FTP, que expone el puerto abierto. Sigue la convención de nombres disponible en https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml.

Campo de unión rules. Es la lista de reglas de permiso especificadas por este firewall. Cada regla especifica un protocolo y una tupla de rango de puertos que describen una conexión permitida. rules puede ser solo uno de los siguientes:
allowed

object (Allowed)

Tupla con reglas permitidas.

denied

object (Denied)

Tupla con reglas denegadas.

Dirección

Es el tipo de dirección a la que se aplica la regla, ya sea de entrada o salida. No se aplica a los resultados de OPEN_X_PORT.

Enums
DIRECTION_UNSPECIFIED Valor de dirección no especificado.
INGRESS Es el valor de la dirección de entrada.
EGRESS Valor de la dirección de salida.

Permitido

Regla de IP permitida.

Representación JSON
{
  "ipRules": [
    {
      object (IpRule)
    }
  ]
}
Campos
ipRules[]

object (IpRule)

Opcional. Es una lista opcional de reglas de IP permitidas.

IpRule

Información de la regla de IP

Representación JSON
{
  "protocol": string,
  "portRanges": [
    {
      object (PortRange)
    }
  ]
}
Campos
protocol

string

El protocolo IP al que se aplica esta regla. Este valor puede ser una de las siguientes cadenas de protocolo conocidas (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) o una representación de cadena del valor entero.

portRanges[]

object (PortRange)

Opcional. Es una lista opcional de puertos a los que se aplica esta regla. Este campo solo se aplica a los protocolos UDP o (S)TCP. Cada entrada debe ser un número entero o un rango que incluya un número de puerto mínimo y máximo.

PortRange

Un rango de puertos que incluye los valores mínimo y máximo. Los valores están entre 0 y 2^16-1. El valor máximo puede ser igual o no ser menor que el valor mínimo. Si min y max son iguales, esto indica que se trata de un solo puerto.

Representación JSON
{
  "min": string,
  "max": string
}
Campos
min

string (int64 format)

Es el valor mínimo del puerto.

max

string (int64 format)

Es el valor máximo del puerto.

Rechazado

Regla de IP rechazada.

Representación JSON
{
  "ipRules": [
    {
      object (IpRule)
    }
  ]
}
Campos
ipRules[]

object (IpRule)

Opcional. Es una lista opcional de reglas de IP rechazadas.

BackupDisasterRecovery

Información relacionada con los resultados del servicio de copia de seguridad y DR de Google Cloud

Representación JSON
{
  "backupTemplate": string,
  "policies": [
    string
  ],
  "host": string,
  "applications": [
    string
  ],
  "storagePool": string,
  "policyOptions": [
    string
  ],
  "profile": string,
  "appliance": string,
  "backupType": string,
  "backupCreateTime": string
}
Campos
backupTemplate

string

Es el nombre de una plantilla de copia de seguridad y DR que comprende una o más políticas de copia de seguridad. Consulta la documentación de copia de seguridad y DR para obtener más información. Por ejemplo, snap-ov

policies[]

string

Los nombres de las políticas de copia de seguridad y DR que están asociadas con una plantilla y que definen cuándo ejecutar una copia de seguridad, con qué frecuencia y por cuánto tiempo retener la imagen de la copia. Por ejemplo, onvaults.

host

string

Es el nombre de un host de Backup and DR, que administra el dispositivo de copia de seguridad y recuperación, y que la consola de administración conoce. El host puede ser de tipo genérico (por ejemplo, Compute Engine, SQL Server, Oracle DB, sistema de archivos SMB, etcétera), vCenter o un servidor ESX. Consulta la documentación sobre copias de seguridad y DR en hosts para obtener más información. Por ejemplo, centos7-01

applications[]

string

Los nombres de las aplicaciones de Backup and DR. Una aplicación es una VM, una base de datos o un sistema de archivos en un host administrado que supervisa un dispositivo de copia de seguridad y recuperación. Por ejemplo, centos7-01-vol00, centos7-01-vol01, centos7-01-vol02.

storagePool

string

Es el nombre del grupo de almacenamiento de copia de seguridad y DR en el que el dispositivo de copia de seguridad y recuperación almacena los datos. El grupo de almacenamiento puede ser de tipo Cloud, Primary, Snapshot o OnVault. Consulta la documentación de Backup and DR sobre los grupos de almacenamiento. Por ejemplo, DiskPoolOne

policyOptions[]

string

Los nombres de las opciones de políticas avanzadas de copia de seguridad y DR de una política que se aplica a una aplicación. Consulta la documentación de Backup and DR sobre las opciones de políticas. Por ejemplo, skipofflineappsincongrp, nounmap

profile

string

Es el nombre del perfil de recursos de copia de seguridad y DR que especifica el medio de almacenamiento para las copias de seguridad de los datos de la aplicación y la VM. Consulta la documentación de Backup and DR sobre los perfiles. Por ejemplo, GCP

appliance

string

Es el nombre del dispositivo de copia de seguridad y DR que captura, mueve y administra el ciclo de vida de los datos de copia de seguridad. Por ejemplo, backup-server-57137.

backupType

string

Es el tipo de copia de seguridad de la imagen de Backup and DR. Por ejemplo, Snapshot, Remote Snapshot, OnVault.

backupCreateTime

string (Timestamp format)

La marca de tiempo en la que se creó la copia de seguridad de Backup and DR.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

SecurityPosture

Representa una postura que el servicio de administración de posturas de Security Command Center implementa en Google Cloud. Una postura contiene uno o más conjuntos de políticas. Un conjunto de políticas es un grupo de políticas que aplican un conjunto de reglas de seguridad en Google Cloud.

Representación JSON
{
  "name": string,
  "revisionId": string,
  "postureDeploymentResource": string,
  "postureDeployment": string,
  "changedPolicy": string,
  "policySet": string,
  "policy": string,
  "policyDriftDetails": [
    {
      object (PolicyDriftDetails)
    }
  ]
}
Campos
name

string

Es el nombre de la postura, por ejemplo, CIS-Posture.

revisionId

string

La versión de la postura, por ejemplo, c7cfa2a8.

postureDeploymentResource

string

El proyecto, la carpeta o la organización en la que se implementa la postura, por ejemplo, projects/{project_number}.

postureDeployment

string

Es el nombre de la implementación de la postura, por ejemplo, organizations/{org_id}/posturedeployments/{posture_deployment_id}.

changedPolicy

string

Es el nombre de la política actualizada, por ejemplo, projects/{projectId}/policies/{constraint_name}.

policySet

string

Es el nombre del conjunto de políticas actualizado, por ejemplo, cis-policyset.

policy

string

Es el ID de la política actualizada, por ejemplo, compute-policy-1.

policyDriftDetails[]

object (PolicyDriftDetails)

Los detalles sobre un cambio en una política actualizada que incumple la postura implementada

PolicyDriftDetails

El campo de política que incumple la postura implementada y sus valores esperados y detectados.

Representación JSON
{
  "field": string,
  "expectedValue": string,
  "detectedValue": string
}
Campos
field

string

Es el nombre del campo actualizado, por ejemplo, constraint.implementation.policy_rules[0].enforce.

expectedValue

string

El valor de este campo que se configuró en una postura, por ejemplo, true o allowed_values={"projects/29831892"}.

detectedValue

string

Es el valor detectado que incumple la postura implementada, por ejemplo, false o allowed_values={"projects/22831892"}.

LogEntry

Es una entrada individual en un registro.

Representación JSON
{

  // Union field log_entry can be only one of the following:
  "cloudLoggingEntry": {
    object (CloudLoggingEntry)
  }
  // End of list of possible types for union field log_entry.
}
Campos

Campo de unión log_entry.

log_entry puede ser una de las siguientes opciones:

cloudLoggingEntry

object (CloudLoggingEntry)

Es una entrada individual en un registro almacenado en Cloud Logging.

CloudLoggingEntry

Metadatos tomados de un LogEntry de Cloud Logging

Representación JSON
{
  "insertId": string,
  "logId": string,
  "resourceContainer": string,
  "timestamp": string
}
Campos
insertId

string

Indica un identificador único para la entrada de registro.

logId

string

Es el tipo de registro (parte de logName). logName es el nombre del recurso del registro al que pertenece esta entrada de registro). Por ejemplo: cloudresourcemanager.googleapis.com/activity. Ten en cuenta que este campo no está codificado en formato URL, a diferencia del campo LOG_ID en LogEntry.

resourceContainer

string

La organización, la carpeta o el proyecto del recurso supervisado que produjo esta entrada de registro.

timestamp

string (Timestamp format)

Indica la fecha y hora en la que ocurrió el evento que se describe en la entrada de registro.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

LoadBalancer

Contiene información relacionada con el balanceador de cargas asociado con el hallazgo.

Representación JSON
{
  "name": string
}
Campos
name

string

Es el nombre del balanceador de cargas asociado con el hallazgo.

CloudArmor

Campos relacionados con los resultados de Google Cloud Armor.

Representación JSON
{
  "securityPolicy": {
    object (SecurityPolicy)
  },
  "requests": {
    object (Requests)
  },
  "adaptiveProtection": {
    object (AdaptiveProtection)
  },
  "attack": {
    object (Attack)
  },
  "threatVector": string,
  "duration": string
}
Campos
securityPolicy

object (SecurityPolicy)

Información sobre la política de seguridad de Google Cloud Armor relevante para el hallazgo

requests

object (Requests)

Información sobre las solicitudes entrantes que evalúan las políticas de seguridad de Google Cloud Armor.

adaptiveProtection

object (AdaptiveProtection)

Información sobre posibles ataques DDoS de capa 7 que identificó la Protección adaptable de Google Cloud Armor.

attack

object (Attack)

Información sobre el volumen y la clasificación de los ataques DDoS.

threatVector

string

Distingue entre los ataques de DDoS volumétricos y de protocolo, y los ataques a la capa de aplicación. Por ejemplo, "L3_4" para ataques de DDoS de capa 3 y capa 4, o "L_7" para ataques de DDoS de capa 7.

duration

string (Duration format)

Es la duración del ataque desde el inicio hasta el momento actual (se actualiza cada 5 minutos).

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

SecurityPolicy

Información sobre la política de seguridad de Google Cloud Armor relevante para el hallazgo

Representación JSON
{
  "name": string,
  "type": string,
  "preview": boolean
}
Campos
name

string

Es el nombre de la política de seguridad de Google Cloud Armor, por ejemplo, "mi-política-de-seguridad".

type

string

El tipo de política de seguridad de Google Cloud Armor, por ejemplo, "política de seguridad del backend", "política de seguridad perimetral", "política de seguridad de perímetro de red" o "protección contra DDoS siempre activa"

preview

boolean

Indica si la regla o política asociada está o no en modo de vista previa.

Solicitudes

Información sobre las solicitudes relevantes para el hallazgo.

Representación JSON
{
  "ratio": number,
  "shortTermAllowed": integer,
  "longTermAllowed": integer,
  "longTermDenied": integer
}
Campos
ratio

number

En el caso de "Aumento en la proporción de denegación", la proporción es el tráfico denegado dividido por el tráfico permitido. En el caso de "Aumento repentino de tráfico permitido", la proporción es el tráfico permitido a corto plazo dividido por el tráfico permitido a largo plazo.

shortTermAllowed

integer

RPS (solicitudes por segundo) permitidas a corto plazo.

longTermAllowed

integer

RPS (solicitudes por segundo) permitidas a largo plazo

longTermDenied

integer

RPS rechazadas (solicitudes por segundo) a largo plazo

AdaptiveProtection

Información sobre la Protección adaptable de Google Cloud Armor.

Representación JSON
{
  "confidence": number
}
Campos
confidence

number

Una puntuación de 0 significa que hay una baja confianza en que el evento detectado sea un ataque real. Una puntuación de 1 significa que hay una alta confianza de que el evento detectado es un ataque. Consulta la documentación de Protección adaptativa para obtener más información.

Atacar

Información sobre el volumen y la clasificación de los ataques DDoS.

Representación JSON
{
  "volumePpsLong": string,
  "volumeBpsLong": string,
  "classification": string,
  "volumePps": integer,
  "volumeBps": integer
}
Campos
volumePpsLong

string (int64 format)

Es el volumen total de ataque en PPS (paquetes por segundo).

volumeBpsLong

string (int64 format)

Es el volumen total de ataque en BPS (bytes por segundo).

classification

string

Tipo de ataque, por ejemplo, "SYN-flood", "NTP-udp" o "CHARGEN-udp".

volumePps
(deprecated)

integer

Es el volumen total de ataque en PPS (paquetes por segundo). Obsoleto. Consulta volumePpsLong.

volumeBps
(deprecated)

integer

Es el volumen total de ataque en BPS (bytes por segundo). Obsoleto. Consulta volumeBpsLong.

Notebook

Representa un archivo IPYNB de notebook de Jupyter, como un archivo de notebook de Colab Enterprise, que está asociado con un hallazgo.

Representación JSON
{
  "name": string,
  "service": string,
  "lastAuthor": string,
  "notebookUpdateTime": string
}
Campos
name

string

Es el nombre del notebook.

service

string

El servicio de notebook de origen, por ejemplo, “Colab Enterprise”.

lastAuthor

string

El ID de usuario del autor más reciente que modificó el notebook.

notebookUpdateTime

string (Timestamp format)

La última vez que se actualizó el notebook.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

ToxicCombination

Contiene detalles sobre un grupo de problemas de seguridad que, cuando ocurren juntos, representan un riesgo mayor que cuando ocurren de forma independiente. Un grupo de estos problemas se conoce como combinación tóxica.

Representación JSON
{
  "attackExposureScore": number,
  "relatedFindings": [
    string
  ]
}
Campos
attackExposureScore

number

La Puntuación de exposición al ataque de esta combinación tóxica La puntuación es una medida de en qué medida esta combinación tóxica expone uno o más recursos de alto valor a un posible ataque.

relatedFindings[]

string

Es la lista de nombres de recursos de los resultados asociados con esta combinación tóxica. Por ejemplo, organizations/123/sources/456/findings/789.

GroupMembership

Contiene detalles sobre los grupos de los que este hallazgo es miembro. Un grupo es una colección de conclusiones que se relacionan de alguna manera.

Representación JSON
{
  "groupType": enum (GroupType),
  "groupId": string
}
Campos
groupType

enum (GroupType)

Tipo de grupo.

groupId

string

Es el ID del grupo.

GroupType

Posibles tipos de grupos.

Enums
GROUP_TYPE_UNSPECIFIED Valor predeterminado
GROUP_TYPE_TOXIC_COMBINATION El grupo representa una combinación tóxica.

Disco

Contiene información sobre el disco asociado con el hallazgo.

Representación JSON
{
  "name": string
}
Campos
name

string

Es el nombre del disco, por ejemplo, "https://www.googleapis.com/compute/v1/projects/{project-id}/zones/{zone-id}/disks/{disk-id}".

DataAccessEvent

Detalles sobre un intento de acceso a los datos realizado por una principal no autorizada en virtud de la política de seguridad de los datos aplicable.

Representación JSON
{
  "eventId": string,
  "principalEmail": string,
  "operation": enum (Operation),
  "eventTime": string
}
Campos
eventId

string

Es el identificador único del evento de acceso a los datos.

principalEmail

string

La dirección de correo electrónico de la persona principal que accedió a los datos El principal puede ser una cuenta de usuario, una cuenta de servicio, un Grupo de Google o cualquier otro elemento.

operation

enum (Operation)

Es la operación que realiza el principal para acceder a los datos.

eventTime

string (Timestamp format)

Marca de tiempo del evento de acceso a los datos.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Operación

La operación de un evento de acceso a los datos.

Enums
OPERATION_UNSPECIFIED La operación no está especificada.
READ Representa una operación de lectura.
MOVE Representa una operación de movimiento.
COPY Representa una operación de copia.

DataFlowEvent

Detalles sobre un evento de flujo de datos, en el que los datos se mueven a una geolocalización que no cumple con las políticas o se accede a ellos desde una ubicación de este tipo, según se define en la política de seguridad de datos aplicable

Representación JSON
{
  "eventId": string,
  "principalEmail": string,
  "operation": enum (Operation),
  "violatedLocation": string,
  "eventTime": string
}
Campos
eventId

string

Es el identificador único del evento de flujo de datos.

principalEmail

string

La dirección de correo electrónico del principal que inició el evento de flujo de datos El principal puede ser una cuenta de usuario, una cuenta de servicio, un Grupo de Google o cualquier otro elemento.

operation

enum (Operation)

Es la operación que realiza el principal para el evento de flujo de datos.

violatedLocation

string

Ubicación no conforme del principal o del destino de los datos

eventTime

string (Timestamp format)

Marca de tiempo del evento de flujo de datos.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Operación

La operación de un evento de flujo de datos.

Enums
OPERATION_UNSPECIFIED La operación no está especificada.
READ Representa una operación de lectura.
MOVE Representa una operación de movimiento.
COPY Representa una operación de copia.

Red

Contiene información sobre una red de VPC asociada con el hallazgo.

Representación JSON
{
  "name": string
}
Campos
name

string

Es el nombre del recurso de red de VPC, por ejemplo, //compute.googleapis.com/projects/my-project/global/networks/my-network.

DataRetentionDeletionEvent

Detalles sobre los incumplimientos de eliminación de retención de datos, en los que los datos no cumplen con los requisitos en función de su tiempo de retención o eliminación, según se define en la política de seguridad de datos aplicable El control de eliminación de retención de datos (DRD) es un control del paquete de DSPM (Administración de la postura de seguridad de los datos) que permite a las organizaciones administrar las políticas de retención y eliminación de datos de conformidad con las reglamentaciones, como el RGPD y la CRPA. La DRD admite dos tipos de políticas principales: duración máxima de almacenamiento (TTL máximo) y duración mínima de almacenamiento (TTL mínimo). Ambos tienen como objetivo ayudar a las organizaciones a cumplir con los compromisos de administración de datos y reglamentarios.

Representación JSON
{
  "eventDetectionTime": string,
  "dataObjectCount": string,
  "maxRetentionAllowed": string,
  "eventType": enum (EventType)
}
Campos
eventDetectionTime

string (Timestamp format)

Marca de tiempo que indica cuándo se detectó el evento.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

dataObjectCount

string (int64 format)

Cantidad de objetos que incumplieron la política de este recurso. Si el número es inferior a 1,000, el valor de este campo es la cantidad exacta. Si la cantidad de objetos que incumplieron la política es mayor o igual a 1,000, el valor de este campo es 1,000.

maxRetentionAllowed

string (Duration format)

Es la duración máxima de retención permitida desde el control de DRD. Esto proviene del control de DRD, en el que los usuarios establecen un TTL máximo para sus datos. Por ejemplo, supongamos que un usuario establece el TTL máximo de un bucket de Cloud Storage en 90 días. Sin embargo, un objeto de ese bucket tiene 100 días. En este caso, se generará un DataRetentionDeletionEvent para ese bucket de Cloud Storage, y el maxRetentionAllowed será de 90 días.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

eventType

enum (EventType)

Es el tipo de evento de DRD.

EventType

Es el tipo de evento de DRD.

Enums
EVENT_TYPE_UNSPECIFIED Tipo de evento no especificado.
EVENT_TYPE_MAX_TTL_EXCEEDED Se superó el tiempo de retención máximo.

Métodos

create

Crea un hallazgo.

group

Filtra los hallazgos de una organización o fuente y los agrupa según sus propiedades especificadas.

list

Muestra una lista de los hallazgos de una organización o fuente.

patch

Crea o actualiza un hallazgo.

setMute

Actualiza el estado de silenciamiento de un resultado.

setState

Actualiza el estado de un hallazgo.

updateSecurityMarks

Actualiza las marcas de seguridad.