REST Resource: organizations.sources.findings

Recurso: Finding

Descoberta do Security Command Center.

Uma descoberta é um registro de dados de avaliação, como segurança, risco, integridade ou privacidade, que é ingerido no Security Command Center para apresentação, notificação, análise, teste de políticas e aplicação. Por exemplo, uma vulnerabilidade de scripting em vários locais (XSS) em um aplicativo do App Engine é uma descoberta.

Representação JSON
{
  "name": string,
  "canonicalName": 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),
  "mute": enum (Mute),
  "muteInfo": {
    object (MuteInfo)
  },
  "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,
  "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

O nome do recurso relativo da descoberta. Confira alguns exemplos na lista a seguir:

+ organizations/{organization_id}/sources/{source_id}/findings/{findingId} + organizations/{organization_id}/sources/{source_id}/locations/{locationId}/findings/{findingId} + folders/{folder_id}/sources/{source_id}/findings/{findingId} + folders/{folder_id}/sources/{source_id}/locations/{locationId}/findings/{findingId} + projects/{projectId}/sources/{source_id}/findings/{findingId} + projects/{projectId}/sources/{source_id}/locations/{locationId}/findings/{findingId}

canonicalName

string

Apenas saída. O nome canônico da descoberta. Confira alguns exemplos na lista a seguir:

+ organizations/{organization_id}/sources/{source_id}/findings/{findingId} + organizations/{organization_id}/sources/{source_id}/locations/{locationId}/findings/{findingId} + folders/{folder_id}/sources/{source_id}/findings/{findingId} + folders/{folder_id}/sources/{source_id}/locations/{locationId}/findings/{findingId} + projects/{projectId}/sources/{source_id}/findings/{findingId} + projects/{projectId}/sources/{source_id}/locations/{locationId}/findings/{findingId}

O prefixo é o ancestral do CRM mais próximo do recurso associado à descoberta.

parent

string

O nome do recurso relativo da fonte e do local a que a descoberta pertence. Consulte: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Esse campo é imutável após a criação. Confira alguns exemplos na lista a seguir:

  • organizations/{organization_id}/sources/{source_id}
  • folders/{folders_id}/sources/{source_id}
  • projects/{projects_id}/sources/{source_id} + organizations/{organization_id}/sources/{source_id}/locations/{locationId}
  • folders/{folders_id}/sources/{source_id}/locations/{locationId}
  • projects/{projects_id}/sources/{source_id}/locations/{locationId}
resourceName

string

Imutável. Para descobertas em recursos do Google Cloud, o nome completo do recurso do Google Cloud a que a descoberta se refere. Consulte: https://cloud.google.com/apis/design/resource_names#full_resource_name Quando a descoberta é para um recurso que não é do Google Cloud, o resourceName pode ser uma string definida pelo cliente ou parceiro.

state

enum (State)

Apenas saída. O estado da descoberta.

category

string

Imutável. O grupo de taxonomia adicional nas descobertas de uma determinada origem. Exemplo: "XSS_FLASH_INJECTION"

externalUri

string

O URI que, se disponível, aponta para uma página da Web fora do Security Command Center, onde podem ser encontradas informações adicionais sobre a descoberta. É garantido que esse campo esteja vazio ou seja um URL bem formado.

sourceProperties

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

Propriedades específicas da origem. Essas propriedades são gerenciadas pela origem que grava a descoberta. Os nomes das chaves no mapa sourceProperties precisam ter entre 1 e 255 caracteres, começar com uma letra e conter apenas caracteres alfanuméricos ou sublinhados.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

securityMarks

object (SecurityMarks)

Apenas saída. Marcações de segurança especificadas pelo usuário. Essas marcas são totalmente gerenciadas pelo usuário e vêm do recurso SecurityMarks que pertence à descoberta.

eventTime

string (Timestamp format)

Horário em que a descoberta foi detectada pela primeira vez. Se uma descoberta existente for atualizada, esse será o horário em que a atualização ocorreu. Por exemplo, se a descoberta representar um firewall aberto, essa propriedade vai capturar o horário em que o detector acredita que o firewall foi aberto. A precisão é determinada pelo detector. Se a descoberta for resolvida mais tarde, esse horário vai refletir quando ela foi resolvida. Ele não pode ser definido como um valor maior do que o carimbo de data/hora atual.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

createTime

string (Timestamp format)

Apenas saída. A hora em que a descoberta foi criada no Security Command Center.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

severity

enum (Severity)

A gravidade da descoberta. Esse campo é gerenciado pela origem que grava a descoberta.

mute

enum (Mute)

Indica o estado de silenciamento de uma descoberta (silenciada, ativada ou indefinida). Ao contrário de outros atributos de um achado, um provedor de achados não pode definir o valor de desativação do som.

muteInfo

object (MuteInfo)

Apenas saída. As informações de desativação relacionadas a essa descoberta.

findingClass

enum (FindingClass)

A classe da descoberta.

indicator

object (Indicator)

Representa o que é comumente conhecido como um indicador de comprometimento (IoC) na perícia forense de computadores. É um artefato observado em uma rede ou em um sistema operacional que, com alta confiança, indica uma invasão de computador. Para mais informações, consulte Indicador de comprometimento.

vulnerability

object (Vulnerability)

