Overview

Com as APIs Safe Browsing, seus aplicativos cliente podem realizar verificações de URL em tempo real ou com base em listas nas listas de recursos da Web não seguros do Google, que são atualizadas constantemente. Exemplos de recursos da Web não seguros são sites de engenharia social (phishing e sites enganosos) e sites que hospedam malware ou software indesejado. Qualquer URL encontrado em uma lista da Navegação segura é considerado não seguro.

Para determinar se um URL está em alguma das listas da Navegação segura, os clientes podem usar urls.search ou hashes.search.

Novidades

Atualização de dados

Tradicionalmente, os clientes da Navegação segura baixam periodicamente listas de ameaças usadas para corresponder a possíveis ameaças. À medida que os volumes e a velocidade das ameaças aumentaram com o tempo, essas listas locais se tornaram menos eficazes contra ameaças modernas.

Para resolver essa questão, estamos lançando a capacidade de mudar os protocolos para verificação por padrão em vez do protocolo permissão por padrão disponível anteriormente na V4. Isso é feito com a introdução da capacidade de baixar uma lista de sites provavelmente benignos, chamada de "cache global". Se um URL não for encontrado no cache global, o cliente precisará fazer uma verificação com a API para determinar se o URL é uma ameaça.

Essa capacidade de realizar verificações por padrão, além da melhoria da atualização de dados no serviço, oferece proteção mais rápida e quase em tempo real contra novas ameaças.

Privacidade de IP

A API Safe Browsing usa os endereços IP apenas para necessidades essenciais de rede e para fins de proteção contra DoS.

Apresentamos uma API complementar conhecida como API Safe Browsing Oblivious HTTP Gateway para ativar mais garantias de privacidade. Isso usa o HTTP discreto para ocultar os endereços IP dos usuários finais do Google. Ela funciona com um terceiro não conivente que processa uma versão criptografada da solicitação do usuário e a encaminha ao Google. Assim, o terceiro só tem acesso aos endereços IP, e o Google só tem acesso ao conteúdo da solicitação. O terceiro opera um retransmissor HTTP discreto (como este serviço da Fastly), e o Google opera o gateway HTTP discreto. Essa é uma API complementar opcional. Ao usar o recurso com a Navegação segura do Google, os endereços IP dos usuários finais não são mais enviados ao Google.

Consulte a documentação da API do gateway HTTP sem reconhecimento do Navegação segura para mais detalhes.

Métodos de pesquisa

Vamos analisar os diferentes métodos disponíveis para realizar verificações de URLs em tempo real.

urls.search

Permite que aplicativos clientes enviem URLs ao serviço Navegação segura para verificar se há ameaças associadas a eles.

Vantagens
  • Verificações de URL simples: você envia uma solicitação com os URLs reais, e o servidor responde com os URLs e as ameaças associadas (se houver).
Desvantagens
  • Sem confidencialidade de URL: a solicitação contém os URLs brutos que estão sendo verificados.

Se as vantagens/desvantagens atenderem ao seu requisito, use urls.search, já que é simples de usar.

Leia os Termos de Serviço do uso do método, já que ele é diferente de hashes.search.

hashes.search

Permite que aplicativos clientes verifiquem se há ameaças conhecidas em um conjunto de URLs sem revelar os URLs reais ao serviço. Isso é feito fornecendo apenas o prefixo de hash do URL. A resposta vai conter hashes completos de ameaças conhecidas com o prefixo de hash do fragmento.

Vantagens
  • Confidencialidade do URL: apenas um prefixo de hash de 4 bytes do URL com hash está na solicitação.
  • Compatibilidade: como o cliente processa a canonização e o hash de URLs, esse método se integra perfeitamente aos modos que usam um banco de dados local, como o modo em tempo real e o modo de lista local.
Desvantagens
  • Verificações de URL complexas: você precisa saber como canonizar URLs, criar expressões de sufixo/prefixo e calcular hashes SHA256 para fazer solicitações a esse método, comparações com as cópias locais das listas não seguras ou do cache global.

Se você precisar priorizar a confidencialidade do URL e quiser usar o modo em tempo real ou o modo de lista local, a abordagem recomendada é hashes.search.

Os métodos HashList

Com esses métodos, os clientes podem fazer o download e armazenar versões com hash das listas de recursos inseguros e do cache global. Os clientes podem usar essas informações para determinar se devem ou não realizar uma pesquisa em tempo real dos URLs em questão.

Esses métodos são essenciais para a operação do modo em tempo real e do modo de lista local.

Para mais informações sobre como usar esses métodos, consulte a página Banco de dados local.

Exemplos de solicitação

Esta seção documenta alguns exemplos de uso direto da API HTTP para acessar a Navegação segura. Em geral, é recomendável usar uma vinculação de linguagem gerada porque ela processa automaticamente a codificação e a decodificação de maneira conveniente. Consulte a documentação dessa vinculação.

Exemplo de solicitação HTTP usando urls.search:

GET https://safebrowsing.googleapis.com/v5alpha1/urls:search?key=INSERT_YOUR_API_KEY_HERE&urls=testsafebrowsing.appspot.com/

Exemplo de solicitação HTTP usando hashes.search:

GET https://safebrowsing.googleapis.com/v5/hashes:search?key=INSERT_YOUR_API_KEY_HERE&hashPrefixes=WwuJdQ

Exemplo de solicitação HTTP usando hashLists.batchGet:

GET https://safebrowsing.googleapis.com/v5/hashLists:batchGet?key=INSERT_YOUR_API_KEY_HERE&names=se&names=mw-4b

Todos os corpos de resposta são payloads formatados em buffer de protocolo que podem ser decodificados.