REST Resource: projects.scanConfigs.scanRuns.findings

Recurso: Finding

O recurso Finding representa uma instância de vulnerabilidade identificada durante um ScanRun.

Representação JSON
{
  "name": string,
  "findingType": string,
  "severity": enum (Severity),
  "httpMethod": string,
  "fuzzedUrl": string,
  "body": string,
  "description": string,
  "reproductionUrl": string,
  "frameUrl": string,
  "finalUrl": string,
  "trackingId": string,
  "form": {
    object (Form)
  },
  "outdatedLibrary": {
    object (OutdatedLibrary)
  },
  "violatingResource": {
    object (ViolatingResource)
  },
  "vulnerableHeaders": {
    object (VulnerableHeaders)
  },
  "vulnerableParameters": {
    object (VulnerableParameters)
  },
  "xss": {
    object (Xss)
  },
  "xxe": {
    object (Xxe)
  }
}
Campos
name

string

Apenas saída. O nome do recurso Finding. O nome segue o formato de 'projects/{projectId}/scanConfigs/{scanConfigId}/scanruns/{scanRunId}/findings/{findingId}'. Os códigos encontrados são gerados pelo sistema.

findingType

string

Apenas saída. O tipo de Finding. Confira informações detalhadas e atualizadas sobre as descobertas aqui: https://cloud.google.com/security-command-center/docs/how-to-remediate-web-security-scanner-findings

severity

enum (Severity)

Apenas saída. O nível de gravidade da vulnerabilidade relatada.

httpMethod

string

Apenas saída. O método http da solicitação que acionou a vulnerabilidade, em maiúsculas.

fuzzedUrl

string

Apenas saída. O URL produzido pelo fuzzer do servidor e usado na solicitação que acionou a vulnerabilidade.

body

string

Apenas saída. O corpo da solicitação que acionou a vulnerabilidade.

description

string

Apenas saída. A descrição da vulnerabilidade.

reproductionUrl

string

Apenas saída. O URL contendo o payload legível que o usuário pode aproveitar para reproduzir a vulnerabilidade.

frameUrl

string

Apenas saída. Se a vulnerabilidade tiver sido originada do IFrame aninhado, o IFrame pai imediato será informado.

finalUrl

string

Apenas saída. O URL em que o navegador chega quando a vulnerabilidade é detectada.

trackingId

string

Apenas saída. O ID de acompanhamento identifica exclusivamente uma instância de vulnerabilidade em vários ScanRuns.

form

object (Form)

Apenas saída. Um complemento com informações relatadas sobre uma vulnerabilidade com um formulário HTML, se houver.

outdatedLibrary

object (OutdatedLibrary)

Apenas saída. Um complemento com informações sobre bibliotecas desatualizadas.

violatingResource

object (ViolatingResource)

Apenas saída. Um complemento com informações detalhadas sobre qualquer recurso que esteja causando a vulnerabilidade, como imagens, arquivos de áudio, fontes etc. de JavaScript.

vulnerableHeaders

object (VulnerableHeaders)

Apenas saída. Um complemento com informações sobre cabeçalhos HTTP vulneráveis ou ausentes.

vulnerableParameters

object (VulnerableParameters)

Apenas saída. Um complemento com informações sobre parâmetros de solicitação que foram considerados vulneráveis.

xss

object (Xss)

Apenas saída. Um complemento com informações relatadas para um XSS, se houver.

xxe

object (Xxe)

Apenas saída. Um complemento que contém informações relatadas para um XXE, se houver.

Gravidade

O nível de gravidade de uma vulnerabilidade.

Enums
SEVERITY_UNSPECIFIED Nenhuma gravidade especificada. O valor padrão.
CRITICAL Gravidade crítica.
HIGH Alta gravidade.
MEDIUM Média gravidade.
LOW Baixa gravidade.

Formulário

! Informações sobre uma vulnerabilidade com um HTML.

Representação JSON
{
  "actionUri": string,
  "fields": [
    string
  ]
}
Campos
actionUri

string

! O URI para onde o formulário será enviado quando for enviado.

fields[]

string

! Os nomes dos campos do formulário relacionados à vulnerabilidade.