Representa campos específicos de vulnerabilidade, como pontuações CVE e CVSS. CVE é a sigla para Common Vulnerabilities and Exposures (vulnerabilidades e exposições comuns) (https://cve.mitre.org/about/).

muteUpdateTime

string (Timestamp format)

Apenas saída. A última vez que esta descoberta foi silenciada ou ativada.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

externalSystems

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

Apenas saída. Os campos de SIEM/SOAR de terceiros no SCC contêm informações do sistema externo e campos de descoberta do sistema externo.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

mitreAttack

object (MitreAttack)

Táticas e técnicas do MITRE ATT&CK relacionadas a essa descoberta. Consulte: https://attack.mitre.org

access

object (Access)

Acesse os detalhes associados à descoberta, como mais informações sobre o autor da chamada, qual método foi acessado e de onde.

connections[]

object (Connection)

Contém informações sobre a conexão IP associada à descoberta.

muteInitiator

string

Registra informações adicionais sobre a operação de desativação, por exemplo, a configuração de desativação que desativou a descoberta e o usuário que fez isso.

processes[]

object (Process)

Representa os processos do sistema operacional associados à descoberta.

contacts

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

Apenas saída. Mapa contendo os pontos de contato da descoberta. A chave representa o tipo de contato, e o valor contém uma lista de todos os contatos relacionados. Consulte: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories

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

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

compliances[]

object (Compliance)

Contém informações de compliance para os padrões de segurança associados à descoberta.

parentDisplayName

string

Apenas saída. O nome de exibição legível pela pessoa da origem da descoberta, como "Detecção de ameaças a eventos" ou "Análise de integridade da segurança".

description

string

Contém mais detalhes sobre a descoberta.

exfiltration

object (Exfiltration)

Representa exfiltrações associadas à descoberta.

iamBindings[]

object (IamBinding)

Representa vinculações do IAM associadas à descoberta.

nextSteps

string

Etapas para resolver a descoberta.

moduleName

string

Identificador exclusivo do módulo que gerou a descoberta. Exemplo: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885

containers[]

object (Container)

Contêineres associados à descoberta. Esse campo fornece informações para contêineres do Kubernetes e de outros tipos.

kubernetes

object (Kubernetes)

Recursos do Kubernetes associados à descoberta.

database

object (Database)

Banco de dados associado à descoberta.

attackExposure

object (AttackExposure)

Os resultados de uma simulação de caminho de ataque relevante para essa descoberta.

files[]

object (File)

Arquivo associado à descoberta.

cloudDlpInspection

object (CloudDlpInspection)

Resultados de inspeção do Cloud Data Loss Prevention (Cloud DLP) associados à descoberta.

cloudDlpDataProfile

object (CloudDlpDataProfile)

Perfil de dados do Cloud DLP associado à descoberta.

kernelRootkit

object (KernelRootkit)

Assinatura do rootkit do kernel.

orgPolicies[]

object (OrgPolicy)

Contém informações sobre as políticas da organização associadas à descoberta.

job

object (Job)

Função associada à descoberta.

application

object (Application)

Representa um aplicativo associado à descoberta.

ipRules

object (IpRules)

Regras de IP associadas à descoberta.

backupDisasterRecovery

object (BackupDisasterRecovery)

Campos relacionados às descobertas de backup e DR.

securityPosture

object (SecurityPosture)

A postura de segurança associada à descoberta.

logEntries[]

object (LogEntry)

Registro de entradas relevantes para a descoberta.

loadBalancers[]

object (LoadBalancer)

Os balanceadores de carga associados à descoberta.

cloudArmor

object (CloudArmor)

Campos relacionados às descobertas do Cloud Armor.

notebook

object (Notebook)

Caderno associado à descoberta.

toxicCombination

object (ToxicCombination)

Contém detalhes sobre um grupo de problemas de segurança que, quando ocorrem juntos, representam um risco maior do que quando ocorrem de forma independente. Um grupo de problemas desse tipo é chamado de combinação tóxica. Não é possível atualizar este campo. O valor é ignorado em todas as solicitações de atualização.

groupMemberships[]

object (GroupMembership)

Contém detalhes sobre os grupos dos quais essa descoberta é membro. Um grupo é uma coleção de descobertas relacionadas de alguma forma. Não é possível atualizar este campo. O valor é ignorado em todas as solicitações de atualização.

disk

object (Disk)

Disco associado à descoberta.

dataAccessEvents[]

object (DataAccessEvent)

Eventos de acesso a dados associados à descoberta.

dataFlowEvents[]

object (DataFlowEvent)

Eventos de fluxo de dados associados à descoberta.

networks[]

object (Network)

Representa as redes VPC às quais o recurso está anexado.

dataRetentionDeletionEvents[]

object (DataRetentionDeletionEvent)

Eventos de exclusão de retenção de dados associados à descoberta.

Estado

O estado da descoberta.

Enums
STATE_UNSPECIFIED Estado não especificado.
ACTIVE A descoberta requer atenção e ainda não foi resolvida.
INACTIVE A descoberta foi corrigida, classificada como não relevante ou resolvida de outra forma e não está mais ativa.

SecurityMarks

Marcas de segurança especificadas pelo usuário que são anexadas ao recurso pai do Security Command Center. As marcações de segurança são aplicadas a uma organização do Security Command Center e podem ser modificadas e visualizadas por todos os usuários que têm as permissões adequadas na organização.

Representação JSON
{
  "name": string,
  "marks": {
    string: string,
    ...
  },
  "canonicalName": string
}
Campos
name

string

O nome do recurso relativo das SecurityMarks. Consulte: https://cloud.google.com/apis/design/resource_names#relative_resource_name A lista a seguir mostra alguns exemplos:

  • organizations/{organization_id}/assets/{asset_id}/securityMarks + organizations/{organization_id}/sources/{source_id}/findings/{findingId}/securityMarks + organizations/{organization_id}/sources/{source_id}/locations/{location}/findings/{findingId}/securityMarks
marks

map (key: string, value: string)

Marcas de segurança mutáveis especificadas pelo usuário que pertencem ao recurso pai. As restrições são as seguintes:

  • As chaves e os valores não diferenciam maiúsculas de minúsculas
  • As chaves precisam ter entre 1 e 256 caracteres (inclusive)
  • As chaves precisam ser letras, números, sublinhados ou traços
  • Os valores têm espaços em branco iniciais e finais removidos. Os caracteres restantes precisam ter entre 1 e 4096 caracteres (inclusive).

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

canonicalName

string

O nome canônico das marcas. Confira alguns exemplos na lista a seguir:

  • organizations/{organization_id}/assets/{asset_id}/securityMarks + organizations/{organization_id}/sources/{source_id}/findings/{findingId}/securityMarks + organizations/{organization_id}/sources/{source_id}/locations/{location}/findings/{findingId}/securityMarks
  • folders/{folder_id}/assets/{asset_id}/securityMarks + folders/{folder_id}/sources/{source_id}/findings/{findingId}/securityMarks + folders/{folder_id}/sources/{source_id}/locations/{location}/findings/{findingId}/securityMarks
  • projects/{project_number}/assets/{asset_id}/securityMarks + projects/{project_number}/sources/{source_id}/findings/{findingId}/securityMarks + projects/{project_number}/sources/{source_id}/locations/{location}/findings/{findingId}/securityMarks

Gravidade

A gravidade da descoberta.

Enums
SEVERITY_UNSPECIFIED Esse valor é usado para descobertas quando uma origem não grava um valor de gravidade.
CRITICAL

Vulnerabilidade: uma vulnerabilidade crítica é facilmente detectada por um ator externo, pode ser explorada e resulta na capacidade direta de executar código arbitrário, exfiltrar dados e receber acesso e privilégios adicionais em recursos e cargas de trabalho na nuvem. Exemplos incluem dados de usuário acessíveis ao público e sem proteção e acesso SSH público com senhas fracas ou sem senha.

Ameaça: indica uma ameaça que pode acessar, modificar ou excluir dados ou executar código não autorizado nos recursos atuais.

HIGH

Vulnerabilidade: uma vulnerabilidade de alto risco pode ser facilmente descoberta e explorada em combinação com outras vulnerabilidades para ter acesso direto e a capacidade de executar código arbitrário, exfiltrar dados e receber acesso e privilégios adicionais a recursos e cargas de trabalho da nuvem. Um exemplo é um banco de dados com senhas fracas ou sem senhas que só pode ser acessado internamente. Esse banco de dados pode ser facilmente comprometido por um agente que tenha acesso à rede interna.

Ameaça: indica uma ameaça que pode criar novos recursos computacionais em um ambiente, mas não consegue acessar dados nem executar códigos em recursos atuais.

MEDIUM

Vulnerabilidade: uma vulnerabilidade de risco médio pode ser usada por um ator para ter acesso a recursos ou privilégios que permitem que ele tenha acesso e a capacidade de executar códigos arbitrários ou exfiltrar dados (por meio de várias etapas ou uma exploração complexa). Um exemplo é uma conta de serviço com acesso a mais projetos do que deveria. Se um agente tiver acesso à conta de serviço, ele poderá usar esse acesso para manipular um projeto que não era destinado à conta de serviço.

Ameaça: indica uma ameaça que pode causar impacto operacional, mas não pode acessar dados nem executar códigos não autorizados.

LOW

Vulnerabilidade: uma vulnerabilidade de baixo risco impede que uma organização de segurança detecte vulnerabilidades ou ameaças ativas na implantação ou impede a investigação da causa raiz dos problemas de segurança. Um exemplo é o monitoramento e os registros desativados para configurações de recursos e acesso.

Ameaça: indica uma ameaça que obteve acesso mínimo a um ambiente, mas não consegue acessar dados, executar código ou criar recursos.

Desativar som

Estado de silenciamento em que uma descoberta pode estar.

Enums
MUTE_UNSPECIFIED Não especificado.
MUTED A descoberta foi silenciada.
UNMUTED A descoberta foi desativada.
UNDEFINED A descoberta nunca foi silenciada/desativada.

MuteInfo

Silenciar informações sobre a descoberta, incluindo se ela tem um silenciamento estático ou regras de silenciamento dinâmico correspondentes.

Representação JSON
{
  "staticMute": {
    object (StaticMute)
  },
  "dynamicMuteRecords": [
    {
      object (DynamicMuteRecord)
    }
  ]
}
Campos
staticMute

object (StaticMute)

Se definido, o silenciamento estático aplicado a essa descoberta. Os silenciamentos estáticos substituem os dinâmicos. Se não for definido, não haverá silenciamento estático.

dynamicMuteRecords[]

object (DynamicMuteRecord)

Lista de regras de silenciamento dinâmico que correspondem à descoberta.

StaticMute

Informações sobre o estado de silenciamento estático. Um estado de silenciamento estático substitui todas as regras de silenciamento dinâmico que se aplicam a essa descoberta. O estado de silenciamento estático pode ser definido por uma regra de silenciamento estático ou silenciando a descoberta diretamente.

Representação JSON
{
  "state": enum (Mute),
  "applyTime": string
}
Campos
state

enum (Mute)

O estado de silenciamento estático. Se o valor for MUTED ou UNMUTED, o estado de silenciamento geral da descoberta terá o mesmo valor.

applyTime

string (Timestamp format)

Quando o silenciamento estático foi aplicado.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

DynamicMuteRecord

O registro de uma regra de silenciamento dinâmica que corresponde à descoberta.

Representação JSON
{
  "muteConfig": string,
  "matchTime": string
}
Campos
muteConfig

string

O nome do recurso relativo da regra de silenciamento, representado por uma configuração de silenciamento, que criou esse registro, por exemplo, organizations/123/muteConfigs/mymuteconfig ou organizations/123/locations/global/muteConfigs/mymuteconfig.

matchTime

string (Timestamp format)

Quando a regra de desativação dinâmica correspondeu à descoberta pela primeira vez.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

FindingClass

Representa o tipo de descoberta.

Enums
FINDING_CLASS_UNSPECIFIED Classe de descoberta não especificada.
THREAT Descreve atividades indesejadas ou maliciosas.
VULNERABILITY Descreve uma possível vulnerabilidade no software que aumenta o risco de confidencialidade, integridade e disponibilidade.
MISCONFIGURATION Descreve uma possível fraqueza na configuração de recursos/ativos em nuvem que aumenta o risco.
OBSERVATION Descreve uma observação de segurança para fins informativos.
SCC_ERROR Descreve um erro que impede algumas funcionalidades do SCC.
POSTURE_VIOLATION Descreve um possível risco de segurança devido a uma mudança na postura de segurança.
TOXIC_COMBINATION Descreve uma combinação de problemas de segurança que representam um problema de segurança mais grave quando considerados em conjunto.
SENSITIVE_DATA_RISK Descreve um possível risco de segurança para recursos de dados que contêm dados sensíveis.

Indicador

Representa o que é comumente conhecido como um indicador de comprometimento (IoC) na perícia forense de computadores. É um artefato observado em uma rede ou em um sistema operacional que, com alta confiança, indica uma invasão de computador. Para mais informações, consulte Indicador de comprometimento.

Representação JSON
{
  "ipAddresses": [
    string
  ],
  "domains": [
    string
  ],
  "signatures": [
    {
      object (ProcessSignature)
    }
  ],
  "uris": [
    string
  ]
}
Campos
ipAddresses[]

string

A lista de endereços IP associados à descoberta.

domains[]

string

Lista de domínios associados à descoberta.

signatures[]

object (ProcessSignature)

A lista de assinaturas correspondentes que indicam que o processo está presente no ambiente.

uris[]

string

A lista de URIs associados às descobertas.

ProcessSignature

Indica qual assinatura corresponde a esse processo.

Representação 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)

Descreve o tipo de recurso associado à assinatura.

Campo de união signature.

signature pode ser apenas de um dos tipos a seguir:

memoryHashSignature

object (MemoryHashSignature)

Assinatura que indica que uma família binária foi correspondida.

yaraRuleSignature

object (YaraRuleSignature)

Assinatura indicando que uma regra YARA foi correspondida.

MemoryHashSignature

Uma assinatura correspondente a hashes de páginas de memória.

Representação JSON
{
  "binaryFamily": string,
  "detections": [
    {
      object (Detection)
    }
  ]
}
Campos
binaryFamily

string

A família binária.

detections[]

object (Detection)

A lista de detecções de hash de memória que contribuem para a correspondência da família binária.

Detecção

A detecção de hash de memória contribui para a correspondência da família binária.

Representação JSON
{
  "binary": string,
  "percentPagesMatched": number
}
Campos
binary

string

O nome do binário associado à detecção de assinatura de hash de memória.

percentPagesMatched

number

A porcentagem de hashes de página de memória na assinatura que foram correspondidos.

YaraRuleSignature

Uma assinatura correspondente a uma regra YARA.

Representação JSON
{
  "yaraRule": string
}
Campos
yaraRule

string

O nome da regra YARA.

SignatureType

Possíveis tipos de recurso a serem associados a uma assinatura.

Enums
SIGNATURE_TYPE_UNSPECIFIED O tipo de assinatura padrão.
SIGNATURE_TYPE_PROCESS Usado para assinaturas relacionadas a processos.
SIGNATURE_TYPE_FILE Usado para assinaturas relacionadas a discos.

Vulnerabilidade

Refere-se a campos de vulnerabilidade comuns, por exemplo, CVE, CVSS, CWE etc.

Representação JSON
{
  "cve": {
    object (Cve)
  },
  "offendingPackage": {
    object (Package)
  },
  "fixedPackage": {
    object (Package)
  },
  "securityBulletin": {
    object (SecurityBulletin)
  }
}
Campos
cve

object (Cve)

CVE é a sigla para Common Vulnerabilities and Exposures (vulnerabilidades e exposições comuns) (https://cve.mitre.org/about/).

offendingPackage

object (Package)

O pacote em questão é relevante para a descoberta.

fixedPackage

object (Package)

O pacote corrigido é relevante para a descoberta.

securityBulletin

object (SecurityBulletin)

O boletim de segurança é relevante para essa descoberta.

Cve

CVE é a sigla para Common Vulnerabilities and Exposures (vulnerabilidades e exposições comuns). Informações do registro de CVE que descrevem essa vulnerabilidade.

Representação 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

O identificador exclusivo da vulnerabilidade. Por exemplo, CVE-2021-34527.

references[]

object (Reference)

Outras informações sobre o CVE. Por exemplo, https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527

cvssv3

object (Cvssv3)

Descreva o sistema de pontuação de vulnerabilidade comum especificado em https://www.first.org/cvss/v3.1/specification-document

upstreamFixAvailable

boolean

Indica se a correção upstream está disponível para a CVE.

impact

enum (RiskRating)

O possível impacto da vulnerabilidade caso ela precise ser explorada.

exploitationActivity

enum (ExploitationActivity)

A atividade de exploração da vulnerabilidade na natureza.

observedInTheWild

boolean

Se a vulnerabilidade foi observada em ambiente não controlado.

zeroDay

boolean

Indica se a vulnerabilidade era zero-day quando a descoberta foi publicada.

exploitReleaseDate

string (Timestamp format)

Data de lançamento do primeiro exploit ou PoC disponível publicamente.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

firstExploitationDate

string (Timestamp format)

Data da primeira exploração conhecida.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Referência

Outros links

Representação JSON
{
  "source": string,
  "uri": string
}
Campos
source

string

Origem da referência, por exemplo, NVD

uri

string

Uri da fonte mencionada, por exemplo, https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.

Cvssv3

Sistema de Pontuação de Vulnerabilidades Comuns versão 3.

Representação 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

A pontuação base é uma função das pontuações das métricas básicas.

attackVector

enum (AttackVector)

Métricas básicas Representam as características intrínsecas de uma vulnerabilidade que são constantes ao longo do tempo e em todos os ambientes do usuário. Essa métrica reflete o contexto em que a exploração de vulnerabilidades é possível.

attackComplexity

enum (AttackComplexity)

Essa métrica descreve as condições além do controle do invasor que precisam existir para explorar a vulnerabilidade.

privilegesRequired

enum (PrivilegesRequired)

Essa métrica descreve o nível de privilégios que um invasor precisa ter antes de explorar a vulnerabilidade.

userInteraction

enum (UserInteraction)

Essa métrica captura o requisito de um usuário humano, diferente do invasor, para participar do comprometimento bem-sucedido do componente vulnerável.

scope

enum (Scope)

A métrica "Escopo" captura se uma vulnerabilidade em um componente vulnerável afeta os recursos em componentes além do escopo de segurança.

confidentialityImpact

enum (Impact)

Essa métrica mede o impacto na confidencialidade dos recursos de informações gerenciados por um componente de software devido a uma vulnerabilidade explorada com sucesso.

integrityImpact

enum (Impact)

Essa métrica mede o impacto na integridade de uma vulnerabilidade explorada com sucesso.

availabilityImpact

enum (Impact)

Essa métrica mede o impacto na disponibilidade do componente afetado resultante de uma vulnerabilidade explorada.

AttackVector

Essa métrica reflete o contexto em que a exploração de vulnerabilidades é possível.

Enums
ATTACK_VECTOR_UNSPECIFIED Valor inválido.
ATTACK_VECTOR_NETWORK O componente vulnerável está vinculado à pilha de rede, e o conjunto de possíveis invasores se estende além das outras opções listadas abaixo, incluindo toda a Internet.
ATTACK_VECTOR_ADJACENT O componente vulnerável está vinculado à pilha de rede, mas o ataque é limitado ao nível do protocolo a uma topologia logicamente adjacente.
ATTACK_VECTOR_LOCAL O componente vulnerável não está vinculado à pilha de rede, e o caminho do invasor é por recursos de leitura/gravação/execução.
ATTACK_VECTOR_PHYSICAL O ataque exige que o invasor toque ou manipule fisicamente o componente vulnerável.

AttackComplexity

Essa métrica descreve as condições além do controle do invasor que precisam existir para explorar a vulnerabilidade.

Enums
ATTACK_COMPLEXITY_UNSPECIFIED Valor inválido.
ATTACK_COMPLEXITY_LOW Não existem condições de acesso especializadas ou circunstâncias atenuantes. Um invasor pode esperar sucesso repetido ao atacar o componente vulnerável.
ATTACK_COMPLEXITY_HIGH Um ataque bem-sucedido depende de condições fora do controle do invasor. Ou seja, um ataque bem-sucedido não pode ser realizado à vontade, mas exige que o invasor invista em algum esforço mensurável na preparação ou execução contra o componente vulnerável antes que um ataque bem-sucedido possa ser esperado.

PrivilegesRequired

Essa métrica descreve o nível de privilégios que um invasor precisa ter antes de explorar a vulnerabilidade.

Enums
PRIVILEGES_REQUIRED_UNSPECIFIED Valor inválido.
PRIVILEGES_REQUIRED_NONE O invasor não tem autorização antes do ataque e, portanto, não precisa de acesso a configurações ou arquivos do sistema vulnerável para realizar um ataque.
PRIVILEGES_REQUIRED_LOW O invasor precisa de privilégios que ofereçam recursos básicos de usuário que normalmente afetam apenas as configurações e os arquivos de um usuário. Como alternativa, um invasor com privilégios baixos só pode acessar recursos não sensíveis.
PRIVILEGES_REQUIRED_HIGH O invasor precisa de privilégios que ofereçam controle significativo (por exemplo, administrativo) sobre o componente vulnerável, permitindo o acesso a configurações e arquivos em todo o componente.

UserInteraction

Essa métrica captura o requisito de um usuário humano, diferente do invasor, para participar do comprometimento bem-sucedido do componente vulnerável.

Enums
USER_INTERACTION_UNSPECIFIED Valor inválido.
USER_INTERACTION_NONE O sistema vulnerável pode ser explorado sem a interação de nenhum usuário.
USER_INTERACTION_REQUIRED Para que essa vulnerabilidade seja explorada, o usuário precisa realizar algumas ações.

Escopo

A métrica "Escopo" captura se uma vulnerabilidade em um componente vulnerável afeta os recursos em componentes além do escopo de segurança.

Enums
SCOPE_UNSPECIFIED Valor inválido.
SCOPE_UNCHANGED Uma vulnerabilidade explorada só pode afetar recursos gerenciados pela mesma autoridade de segurança.
SCOPE_CHANGED Uma vulnerabilidade explorada pode afetar recursos além do escopo de segurança gerenciado pela autoridade de segurança do componente vulnerável.

Impacto

As métricas de impacto capturam os efeitos de uma vulnerabilidade explorada com sucesso no componente que sofre o pior resultado associado ao ataque de forma mais direta e previsível.

Enums
IMPACT_UNSPECIFIED Valor inválido.
IMPACT_HIGH Alto impacto.
IMPACT_LOW Impacto baixo.
IMPACT_NONE Sem impacto.

RiskRating

Os valores possíveis de impacto da vulnerabilidade se ela for explorada.

Enums
RISK_RATING_UNSPECIFIED Valor inválido ou vazio.
LOW A exploração teria pouco ou nenhum impacto na segurança.
MEDIUM A exploração permitiria que os invasores realizassem atividades ou tivessem um impacto direto, mas exigiria outras etapas.
HIGH A exploração permitiria que os invasores tivessem um impacto direto significativo sem precisar superar os principais fatores atenuantes.
CRITICAL A exploração comprometeria a segurança dos sistemas afetados, permitindo que os agentes realizem ataques significativos com o mínimo de esforço, com poucos ou nenhum fator de mitigação.

ExploitationActivity

Os valores possíveis da atividade de exploração da vulnerabilidade na natureza.

Enums
EXPLOITATION_ACTIVITY_UNSPECIFIED Valor inválido ou vazio.
WIDE A exploração foi relatada ou confirmada como amplamente utilizada.
CONFIRMED Atividades de exploração relatadas ou confirmadas limitadas.
AVAILABLE A exploração está disponível publicamente.
ANTICIPATED Não há atividade de exploração conhecida, mas há um alto potencial de exploração.
NO_KNOWN Nenhuma atividade de exploração conhecida.

Pacote

O pacote é uma definição genérica de um pacote.

Representação JSON
{
  "packageName": string,
  "cpeUri": string,
  "packageType": string,
  "packageVersion": string
}
Campos
packageName

string

O nome do pacote em que a vulnerabilidade foi detectada.

cpeUri

string

O URI do CPE em que a vulnerabilidade foi detectada.

packageType

string

Tipo de pacote, por exemplo, os, maven ou go.

packageVersion

string

A versão do pacote.

SecurityBulletin

Os boletins de segurança são notificações de vulnerabilidades de produtos do Google.

Representação JSON
{
  "bulletinId": string,
  "submissionTime": string,
  "suggestedUpgradeVersion": string
}
Campos
bulletinId

string

ID do boletim correspondente à vulnerabilidade.

submissionTime

string (Timestamp format)

Hora de envio deste boletim de segurança.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

suggestedUpgradeVersion

string

Isso representa uma versão para a qual o cluster que recebe essa notificação precisa ser atualizado com base na versão atual. Por exemplo, 1.15.0

ExternalSystem

Representação de campos de SIEM/SOAR de terceiros na SCC.

Representação 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

Nome completo do recurso do sistema externo. Confira alguns exemplos na lista a seguir:

  • organizations/1234/sources/5678/findings/123456/externalSystems/jira + organizations/1234/sources/5678/locations/us/findings/123456/externalSystems/jira
  • folders/1234/sources/5678/findings/123456/externalSystems/jira + folders/1234/sources/5678/locations/us/findings/123456/externalSystems/jira
  • projects/1234/sources/5678/findings/123456/externalSystems/jira + projects/1234/sources/5678/locations/us/findings/123456/externalSystems/jira
assignees[]

string

Faz referência a usuários atribuídos primários/secundários etc. no sistema externo.

externalUid

string

O identificador usado para rastrear o caso correspondente da descoberta no sistema externo.

status

string

O status mais recente do caso correspondente à descoberta, conforme informado pelo sistema externo.

externalSystemUpdateTime

string (Timestamp format)

Hora em que o caso foi atualizado pela última vez, conforme informado pelo sistema externo.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

caseUri

string

O link para o caso correspondente da descoberta no sistema externo.

casePriority

string

A prioridade do caso correspondente da descoberta no sistema externo.

caseSla

string (Timestamp format)

O SLA do caso correspondente da descoberta no sistema externo.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

caseCreateTime

string (Timestamp format)

O horário em que o caso foi criado, conforme informado pelo sistema externo.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

caseCloseTime

string (Timestamp format)

O horário em que o caso foi encerrado, conforme informado pelo sistema externo.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

ticketInfo

object (TicketInfo)

Informações sobre o tíquete, se houver, que está sendo usado para acompanhar a resolução do problema identificado por essa descoberta.

TicketInfo

Informações sobre o tíquete, se houver, que está sendo usado para acompanhar a resolução do problema identificado por essa descoberta.

Representação JSON
{
  "id": string,
  "assignee": string,
  "description": string,
  "uri": string,
  "status": string,
  "updateTime": string
}
Campos
id

string

O identificador do ingresso no sistema de passagens.

assignee

string

O atribuído da passagem no sistema de passagens.

description

string

A descrição do tíquete no sistema de tíquetes.

uri

string

O link para o ingresso no sistema de passagens.

status

string

O status mais recente do ingresso, conforme informado pelo sistema de ingressos.

updateTime

string (Timestamp format)

Hora em que o tíquete foi atualizado pela última vez, conforme informado pelo sistema de tíquetes.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

MitreAttack

Táticas e técnicas do MITRE ATT&CK relacionadas a essa descoberta. Consulte: https://attack.mitre.org

Representação JSON
{
  "primaryTactic": enum (Tactic),
  "primaryTechniques": [
    enum (Technique)
  ],
  "additionalTactics": [
    enum (Tactic)
  ],
  "additionalTechniques": [
    enum (Technique)
  ],
  "version": string
}
Campos
primaryTactic

enum (Tactic)

A tática do MITRE ATT&CK mais bem representada por essa descoberta, se houver.

primaryTechniques[]

enum (Technique)

A técnica do MITRE ATT&CK mais bem representada por essa descoberta, se houver. primaryTechniques é um campo repetido porque há vários níveis de técnicas do MITRE ATT&CK. Se a técnica mais bem representada por essa descoberta for uma subtécnica (por exemplo, SCANNING_IP_BLOCKS), a subtécnica e as técnicas mãe dela serão listadas (por exemplo, SCANNING_IP_BLOCKS, ACTIVE_SCANNING).

additionalTactics[]

enum (Tactic)

Outras táticas do MITRE ATT&CK relacionadas a essa descoberta, se houver.

additionalTechniques[]

enum (Technique)

Outras técnicas do MITRE ATT&CK relacionadas a essa descoberta, se houver, e as respectivas técnicas mãe.

version

string

A versão do MITRE ATT&CK referenciada pelos campos acima. Por exemplo, "8".

Tática

Táticas do MITRE ATT&CK que podem ser referenciadas pelas descobertas do SCC. Consulte: https://attack.mitre.org/tactics/enterprise/

Enums
TACTIC_UNSPECIFIED Valor não especificado.
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 do MITRE ATT&CK que podem ser referenciadas pelas descobertas do SCC. Consulte: https://attack.mitre.org/techniques/enterprise/

Enums
TECHNIQUE_UNSPECIFIED Valor não especificado.
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

Acesso

Representa um evento de acesso.

Representação 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

E-mail associado, como "foo@google.com".

O endereço de e-mail do usuário autenticado ou de uma conta de serviço que atua em nome de um principal de terceiros que faz a solicitação. Para chamadores de identidade de terceiros, o campo principalSubject é preenchido em vez deste. Por motivos de privacidade, às vezes o endereço de e-mail principal é editado. Para mais informações, consulte Identidades do autor da chamada em registros de auditoria.

callerIp

string

Endereço IP do autor da chamada, como "1.1.1.1".

callerIpGeo

object (Geolocation)

A geolocalização do IP do autor da chamada, que identifica de onde a chamada partiu.

userAgentFamily

string

Tipo de user agent associado à descoberta. Por exemplo, um shell do sistema operacional ou um aplicativo integrado ou independente.

userAgent

string

A string de user agent do autor da chamada associada à descoberta.

serviceName

string

É o serviço de API para o qual a conta de serviço fez uma chamada, por exemplo, "iam.googleapis.com".

methodName

string

O método chamado pela conta de serviço, por exemplo, "SetIamPolicy".

principalSubject

string

Uma string que representa o principalSubject associado à identidade. Ao contrário de principalEmail, principalSubject aceita participantes que não estão associados a endereços de e-mail, como participantes de terceiros. Para a maioria das identidades, o formato é principal://iam.googleapis.com/{identity pool name}/subject/{subject}. Algumas identidades do GKE, como GKE_WORKLOAD, FREEFORM e GKE_HUB_WORKLOAD, ainda usam o formato serviceAccount:{identity pool name}[{subject}].

serviceAccountKeyName

string

O nome da chave da conta de serviço usada para criar ou trocar credenciais ao autenticar a conta de serviço que fez a solicitação. Este é um nome completo de recurso de URI sem esquema. Exemplo:

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

serviceAccountDelegationInfo[]

object (ServiceAccountDelegationInfo)

O histórico de delegação de identidade de uma conta de serviço autenticada que fez a solicitação. O objeto serviceAccountDelegationInfo[] contém informações sobre as autoridades reais que tentam acessar os recursos do Google Cloud delegando a uma conta de serviço. Quando várias autoridades estão presentes, elas são classificadas com base na ordem original dos eventos de delegação de identidade.

userName

string

Uma string que representa um nome de usuário. O nome de usuário fornecido depende do tipo da descoberta e provavelmente não é um principal do IAM. Por exemplo, pode ser um nome de usuário do sistema se a descoberta estiver relacionada a uma máquina virtual ou um nome de usuário de login de aplicativo.

Geolocalização

Representa um local geográfico para um determinado acesso.

Representação JSON
{
  "regionCode": string
}
Campos
regionCode

string

Um CLDR.

ServiceAccountDelegationInfo

Histórico de delegação de identidade de uma conta de serviço autenticada.

Representação JSON
{
  "principalEmail": string,
  "principalSubject": string
}
Campos
principalEmail

string

O endereço de e-mail de uma Conta do Google.

principalSubject

string

Uma string que representa o principalSubject associado à identidade. Em comparação com principalEmail, oferece suporte a participantes que não estão associados a endereços de e-mail, como participantes de terceiros. Para a maioria das identidades, o formato será principal://iam.googleapis.com/{identity pool name}/subjects/{subject}, exceto para algumas identidades do GKE (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) que ainda estão no formato serviceAccount:{identity pool name}[{subject}] legados.

Conexão

Contém informações sobre a conexão IP associada à descoberta.

Representação JSON
{
  "destinationIp": string,
  "destinationPort": integer,
  "sourceIp": string,
  "sourcePort": integer,
  "protocol": enum (Protocol)
}
Campos
destinationIp

string

Endereço IP de destino. Não está presente para soquetes que estão aguardando e não estão conectados.

destinationPort

integer

Porta de destino. Não está presente para soquetes que estão aguardando e não estão conectados.

sourceIp

string

Endereço IP de origem.

sourcePort

integer

Porta de origem.

protocol

enum (Protocol)

Número do protocolo de Internet da IANA, como TCP(6) e UDP(17).

Protocolo

Número do protocolo de Internet da IANA, como TCP(6) e UDP(17).

Enums
PROTOCOL_UNSPECIFIED Protocolo não especificado (não HOPOPT).
ICMP Internet Control Message Protocol.
TCP Protocolo de controle de transmissão.
UDP Protocolo de datagramas do usuário.
GRE Encapsulamento de roteamento genérico.
ESP Encap Security Payload.

Processo

Representa um processo do sistema operacional.

Representação 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

O nome do processo, conforme exibido em utilitários como top e ps. Esse nome pode ser acessado por /proc/[pid]/comm e alterado com prctl(PR_SET_NAME).

binary

object (File)

Informações do arquivo para o executável do processo.

libraries[]

object (File)

Informações de arquivo para bibliotecas carregadas pelo processo.

script

object (File)

Quando o processo representa a invocação de um script, binary fornece informações sobre o interpretador, enquanto script fornece informações sobre o arquivo de script fornecido ao interpretador.

args[]

string

Processa argumentos como strings codificadas em JSON.

argumentsTruncated

boolean

Verdadeiro se args estiver incompleto.

envVariables[]

object (EnvironmentVariable)

Processar variáveis de ambiente.

envVariablesTruncated

boolean

Verdadeiro se envVariables estiver incompleto.

pid

string (int64 format)

O ID do processo.

parentPid

string (int64 format)

O ID do processo pai.

Arquivo

Informações de arquivo sobre o binário/biblioteca relacionado usado por um executável ou o script usado por um interpretador de script

Representação JSON
{
  "path": string,
  "size": string,
  "sha256": string,
  "hashedSize": string,
  "partiallyHashed": boolean,
  "contents": string,
  "diskPath": {
    object (DiskPath)
  }
}
Campos
path

string

Caminho absoluto do arquivo como uma string codificada em JSON.

size

string (int64 format)

Tamanho do arquivo em bytes.

sha256

string

Hash SHA256 dos primeiros bytes hashedSize do arquivo codificados como uma string hexadecimal. Se hashedSize == size, sha256 representa o hash SHA256 do arquivo inteiro.

hashedSize

string (int64 format)

O comprimento em bytes do prefixo do arquivo que foi gerado. Se hashedSize == size, todos os hashes informados representam o arquivo inteiro.

partiallyHashed

boolean

Verdadeiro quando o hash abrange apenas um prefixo do arquivo.

contents

string

Prefixo do conteúdo do arquivo como uma string codificada em JSON.

diskPath

object (DiskPath)

Caminho do arquivo em termos de identificadores de disco/partição.

DiskPath

Caminho do arquivo em termos de identificadores de disco/partição.

Representação JSON
{
  "partitionUuid": string,
  "relativePath": string
}
Campos
partitionUuid

string

UUID da partição (formato https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid)

relativePath

string

Caminho relativo do arquivo na partição como uma string codificada em JSON. Exemplo: /home/user1/executable_file.sh

EnvironmentVariable

Um par de nome-valor que representa uma variável de ambiente usada em um processo do sistema operacional.

Representação JSON
{
  "name": string,
  "val": string
}
Campos
name

string

Nome da variável de ambiente como uma string codificada em JSON.

val

string

Valor da variável de ambiente como uma string codificada em JSON.

ContactDetails

Detalhes sobre contatos específicos

Representação JSON
{
  "contacts": [
    {
      object (Contact)
    }
  ]
}
Campos
contacts[]

object (Contact)

Uma lista de contatos

Contato

O endereço de e-mail de um contato.

Representação JSON
{
  "email": string
}
Campos
email

string

Um endereço de e-mail. Por exemplo, "person123@company.com".

Compliance

Contém informações de compliance sobre um padrão de segurança que indica recomendações não atendidas.

Representação JSON
{
  "standard": string,
  "version": string,
  "ids": [
    string
  ]
}
Campos
standard

string

Padrões ou comparativos de mercado do setor, como CIS, PCI e OWASP.

version

string

Versão do padrão ou do comparativo, por exemplo, 1.1

ids[]

string

Políticas dentro do padrão ou do comparativo de mercado, por exemplo, A.12.4.1

Exfiltração

A exfiltração representa uma tentativa de exfiltração de dados de uma ou mais origens para um ou mais destinos. O atributo sources lista as origens dos dados exfiltrados. O atributo targets lista os destinos para onde os dados foram copiados.

Representação JSON
{
  "sources": [
    {
      object (ExfilResource)
    }
  ],
  "targets": [
    {
      object (ExfilResource)
    }
  ],
  "totalExfiltratedBytes": string
}
Campos
sources[]

object (ExfilResource)

Se houver várias fontes, os dados serão considerados "agrupados" entre elas. Por exemplo, o BigQuery pode mesclar várias tabelas, e cada uma delas é considerada uma origem.

targets[]

object (ExfilResource)

Se houver vários destinos, cada um deles vai receber uma cópia completa dos dados de origem "combinados".

totalExfiltratedBytes

string (int64 format)

Total de bytes exfiltrados processados para todo o job.

ExfilResource

Recurso de onde ou para onde os dados foram exfiltrados.

Representação JSON
{
  "name": string,
  "components": [
    string
  ]
}
Campos
name

string

O nome completo do recurso.

components[]

string

Subcomponentes do recurso que foi exfiltrado, como URIs usados durante a exfiltração, nomes de tabelas, bancos de dados e nomes de arquivos. Por exemplo, várias tabelas podem ter sido exfiltradas da mesma instância do Cloud SQL ou vários arquivos podem ter sido exfiltrados do mesmo bucket do Cloud Storage.

IamBinding

Representa uma vinculação específica do IAM, que captura a adição, a remoção ou o estado do papel de um membro.

Representação JSON
{
  "action": enum (Action),
  "role": string,
  "member": string
}
Campos
action

enum (Action)

A ação que foi realizada em uma vinculação.

role

string

Função atribuída aos "participantes". Por exemplo, "roles/viewer", "roles/editor" ou "roles/owner".

member

string

Uma única identidade que solicita acesso a um recurso do Cloud Platform, por exemplo, "foo@google.com".

Ação

O tipo de ação realizada em uma vinculação em uma política.

Enums
ACTION_UNSPECIFIED Não especificado.
ADD Adição de uma vinculação.
REMOVE Remoção de uma vinculação.

Contêiner

Contêiner associado à descoberta.

Representação JSON
{
  "name": string,
  "uri": string,
  "imageId": string,
  "labels": [
    {
      object (Label)
    }
  ],
  "createTime": string
}
Campos
name

string

Nome do contêiner.

uri

string

URI da imagem do contêiner fornecido ao configurar um pod ou contêiner. Essa string pode identificar uma versão da imagem do contêiner usando tags mutáveis.

imageId

string

ID da imagem do contêiner opcional, se fornecido pelo ambiente de execução do contêiner. Identifica de forma exclusiva a imagem do contêiner iniciada usando um resumo de imagem do contêiner.

labels[]

object (Label)

Rótulos de contêineres, conforme fornecidos pelo ambiente de execução do contêiner.

createTime

string (Timestamp format)

O horário em que o contêiner foi criado.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Rótulo

Representa um rótulo de nome-valor genérico. Um rótulo tem campos de nome e valor separados para oferecer suporte à filtragem com a função contains(). Para mais informações, consulte Como filtrar campos do tipo matriz.

Representação JSON
{
  "name": string,
  "value": string
}
Campos
name

string

Nome do marcador.

value

string

Valor que corresponde ao nome do rótulo.

Kubernetes

Atributos relacionados ao Kubernetes.

Representação 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 do Kubernetes associados à descoberta. Esse campo contém registros de pod para cada contêiner que é de propriedade de um pod.

nodes[]

object (Node)

Fornece informações do do Kubernetes.

nodePools[]

object (NodePool)

Pools de nós do GKE associados à descoberta. Esse campo contém informações do pool de nós para cada nó, quando disponível.

roles[]

object (Role)

Fornece informações de função do Kubernetes para descobertas que envolvem funções ou ClusterRoles.

bindings[]

object (Binding)

Fornece informações de vinculação de papéis do Kubernetes para descobertas que envolvem RoleBindings ou ClusterRoleBindings.

accessReviews[]

object (AccessReview)

Fornece informações sobre todas as análises de acesso do Kubernetes (verificações de privilégio) relevantes para a descoberta.

objects[]

object (Object)

Objetos do Kubernetes relacionados à descoberta.

Pod

Um pod do Kubernetes.

Representação JSON
{
  "ns": string,
  "name": string,
  "labels": [
    {
      object (Label)
    }
  ],
  "containers": [
    {
      object (Container)
    }
  ]
}
Campos
ns

string

Namespace do pod do Kubernetes.

name

string

Nome do pod do Kubernetes.

labels[]

object (Label)

Identificadores de pods. Para contêineres do Kubernetes, elas são aplicadas ao contêiner.

containers[]

object (Container)

Contêineres de pod associados a essa descoberta, se houver.

Nós do Kubernetes associados à descoberta.

Representação JSON
{
  "name": string
}
Campos
name

string

Nome completo do recurso da VM do Compute Engine que executa o nó do cluster.

NodePool

Fornece informações sobre o pool de nós do GKE.

Representação JSON
{
  "name": string,
  "nodes": [
    {
      object (Node)
    }
  ]
}
Campos
name

string

Nome do pool de nós do Kubernetes.

nodes[]

object (Node)

Nós associados à descoberta.

Papel

Papel do Kubernetes ou ClusterRole.

Representação JSON
{
  "kind": enum (Kind),
  "ns": string,
  "name": string
}
Campos
kind

enum (Kind)

Tipo de função.

ns

string

Namespace do papel.

name

string

Nome da função.

Tipo

Tipos de papéis do Kubernetes.

Enums
KIND_UNSPECIFIED O tipo de função não foi especificado.
ROLE Papel do Kubernetes.
CLUSTER_ROLE ClusterRole do Kubernetes.

Vinculação

Representa uma RoleBinding ou ClusterRoleBinding do Kubernetes.

Representação JSON
{
  "ns": string,
  "name": string,
  "role": {
    object (Role)
  },
  "subjects": [
    {
      object (Subject)
    }
  ]
}
Campos
ns

string

Namespace da vinculação.

name

string

Nome da vinculação.

role

object (Role)

O papel ou ClusterRole referenciado pela vinculação.

subjects[]

object (Subject)

Representa um ou mais sujeitos vinculados ao papel. Nem sempre disponível para solicitações PATCH.

Assunto

Representa um assunto do Kubernetes.

Representação JSON
{
  "kind": enum (AuthType),
  "ns": string,
  "name": string
}
Campos
kind

enum (AuthType)

Tipo de autenticação do assunto.

ns

string

Namespace do assunto.

name

string

Nome do assunto.

AuthType

Tipos de autenticação que podem ser usados para o campo "kind" do assunto.

Enums
AUTH_TYPE_UNSPECIFIED A autenticação não foi especificada.
USER Usuário com certificado válido.
SERVICEACCOUNT Usuários gerenciados pela API Kubernetes com credenciais armazenadas como secrets.
GROUP Conjunto de usuários.

AccessReview

Transmite informações sobre uma análise de acesso do Kubernetes (como a retornada por um comando kubectl auth can-i) que estava envolvida em uma descoberta.

Representação JSON
{
  "group": string,
  "ns": string,
  "name": string,
  "resource": string,
  "subresource": string,
  "verb": string,
  "version": string
}
Campos
group

string

O grupo de API do recurso. "*" significa tudo.

ns

string

Namespace da ação que está sendo solicitada. No momento, não há distinção entre nenhum namespace e todos os namespaces. Ambos são representados por "" (vazio).

name

string

O nome do recurso que está sendo solicitado. Vazio significa todos.

resource

string

O tipo de recurso opcional solicitado. "*" significa tudo.

subresource

string

O tipo de recurso filho opcional.

verb

string

Um verbo da API de recursos do Kubernetes, como "get", "list", "watch", "create", "update", "delete", "proxy". "*" significa tudo.

version

string

A versão da API do recurso. "*" significa tudo.

Objeto

Objeto do Kubernetes relacionado à descoberta, identificado de forma exclusiva pelo GKNN. Usado quando o tipo do objeto não é Pod, Node, NodePool, Binding ou AccessReview.

Representação JSON
{
  "group": string,
  "kind": string,
  "ns": string,
  "name": string,
  "containers": [
    {
      object (Container)
    }
  ]
}
Campos
group

string

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

kind

string

Tipo de objeto do Kubernetes, como "Namespace".

ns

string

Namespace do objeto do Kubernetes. Precisa ser um rótulo DNS válido. Nomeado "ns" para evitar colisão com a palavra-chave de namespace C++. Para mais detalhes, consulte https://kubernetes.io/docs/tasks/administer-cluster/namespaces/.

name

string

Nome do objeto do Kubernetes. Para mais detalhes, consulte https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.

containers[]

object (Container)

Contêineres de pod associados a essa descoberta, se houver.

Banco de dados

Representa informações de acesso ao banco de dados, como consultas. Um banco de dados pode ser um subrecurso de uma instância (como no caso de instâncias do Cloud SQL ou do Cloud Spanner) ou a própria instância do banco de dados. Alguns recursos de banco de dados podem não ter o nome completo do recurso preenchido porque esses tipos de recursos, como bancos de dados do Cloud SQL, ainda não são compatíveis com o Inventário de recursos do Cloud. Nesses casos, apenas o nome de exibição é fornecido.

Representação JSON
{
  "name": string,
  "displayName": string,
  "userName": string,
  "query": string,
  "grantees": [
    string
  ],
  "version": string
}
Campos
name

string

Alguns recursos de banco de dados podem não ter o nome completo do recurso preenchido porque esses tipos de recursos ainda não são aceitos pelo Inventário de recursos do Cloud, por exemplo, bancos de dados do Cloud SQL. Nesses casos, apenas o nome de exibição será fornecido. O nome completo do recurso do banco de dados ao qual o usuário se conectou, se ele tiver suporte do Inventário de recursos do Cloud.

displayName

string

O nome legível por humanos do banco de dados ao qual o usuário se conectou.

userName

string

O nome de usuário usado para se conectar ao banco de dados. O nome de usuário pode não ser um principal do IAM e não tem um formato definido.

query

string

A instrução SQL associada ao acesso ao banco de dados.

grantees[]

string

Os nomes de usuário, papéis ou grupos de destino de uma concessão de privilégios SQL, que não é uma alteração de política do IAM.

version

string

A versão do banco de dados, por exemplo, POSTGRES_14. Confira a lista completa.

AttackExposure

Uma exposição a ataques contém os resultados de uma execução de simulação de caminho de ataque.

Representação JSON
{
  "score": number,
  "latestCalculationTime": string,
  "attackExposureResult": string,
  "state": enum (State),
  "exposedHighValueResourcesCount": integer,
  "exposedMediumValueResourcesCount": integer,
  "exposedLowValueResourcesCount": integer
}
Campos
score

number

Um número entre 0 (inclusive) e infinito que representa a importância de corrigir essa descoberta. Quanto maior a pontuação, mais importante é a correção.

latestCalculationTime

string (Timestamp format)

A última vez que a exposição a ataques foi atualizada nesta descoberta.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

attackExposureResult

string

O nome do recurso do resultado da simulação de caminho de ataque que contém os detalhes relacionados a essa pontuação de exposição a ataques. Exemplo: organizations/123/simulations/456/attackExposureResults/789

state

enum (State)

Apenas saída. O estado em que essa AttackExposure está. Isso captura se uma exposição ao ataque foi calculada ou não.

exposedHighValueResourcesCount

integer

O número de recursos de alto valor expostos como resultado dessa descoberta.

exposedMediumValueResourcesCount

integer

O número de recursos de valor médio que são expostos como resultado dessa descoberta.

exposedLowValueResourcesCount

integer

O número de recursos de alto valor expostos como resultado dessa descoberta.

Estado

Esse tipo enumerado define os vários estados em que uma AttackExposure pode estar.

Enums
STATE_UNSPECIFIED O estado não foi especificado.
CALCULATED A exposição a ataques foi calculada.
NOT_CALCULATED A exposição ao ataque não foi calculada.

CloudDlpInspection

Detalhes sobre o job de inspeção do Cloud Data Loss Prevention (DLP) que produziu a descoberta.

Representação JSON
{
  "inspectJob": string,
  "infoType": string,
  "infoTypeCount": string,
  "fullScan": boolean
}
Campos
inspectJob

string

Nome do job de inspeção, por exemplo, projects/123/locations/europe/dlpJobs/i-8383929.

infoType

string

O tipo de informação (ou infoType) encontrado, por exemplo, EMAIL_ADDRESS ou STREET_ADDRESS.

infoTypeCount

string (int64 format)

O número de vezes que o Cloud DLP encontrou esse infoType neste job e recurso.

fullScan

boolean

Se o Cloud DLP verificou o recurso completo ou um subconjunto de amostra.

CloudDlpDataProfile

O perfil de dados associado à descoberta.

Representação JSON
{
  "dataProfile": string,
  "parentType": enum (ParentType)
}
Campos
dataProfile

string

Nome do perfil de dados, por exemplo, projects/123/locations/europe/tableProfiles/8383929.

parentType

enum (ParentType)

O nível da hierarquia de recursos em que o perfil de dados foi gerado.

ParentType

Pais de configurações que produzem descobertas de perfil de dados.

Enums
PARENT_TYPE_UNSPECIFIED Tipo pai não especificado.
ORGANIZATION Configurações no nível da organização.
PROJECT Configurações no nível do projeto.

KernelRootkit

Assinaturas de rootkit no modo kernel.

Representação JSON
{
  "name": string,
  "unexpectedCodeModification": boolean,
  "unexpectedReadOnlyDataModification": boolean,
  "unexpectedFtraceHandler": boolean,
  "unexpectedKprobeHandler": boolean,
  "unexpectedKernelCodePages": boolean,
  "unexpectedSystemCallHandler": boolean,
  "unexpectedInterruptHandler": boolean,
  "unexpectedProcessesInRunqueue": boolean
}
Campos
name

string

Nome do rootkit, quando disponível.

unexpectedCodeModification

boolean

Verdadeiro se houver modificações inesperadas na memória do código do kernel.

unexpectedReadOnlyDataModification

boolean

Verdadeiro se houver modificações inesperadas da memória de dados somente leitura do kernel.

unexpectedFtraceHandler

boolean

Verdadeiro se os pontos ftrace estiverem presentes com callbacks que apontam para regiões que não estão no intervalo de código do módulo ou kernel esperado.

unexpectedKprobeHandler

boolean

Verdadeiro se os pontos kprobe estiverem presentes com callbacks que apontam para regiões que não estão no intervalo de código do módulo ou kernel esperado.

unexpectedKernelCodePages

boolean

Verdadeiro se as páginas de código do kernel que não estão nas regiões de código de kernel ou módulo esperadas estiverem presentes.

unexpectedSystemCallHandler

boolean

Verdadeiro se os gerenciadores de chamadas do sistema que não estão nas regiões de código de módulo ou kernel esperadas estiverem presentes.

unexpectedInterruptHandler

boolean

Verdadeiro se os gerenciadores de interrupção que não estão nas regiões de código de módulo ou kernel esperados estão presentes.

unexpectedProcessesInRunqueue

boolean

Verdadeiro se houver processos inesperados na fila de execução do programador. Esses processos estão na fila de execução, mas não na lista de tarefas do processo.

OrgPolicy

Contém informações sobre as políticas da organização associadas à descoberta.

Representação JSON
{
  "name": string
}
Campos
name

string

Identificador. O nome do recurso da política da organização. Exemplo: "organizations/{organization_id}/policies/{constraint_name}"

Job

Descreve um job

Representação JSON
{
  "name": string,
  "state": enum (JobState),
  "errorCode": integer,
  "location": string
}
Campos
name

string

O nome totalmente qualificado de um job, por exemplo, projects/<projectId>/jobs/<job_id>

state

enum (JobState)

Apenas saída. Estado do job, como RUNNING ou PENDING.

errorCode

integer

Opcional. Se o job não foi concluído, este campo descreve o motivo.

location

string

Opcional. Indica o local em que o job foi executado, como US ou europe-west1

JobState

JobState representa o estado do job.

Enums
JOB_STATE_UNSPECIFIED Não especificado representa um estado desconhecido e não deve ser usado.
PENDING O job está programado e pendente de execução
RUNNING Job in progress
SUCCEEDED O job foi concluído.
FAILED O job foi concluído, mas com falha

Aplicativo

Representa um aplicativo associado a uma descoberta.

Representação JSON
{
  "baseUri": string,
  "fullUri": string
}
Campos
baseUri

string

O URI base que identifica o local de rede do aplicativo em que a vulnerabilidade foi detectada. Por exemplo, http://example.com

fullUri

string

O URI completo com payload que pode ser usado para reproduzir a vulnerabilidade. Por exemplo, http://example.com?p=aMmYgI6H

IpRules

Regras de IP associadas à descoberta.

Representação 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)