OutdatedLibrary

Informações relatadas para uma biblioteca desatualizada.

Representação JSON
{
  "libraryName": string,
  "version": string,
  "learnMoreUrls": [
    string
  ]
}
Campos
libraryName

string

O nome da biblioteca desatualizada.

version

string

Número da versão.

learnMoreUrls[]

string

URLs para saber mais informações sobre as vulnerabilidades na biblioteca.

ViolatingResource

Informações sobre qualquer recurso que esteja causando a vulnerabilidade, como fontes JavaScript, imagem, arquivos de áudio etc.

Representação JSON
{
  "contentType": string,
  "resourceUrl": string
}
Campos
contentType

string

O tipo MIME desse recurso.

resourceUrl

string

O URL desse recurso violador.

VulnerableHeaders

Informações sobre cabeçalhos HTTP vulneráveis ou ausentes.

Representação JSON
{
  "headers": [
    {
      object (Header)
    }
  ],
  "missingHeaders": [
    {
      object (Header)
    }
  ]
}
Campos
headers[]

object (Header)

Lista de cabeçalhos vulneráveis.

missingHeaders[]

object (Header)

Lista de cabeçalhos ausentes.

VulnerableParameters

Informações sobre parâmetros de solicitação vulneráveis.

Representação JSON
{
  "parameterNames": [
    string
  ]
}
Campos
parameterNames[]

string

Os nomes dos parâmetros vulneráveis.

Xss

Informações relatadas para um XSS.

Representação JSON
{
  "stackTraces": [
    string
  ],
  "errorMessage": string,
  "attackVector": enum (AttackVector),
  "storedXssSeedingUrl": string
}
Campos
stackTraces[]

string

Rastreamento de pilha que leva ao ponto em que o XSS ocorreu.

errorMessage

string

Mensagem de erro gerada por uma quebra de javascript.

attackVector

enum (AttackVector)

O vetor de ataque do payload que aciona esse XSS.

storedXssSeedingUrl

string

O URL de reprodução da solicitação POST de inicialização de um XSS armazenado.

AttackVector

Tipos de vetor de ataque XSS.

Enums
ATTACK_VECTOR_UNSPECIFIED Vetor de ataque desconhecido.
LOCAL_STORAGE O ataque vem de fuzzing do localStorage do navegador.
SESSION_STORAGE O ataque vem de fuzzing do sessionStorage do navegador.
WINDOW_NAME O ataque vem do fuzzing da propriedade de nome da janela.
REFERRER O ataque vem do fuzzing da propriedade de referência.
FORM_INPUT O ataque vem de um elemento de entrada com fuzzing.
COOKIE O ataque vem de fuzzing dos cookies do navegador.
POST_MESSAGE O ataque ocorre por meio do sequestro do mecanismo de mensagens postais.
GET_PARAMETERS O ataque vem de parâmetros de fuzzing no URL.
URL_FRAGMENT O ataque vem de fuzzing do fragmento no URL.
HTML_COMMENT O ataque vem de fuzzing dos comentários HTML.
POST_PARAMETERS O ataque vem da fuzzificação dos parâmetros POST.
PROTOCOL O ataque vem do fuzzing do protocolo.
STORED_XSS O ataque vem do lado do servidor e é armazenado.
SAME_ORIGIN O ataque é uma execução de método de mesma origem por um parâmetro GET.
USER_CONTROLLABLE_URL O payload do ataque é recebido de um host de terceiros por um URL controlável pelo usuário

Xxe

Informações relatadas para um XXE.

Representação JSON
{
  "payloadValue": string,
  "payloadLocation": enum (Location)
}
Campos
payloadValue

string

A string XML que acionou a vulnerabilidade XXE. Os valores que não são payload podem ser editados.

payloadLocation

enum (Location)

Local na solicitação em que o payload foi colocado.

Local

Localizações em uma solicitação em que o XML foi substituído.

Enums
LOCATION_UNSPECIFIED Local desconhecido.
COMPLETE_REQUEST_BODY O payload XML substituiu o corpo completo da solicitação.

Métodos

get

Recebe um Finding.

list

Lista Findings em um determinado ScanRun.