A direção em que a regra é aplicável, entrada ou saída.

sourceIpRanges[]

string

Se os intervalos de IP de origem forem especificados, a regra de firewall será aplicada apenas ao tráfego que tiver um endereço IP de origem nesses intervalos. Esses intervalos precisam ser expressos no formato CIDR. Suporte apenas para IPv4.

destinationIpRanges[]

string

Se os intervalos de IP de destino forem especificados, a regra de firewall será aplicada apenas ao tráfego que tiver um endereço IP de destino nesses intervalos. Esses intervalos precisam ser expressos no formato CIDR. Suporte apenas para IPv4.

exposedServices[]

string

Nome do serviço de protocolo de rede, como FTP, que é exposto pela porta aberta. Segue a convenção de nomenclatura disponível em: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml.

Campo de união rules. A lista de regras de permissão especificadas por esse firewall. Cada regra especifica um protocolo e uma tupla de intervalo de porta que descrevem uma conexão permitida. rules pode ser apenas de um dos tipos a seguir:
allowed

object (Allowed)

Tupla com regras permitidas.

denied

object (Denied)

Tupla com regras negadas.

Direção

O tipo de direção em que a regra é aplicável, entrada ou saída. Não se aplica aos resultados de OPEN_X_PORT.

Enums
DIRECTION_UNSPECIFIED Valor de direção não especificado.
INGRESS Valor da direção de entrada.
EGRESS Valor da direção de saída.

Permitido

Regra de IP permitida.

Representação JSON
{
  "ipRules": [
    {
      object (IpRule)
    }
  ]
}
Campos
ipRules[]

object (IpRule)

Opcional. Lista opcional de regras de IP permitidas.

IpRule

Informações da regra de IP.

Representação JSON
{
  "protocol": string,
  "portRanges": [
    {
      object (PortRange)
    }
  ]
}
Campos
protocol

string

O protocolo IP a que essa regra se aplica. Esse valor pode ser uma das seguintes strings de protocolo conhecidas (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) ou uma representação de string do valor inteiro.

portRanges[]

object (PortRange)

Opcional. Uma lista opcional de portas a que esta regra se aplica. Este campo é aplicável apenas aos protocolos UDP ou (S)TCP. Cada entrada precisa ser um número inteiro ou um intervalo que inclua um número de porta mínimo e máximo.

PortRange

Um intervalo de portas que inclui os valores mínimo e máximo. Os valores estão entre 0 e 2^16-1. O valor máximo pode ser igual / não pode ser menor que o valor mínimo. Se o mínimo e o máximo forem iguais, isso indica que é uma única porta.

Representação JSON
{
  "min": string,
  "max": string
}
Campos
min

string (int64 format)

Valor mínimo da porta.

max

string (int64 format)

Valor máximo da porta.

Negado

Regra de IP negada.

Representação JSON
{
  "ipRules": [
    {
      object (IpRule)
    }
  ]
}
Campos
ipRules[]

object (IpRule)

Opcional. Lista opcional de regras de IP negadas.

BackupDisasterRecovery

Informações relacionadas às descobertas do serviço de backup e DR do Google Cloud.

Representação JSON
{
  "backupTemplate": string,
  "policies": [
    string
  ],
  "host": string,
  "applications": [
    string
  ],
  "storagePool": string,
  "policyOptions": [
    string
  ],
  "profile": string,
  "appliance": string,
  "backupType": string,
  "backupCreateTime": string
}
Campos
backupTemplate

string

O nome de um modelo de backup e DR que inclui uma ou mais políticas de backup. Consulte a documentação sobre backup e DR para mais informações. Por exemplo, snap-ov.

policies[]

string

Os nomes das políticas de backup e DR associadas a um modelo e que definem quando executar um backup, com que frequência e por quanto tempo reter a imagem de backup. Por exemplo, onvaults

host

string

O nome de um host de backup e DR, que é gerenciado pelo dispositivo de backup e recuperação e conhecido pelo console de gerenciamento. O host pode ser do tipo genérico (por exemplo, Compute Engine, SQL Server, Oracle DB, sistema de arquivos SMB etc.), vCenter ou um servidor ESX. Consulte a documentação sobre backup e DR em hosts para mais informações. Por exemplo, centos7-01.

applications[]

string

Os nomes dos aplicativos de backup e DR. Um aplicativo é uma VM, um banco de dados ou um sistema de arquivos em um host gerenciado monitorado por um dispositivo de backup e recuperação. Por exemplo: centos7-01-vol00, centos7-01-vol01, centos7-01-vol02.

storagePool

string

O nome do pool de armazenamento de backup e DR em que o dispositivo de backup e recuperação está armazenando dados. O pool de armazenamento pode ser do tipo Cloud, Primary, Snapshot ou OnVault. Consulte a documentação sobre backup e DR em pools de armazenamento. Por exemplo, DiskPoolOne.

policyOptions[]

string

Os nomes das opções de política avançada de backup e DR de uma política aplicada a um aplicativo. Consulte a documentação sobre backup e DR em opções de política. Por exemplo, skipofflineappsincongrp, nounmap.

profile

string

O nome do perfil de recurso de backup e DR que especifica a mídia de armazenamento para backups de dados de aplicativo e VM. Consulte a documentação sobre backup e DR nos perfis. Por exemplo, GCP.

appliance

string

O nome do dispositivo de backup e DR que captura, move e gerencia o ciclo de vida dos dados de backup. Por exemplo, backup-server-57137

backupType

string

O tipo de backup da imagem de backup e DR. Por exemplo: Snapshot, Remote Snapshot, OnVault.

backupCreateTime

string (Timestamp format)

O carimbo de data/hora em que o backup e o backup de DR foram criados.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

SecurityPosture

Representa uma postura implantada no Google Cloud pelo serviço de gerenciamento de postura do Security Command Center. Uma postura contém um ou mais conjuntos de políticas. Um conjunto de políticas é um grupo de políticas que aplica um conjunto de regras de segurança no Google Cloud.

Representação JSON
{
  "name": string,
  "revisionId": string,
  "postureDeploymentResource": string,
  "postureDeployment": string,
  "changedPolicy": string,
  "policySet": string,
  "policy": string,
  "policyDriftDetails": [
    {
      object (PolicyDriftDetails)
    }
  ]
}
Campos
name

string

Nome da postura, por exemplo, CIS-Posture.

revisionId

string

A versão da postura, por exemplo, c7cfa2a8.

postureDeploymentResource

string

O projeto, a pasta ou a organização em que a postura é implantada, por exemplo, projects/{project_number}.

postureDeployment

string

O nome da implantação de postura, por exemplo, organizations/{org_id}/posturedeployments/{posture_deployment_id}.

changedPolicy

string

O nome da política atualizada, por exemplo, projects/{projectId}/policies/{constraint_name}.

policySet

string

O nome do conjunto de políticas atualizado, por exemplo, cis-policyset.

policy

string

O ID da política atualizada, por exemplo, compute-policy-1.

policyDriftDetails[]

object (PolicyDriftDetails)

Detalhes sobre uma mudança em uma política atualizada que viola a postura implantada.

PolicyDriftDetails

O campo de política que viola a postura implantada e os valores esperados e detectados.

Representação JSON
{
  "field": string,
  "expectedValue": string,
  "detectedValue": string
}
Campos
field

string

O nome do campo atualizado, por exemplo, constraint.implementation.policy_rules[0].enforce

expectedValue

string

O valor desse campo que foi configurado em uma postura, por exemplo, true ou allowed_values={"projects/29831892"}.

detectedValue

string

O valor detectado que viola a postura implantada, por exemplo, false ou allowed_values={"projects/22831892"}.

LogEntry

Uma entrada individual em um registro.

Representação 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ão log_entry.

log_entry pode ser apenas de um dos tipos a seguir:

cloudLoggingEntry

object (CloudLoggingEntry)

Uma entrada individual em um registro armazenado no Cloud Logging.

CloudLoggingEntry

Metadados de uma LogEntry do Cloud Logging

Representação JSON
{
  "insertId": string,
  "logId": string,
  "resourceContainer": string,
  "timestamp": string
}
Campos
insertId

string

Um identificador exclusivo da entrada de registro.

logId

string

O tipo de registro (parte de logName. logName é o nome do recurso do registro a que a entrada pertence. Por exemplo: cloudresourcemanager.googleapis.com/activity. Esse campo não é codificado para uso em URL, ao contrário de LogEntry.

resourceContainer

string

A organização, a pasta ou o projeto do recurso monitorado que produziu essa entrada de registro.

timestamp

string (Timestamp format)

A hora em que o evento descrito pela entrada de registro ocorreu.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

LoadBalancer

Contém informações relacionadas ao balanceador de carga associado à descoberta.

Representação JSON
{
  "name": string
}
Campos
name

string

O nome do balanceador de carga associado à descoberta.

CloudArmor

Campos relacionados às descobertas do Google Cloud Armor.

Representação JSON
{
  "securityPolicy": {
    object (SecurityPolicy)
  },
  "requests": {
    object (Requests)
  },
  "adaptiveProtection": {
    object (AdaptiveProtection)
  },
  "attack": {
    object (Attack)
  },
  "threatVector": string,
  "duration": string
}
Campos
securityPolicy

object (SecurityPolicy)

Informações sobre a política de segurança do Google Cloud Armor relevante para a descoberta.

requests

object (Requests)

Informações sobre as solicitações recebidas avaliadas pelas políticas de segurança do Google Cloud Armor.

adaptiveProtection

object (AdaptiveProtection)

Informações sobre possíveis ataques DDoS da camada 7 identificados pela Proteção adaptativa do Google Cloud Armor.

attack

object (Attack)

Informações sobre o volume e a classificação de ataques DDoS.

threatVector

string

Distinguir entre ataques de DDoS volumétricos e de protocolo e ataques na camada do aplicativo. Por exemplo, "L3_4" para ataques DDoS de camada 3 e 4 ou "L_7" para ataques DDoS de camada 7.

duration

string (Duration format)

Duração do ataque desde o início até o momento atual (atualizado a cada 5 minutos).

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

SecurityPolicy

Informações sobre a política de segurança do Google Cloud Armor relevante para a descoberta.

Representação JSON
{
  "name": string,
  "type": string,
  "preview": boolean
}
Campos
name

string

O nome da política de segurança do Google Cloud Armor, por exemplo, "my-security-policy".

type

string

O tipo de política de segurança do Google Cloud Armor, por exemplo, "política de segurança de back-end", "política de segurança de borda", "política de segurança de borda da rede" ou "proteção DDoS sempre ativada".

preview

boolean

Se a regra ou política associada está no modo de visualização.

Solicitações

Informações sobre as solicitações relevantes para a descoberta.

Representação JSON
{
  "ratio": number,
  "shortTermAllowed": integer,
  "longTermAllowed": integer,
  "longTermDenied": integer
}
Campos
ratio

number

Em "Aumento da taxa de negação", a proporção é o tráfego negado dividido pelo tráfego permitido. Para "Pico de tráfego permitido", a proporção é o tráfego permitido no curto prazo dividido pelo tráfego permitido no longo prazo.

shortTermAllowed

integer

RPS (solicitações por segundo) permitido no curto prazo.

longTermAllowed

integer

RPS (solicitações por segundo) permitidos a longo prazo.

longTermDenied

integer

RPS (solicitações por segundo) negados a longo prazo.

AdaptiveProtection

Informações sobre a Proteção adaptativa do Google Cloud Armor.

Representação JSON
{
  "confidence": number
}
Campos
confidence

number

Uma pontuação de 0 significa que há baixa confiança de que o evento detectado é um ataque real. Uma pontuação de 1 significa que há uma alta confiança de que o evento detectado é um ataque. Consulte a documentação da Proteção adaptável para mais explicações.

Atacar

Informações sobre o volume e a classificação de ataques DDoS.

Representação JSON
{
  "volumePpsLong": string,
  "volumeBpsLong": string,
  "classification": string,
  "volumePps": integer,
  "volumeBps": integer
}
Campos
volumePpsLong

string (int64 format)

Total de pacotes por segundo (PPS) de volume de ataque.

volumeBpsLong

string (int64 format)

Volume de ataque total de BPS (bytes por segundo).

classification

string

Tipo de ataque, por exemplo, "SYN-flood", "NTP-udp" ou "CHARGEN-udp".

volumePps
(deprecated)

integer

Total de pacotes por segundo (PPS) de volume de ataque. Obsoleto. Consulte volumePpsLong.

volumeBps
(deprecated)

integer

Volume de ataque total de BPS (bytes por segundo). Obsoleto. Consulte volumeBpsLong.

Notebook

Representa um arquivo IPYNB de notebook do Jupyter, como um arquivo de notebook do Colab Enterprise, associado a uma descoberta.

Representação JSON
{
  "name": string,
  "service": string,
  "lastAuthor": string,
  "notebookUpdateTime": string
}
Campos
name

string

O nome do notebook.

service

string

O serviço de bloco de origem, por exemplo, "Colab Enterprise".

lastAuthor

string

O ID do usuário que fez a última modificação no bloco de notas.

notebookUpdateTime

string (Timestamp format)

A última vez que o notebook foi atualizado.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

ToxicCombination

Contém detalhes sobre um grupo de problemas de segurança que, quando ocorrem juntos, representam um risco maior do que quando ocorrem de forma independente. Um grupo de problemas desse tipo é chamado de combinação tóxica.

Representação JSON
{
  "attackExposureScore": number,
  "relatedFindings": [
    string
  ]
}
Campos
attackExposureScore

number

A pontuação de exposição a ataques dessa combinação ruim. A pontuação é uma medida de quanto essa combinação tóxica expõe um ou mais recursos de alto valor a possíveis ataques.

relatedFindings[]

string

Lista de nomes de recursos das descobertas associadas a essa combinação tóxica. Por exemplo, organizations/123/sources/456/findings/789

GroupMembership

Contém detalhes sobre os grupos dos quais essa descoberta é membro. Um grupo é uma coleção de descobertas relacionadas de alguma forma.

Representação JSON
{
  "groupType": enum (GroupType),
  "groupId": string
}
Campos
groupType

enum (GroupType)

Tipo de grupo.

groupId

string

ID do grupo.

GroupType

Possíveis tipos de grupos.

Enums
GROUP_TYPE_UNSPECIFIED Valor padrão.
GROUP_TYPE_TOXIC_COMBINATION O grupo representa uma combinação tóxica.

Disco

Contém informações sobre o disco associado à descoberta.

Representação JSON
{
  "name": string
}
Campos
name

string

O nome do disco, por exemplo, "https://www.googleapis.com/compute/v1/projects/{project-id}/zones/{zone-id}/disks/{disk-id}".

DataAccessEvent

Detalhes sobre uma tentativa de acesso a dados feita por um principal não autorizado de acordo com a política de segurança de dados aplicável.

Representação JSON
{
  "eventId": string,
  "principalEmail": string,
  "operation": enum (Operation),
  "eventTime": string
}
Campos
eventId

string

Identificador exclusivo do evento de acesso a dados.

principalEmail

string

O endereço de e-mail do principal que acessou os dados. O principal pode ser uma conta de usuário, uma conta de serviço, um grupo do Google ou outro.

operation

enum (Operation)

A operação realizada pelo principal para acessar os dados.

eventTime

string (Timestamp format)

Carimbo de data/hora do evento de acesso a dados.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Operação

A operação de um evento de acesso a dados.

Enums
OPERATION_UNSPECIFIED A operação não foi especificada.
READ Representa uma operação de leitura.
MOVE Representa uma operação de movimentação.
COPY Representa uma operação de cópia.

DataFlowEvent

Detalhes sobre um evento de fluxo de dados em que os dados são movidos para ou acessados de uma geolocalização não compatível, conforme definido na política de segurança de dados aplicável.

Representação JSON
{
  "eventId": string,
  "principalEmail": string,
  "operation": enum (Operation),
  "violatedLocation": string,
  "eventTime": string
}
Campos
eventId

string

Identificador exclusivo do evento de fluxo de dados.

principalEmail

string

O endereço de e-mail do principal que iniciou o evento de fluxo de dados. O principal pode ser uma conta de usuário, uma conta de serviço, um grupo do Google ou outro.

operation

enum (Operation)

A operação realizada pelo principal para o evento de fluxo de dados.

violatedLocation

string

Local não em conformidade do elemento principal ou do destino de dados.

eventTime

string (Timestamp format)

Carimbo de data/hora do evento de fluxo de dados.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Operação

A operação de um evento de fluxo de dados.

Enums
OPERATION_UNSPECIFIED A operação não foi especificada.
READ Representa uma operação de leitura.
MOVE Representa uma operação de movimentação.
COPY Representa uma operação de cópia.

Rede

Contém informações sobre uma rede VPC associada à descoberta.

Representação JSON
{
  "name": string
}
Campos
name

string

O nome do recurso de rede VPC, por exemplo, //compute.googleapis.com/projects/my-project/global/networks/my-network.

DataRetentionDeletionEvent

Detalhes sobre violações de exclusão de retenção de dados, em que os dados não estão em conformidade com o tempo de retenção ou exclusão, conforme definido na política de segurança de dados aplicável. O controle de exclusão de retenção de dados (DRD, na sigla em inglês) é um controle do conjunto de DSPM (gerenciamento da postura de segurança de dados) que permite que as organizações gerenciem políticas de retenção e exclusão de dados em conformidade com regulamentações, como o GDPR e o CRPA. A DRD oferece suporte a dois tipos de políticas principais: comprimento máximo de armazenamento (TTL máximo) e comprimento mínimo de armazenamento (TTL mínimo). O objetivo de ambos é ajudar as organizações a cumprir os compromissos de regulamentação e gerenciamento de dados.

Representação JSON
{
  "eventDetectionTime": string,
  "dataObjectCount": string,
  "maxRetentionAllowed": string,
  "eventType": enum (EventType)
}
Campos
eventDetectionTime

string (Timestamp format)

Carimbo de data/hora que indica quando o evento foi detectado.

Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

dataObjectCount

string (int64 format)

Número de objetos que violaram a política para este recurso. Se o número for menor que 1.000, o valor desse campo será o número exato. Se o número de objetos que violaram a política for maior ou igual a 1.000, o valor desse campo será 1.000.

maxRetentionAllowed

string (Duration format)

Duração máxima de retenção permitida pelo controle de DRD. Isso vem do controle de DRD, em que os usuários definem um TTL máximo para os dados. Por exemplo, suponha que um usuário defina o TTL máximo para um bucket do Cloud Storage como 90 dias. No entanto, um objeto nesse bucket tem 100 dias. Nesse caso, um DataRetentionDeletionEvent será gerado para esse bucket do Cloud Storage, e o maxRetentionAllowed será de 90 dias.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

eventType

enum (EventType)

Tipo do evento de DRD.

EventType

Tipo do evento de DRD.

Enums
EVENT_TYPE_UNSPECIFIED Tipo de evento não especificado.
EVENT_TYPE_MAX_TTL_EXCEEDED O tempo máximo de retenção foi excedido.

Métodos

create

Cria uma descoberta em um local.

group

Filtra as descobertas de uma organização ou fonte e as agrupa por propriedades especificadas em um local.

list

Lista as descobertas de uma organização ou fonte.

patch

Cria ou atualiza uma descoberta.

setMute

Atualiza o estado de desativação de uma descoberta.

setState

Atualiza o estado de uma descoberta.

updateSecurityMarks

Atualiza as marcações de segurança.