Indice
SafeBrowsing
(interfaccia)Checksum
(messaggio)ClientInfo
(messaggio)CompressionType
(enum)FetchThreatListUpdatesRequest
(messaggio)FetchThreatListUpdatesRequest.ListUpdateRequest
(messaggio)FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints
(messaggio)FetchThreatListUpdatesResponse
(messaggio)FetchThreatListUpdatesResponse.ListUpdateResponse
(messaggio)FetchThreatListUpdatesResponse.ListUpdateResponse.ResponseType
(enum)FindFullHashesRequest
(messaggio)FindFullHashesResponse
(messaggio)FindThreatMatchesRequest
(messaggio)FindThreatMatchesResponse
(messaggio)ListThreatListsResponse
(messaggio)PlatformType
(enum)RawHashes
(messaggio)RawIndices
(messaggio)RiceDeltaEncoding
(messaggio)ThreatEntry
(messaggio)ThreatEntryMetadata
(messaggio)ThreatEntryMetadata.MetadataEntry
(messaggio)ThreatEntrySet
(messaggio)ThreatEntryType
(enum)ThreatInfo
(messaggio)ThreatListDescriptor
(messaggio)ThreatMatch
(messaggio)ThreatType
(enum)
SafeBrowsing
Le API di Navigazione sicura consentono ai client di verificare le risorse web (più comunemente gli URL) rispetto agli elenchi costantemente aggiornati di Google relativi a risorse web non sicure. Le API Navigazione sicura (v4) includono l'API Update e l'API Lookup.
L'API Update è progettata per i clienti più grandi e include i metodi FindFullHashes e FetchThreatListUpdates . L'API Update richiede che i client mantengano gli elenchi delle minacce scaricati in un database locale.
Innanzitutto, i client creano corrispondenze con i loro elenchi locali per determinare lo stato (sicuro o non sicuro) di una determinata risorsa web. Più comunemente, gli elenchi sono costituiti da prefissi hash di espressioni URL non consentite. Per verificare un URL, i client generano gli hash di un determinato URL e verificano la presenza di conflitti di prefisso nei loro elenchi locali. Se viene trovata una corrispondenza di prefisso, il client ottiene gli hash completi associati al prefisso hash con corrispondenza tramite il metodo FindFullHashes . Il client confronta quindi l'hash completo locale con gli hash completi restituiti; una corrispondenza indica che l'URL non è sicuro.
In secondo luogo, i client ricevono aggiornamenti ai database locali tramite il metodo FetchThreatListUpdates , che prende lo stato corrente del client e restituisce uno stato aggiornato del client insieme alle modifiche che il client deve applicare agli elenchi di minacce locali.
L'API Lookup è progettata per i clienti più piccoli e consente loro di abbinare le risorse direttamente agli elenchi di minacce di Navigazione sicura tramite il metodo FindThreatMatches.
I client che utilizzano l'API Update o l'API Lookup possono ottenere un elenco degli elenchi di minacce di Navigazione sicura disponibili per il download tramite il metodo ListThreatLists.
{-- TRUSTED_THREAT_REPORTER: I client con minacce attendibili possono inviare segnalazioni a Google per l'analisi con il metodo SubmitThreatReport. --}
FetchThreatListUpdates |
---|
Recupera gli aggiornamenti più recenti dell'elenco delle minacce. Un cliente può richiedere aggiornamenti per più elenchi contemporaneamente. |
FindFullHashes |
---|
Trova gli hash completi che corrispondono ai prefissi hash richiesti. |
FindThreatMatches |
---|
Trova le voci delle minacce che corrispondono agli elenchi di Navigazione sicura. |
ListThreatLists |
---|
Elenca gli elenchi delle minacce di Navigazione sicura disponibili per il download. |
Checksum
Lo stato previsto del database locale di un client.
Campi | |
---|---|
sha256 |
L'hash SHA256 dello stato del client, ovvero dell'elenco ordinato di tutti gli hash presenti nel database. |
ClientInfo
I metadati del client associati alle richieste dell'API Navigazione sicura.
Campi | |
---|---|
client_id |
Un ID client che (si spera) identifica in modo univoco l'implementazione client dell'API Navigazione sicura. |
client_version |
La versione dell'implementazione sul client. |
CompressionType
Modi in cui gli insiemi di accessi di minacce possono essere compressi.
Enum | |
---|---|
COMPRESSION_TYPE_UNSPECIFIED |
Sconosciuto. |
RAW |
Dati non elaborati e non compressi. |
RICE |
Dati codificati in Rice-Golomb. |
FetchThreatListUpdatesRequest
Descrive una richiesta di aggiornamento dell'API Navigazione sicura. I client possono richiedere aggiornamenti per più elenchi in una singola richiesta. Il server potrebbe non rispondere a tutte le richieste se non ha aggiornamenti per l'elenco. NOTA: l'indice di campo 2 non è utilizzato. SUCCESSIVI: 5
Campi | |
---|---|
client |
I metadati del client. |
list_update_requests[] |
L'elenco delle minacce richiesto è stato aggiornato. |
ListUpdateRequest
Una singola richiesta di aggiornamento dell'elenco.
Campi | |
---|---|
threat_type |
Il tipo di minaccia rappresentata dalle voci presenti nell'elenco. |
platform_type |
Il tipo di piattaforma a rischio in base alle voci presenti nell'elenco. |
threat_entry_type |
I tipi di voci presenti nell'elenco. |
state |
Lo stato attuale del client per l'elenco richiesto (lo stato del client criptato ricevuto dall'ultimo aggiornamento dell'elenco riuscito). |
constraints |
I vincoli associati a questa richiesta. |
Vincoli
I vincoli per questo aggiornamento.
Campi | |
---|---|
max_update_entries |
La dimensione massima nel numero di voci. L'aggiornamento non conterrà più voci di questo valore. Deve essere una potenza di 2 compresa tra 2**10 e 2**20. Se il valore è zero, non viene impostato alcun limite per le dimensioni degli aggiornamenti. |
max_database_entries |
Imposta il numero massimo di voci che il client è disposto ad avere nel database locale per l'elenco specificato. Deve essere una potenza di 2 compresa tra 2**10 e 2**20. Se è pari a zero, non viene impostato alcun limite di dimensione del database. |
region |
Richiede l'elenco di una posizione geografica specifica. Se non viene configurato, il server può scegliere questo valore in base all'indirizzo IP dell'utente. È richiesto il formato ISO 3166-1 alpha-2. |
supported_compressions[] |
I tipi di compressione supportati dal client. |
language |
Richiede gli elenchi per una lingua specifica. È richiesto il formato ISO 639 alpha-2. |
device_location |
La località fisica di un cliente, espressa come codice regione ISO 31166-1 alpha-2. |
FetchThreatListUpdatesResponse
Campi | |
---|---|
list_update_responses[] |
Gli aggiornamenti dell'elenco richiesti dai client. Il numero di risposte qui potrebbe essere inferiore al numero di richieste inviate dai clienti. ad esempio se il server non dispone di aggiornamenti per un determinato elenco. |
minimum_wait_duration |
La durata minima che il client deve attendere prima di inviare qualsiasi richiesta di aggiornamento. Se questo campo non viene impostato, i clienti possono eseguire l'aggiornamento appena vogliono. |
ListUpdateResponse
Aggiornamento di un singolo elenco.
Campi | |
---|---|
threat_type |
Il tipo di minaccia per cui vengono restituiti i dati. |
threat_entry_type |
Il formato delle minacce. |
platform_type |
Il tipo di piattaforma per il quale vengono restituiti i dati. |
response_type |
Il tipo di risposta. Ciò può indicare che il client deve eseguire un'azione quando riceve la risposta. |
additions[] |
Un insieme di voci da aggiungere all'elenco di un tipo di minaccia locale. Ripetizione della procedura per consentire l'invio di una combinazione di dati compressi e non elaborati in un'unica risposta. |
removals[] |
Un insieme di voci da rimuovere dall'elenco di un tipo di minaccia locale. In pratica, questo campo è vuoto o contiene esattamente un ThreatEntrySet. |
new_client_state |
Il nuovo stato del client in formato criptato. Opaca per i clienti. |
checksum |
L'hash SHA256 previsto dello stato del client, ovvero l'elenco ordinato di tutti gli hash presenti nel database dopo l'applicazione dell'aggiornamento fornito. Se lo stato del client non corrisponde a quello previsto, il client deve ignorare questo aggiornamento e riprovare più tardi. |
ResponseType
Il tipo di risposta inviato al client.
Enum | |
---|---|
RESPONSE_TYPE_UNSPECIFIED |
Sconosciuto. |
PARTIAL_UPDATE |
Gli aggiornamenti parziali vengono applicati al database locale esistente del client. |
FULL_UPDATE |
Gli aggiornamenti completi sostituiscono l'intero database locale del client. Ciò significa che il cliente era gravemente obsoleto o che è ritenuto corrotto. |
FindFullHashesRequest
Richiesta di restituire hash completi corrispondenti ai prefissi hash forniti.
Campi | |
---|---|
client |
I metadati del client. |
client_states[] |
Gli stati attuali del client per ciascun elenco locale delle minacce del client. |
threat_info |
Elenchi e hash da controllare. |
api_client |
Metadati del client associati ai chiamanti di API di livello superiore basate sull'implementazione del client. |
FindFullHashesResponse
Campi | |
---|---|
matches[] |
Gli hash completi corrispondenti ai prefissi richiesti. |
minimum_wait_duration |
La durata minima che il client deve attendere prima di inviare una richiesta di hash di ricerca. Se questo campo non viene configurato, i clienti possono inviare una richiesta appena lo desiderano. |
negative_cache_duration |
Per le entità richieste che non corrispondono all'elenco delle minacce, per quanto tempo occorre memorizzare la risposta nella cache. |
FindThreatMatchesRequest
Richiesta di confrontare le voci con gli elenchi.
Campi | |
---|---|
client |
I metadati del client. |
threat_info |
Gli elenchi e le voci da verificare per trovare corrispondenze. |
FindThreatMatchesResponse
Campi | |
---|---|
matches[] |
L'elenco delle minacce corrisponde. |
ListThreatListsResponse
Campi | |
---|---|
threat_lists[] |
Gli elenchi disponibili per il download da parte del client. |
PlatformType
Tipi di piattaforme.
Enum | |
---|---|
PLATFORM_TYPE_UNSPECIFIED |
Piattaforma sconosciuta. |
WINDOWS |
Una minaccia rivolta a Windows. |
LINUX |
Minaccia presentata a Linux. |
ANDROID |
Minaccia presentata ad Android. |
OSX |
Minaccia presentata a OS X. |
IOS |
Minaccia presentata a iOS. |
ANY_PLATFORM |
Minaccia per almeno una delle piattaforme definite. |
ALL_PLATFORMS |
Minaccia rappresentata per tutte le piattaforme definite. |
CHROME |
Minaccia presentata a Chrome. |
RawHashes
Le voci di minacce non compresse in formato hash con un prefisso di lunghezza particolare. Gli hash possono avere una dimensione compresa tra 4 e 32 byte. In gran parte sono di 4 byte, ma alcuni hash vengono allungati se si scontrano con l'hash di un URL popolare.
Utilizzato per inviare ThreatEntrySet a client che non supportano la compressione o per inviare hash non a 4 byte a client che supportano la compressione.
Campi | |
---|---|
prefix_size |
Il numero di byte per ogni prefisso codificato di seguito. Questo campo può essere compreso tra 4 (prefisso più breve) e 32 (hash SHA256 completo). |
raw_hashes |
Gli hash, in formato binario, concatenati in un'unica stringa lunga. Gli hash sono ordinati in ordine lessicografico. Per gli utenti dell'API JSON, gli hash sono codificati in base64. |
RawIndices
Un insieme di indici non elaborati da rimuovere da un elenco locale.
Campi | |
---|---|
indices[] |
Gli indici da rimuovere da un elenco locale ordinato lessicograficamente. |
RiceDeltaEncoding
I dati codificati di Rice-Golomb. Utilizzato per l'invio di hash a 4 byte compressi o indici di rimozione compressi.
Campi | |
---|---|
first_value |
L'offset della prima voce nei dati codificati o, se è stato codificato un solo numero intero, il valore di quel singolo numero intero. Se il campo è vuoto o mancante, supponiamo che sia zero. |
rice_parameter |
Il parametro Golomb-Rice, che è un numero compreso tra 2 e 28. Questo campo non è presente (ovvero è zero) se |
num_entries |
Il numero di voci con codifica delta nei dati codificati. Se è stato codificato un solo numero intero, questo sarà pari a zero e il singolo valore verrà archiviato in |
encoded_data |
I delta codificati che sono codificati utilizzando il programmatore Golomb-Rice. |
ThreatEntry
Una singola minaccia; per esempio, un URL dannoso o la sua rappresentazione hash. Deve essere impostato solo uno di questi campi.
Campi | |
---|---|
hash |
Un prefisso hash, composto dai 4-32 byte più significativi di un hash SHA256. Questo campo è in formato binario. Per le richieste JSON, gli hash sono codificati in base64. |
url |
Un URL. |
digest |
Il digest di un eseguibile in formato SHA256. L'API supporta digest binari ed esadecimali. Per le richieste JSON, i digest sono codificati in base64. |
ThreatEntryMetadata
I metadati associati a una voce di minaccia specifica. Il client deve conoscere le coppie chiave/valore dei metadati associate a ogni tipo di minaccia.
Campi | |
---|---|
entries[] |
Le voci dei metadati. |
MetadataEntry
Una singola voce di metadati.
Campi | |
---|---|
key |
La chiave di accesso dei metadati. Per le richieste JSON, la chiave è codificata in base64. |
value |
Il valore della voce dei metadati. Per le richieste JSON, il valore è codificato in base64. |
ThreatEntrySet
Un insieme di minacce che deve essere aggiunto o rimosso dal database locale di un client.
Campi | |
---|---|
compression_type |
Il tipo di compressione per le voci di questo insieme. |
raw_hashes |
Le voci in formato SHA256 non elaborate. |
raw_indices |
Gli indici di rimozione non elaborati per un elenco locale. |
rice_hashes |
I prefissi da 4 byte codificati delle voci in formato SHA256, utilizzando una codifica Golomb-Rice. Gli hash vengono convertiti in uint32, ordinati in ordine crescente, quindi codificati delta e memorizzati come coded_data. |
rice_indices |
Gli indici di elenco locali codificati, ordinati lessicograficamente, utilizzando una codifica Golomb-Rice. Utilizzato per l'invio di indici di rimozione compressi. Gli indici di rimozione (uint32) vengono ordinati in ordine crescente, quindi vengono codificati delta e memorizzati come coded_data. |
ThreatEntryType
Tipi di voci che rappresentano una minaccia. Gli elenchi di minacce sono raccolte di voci di un singolo tipo.
Enum | |
---|---|
THREAT_ENTRY_TYPE_UNSPECIFIED |
Non specificato. |
URL |
Un URL. |
EXECUTABLE |
Un programma eseguibile. |
ThreatInfo
Le informazioni relative a una o più minacce inviate da un cliente per il controllo delle corrispondenze negli elenchi di minacce.
Campi | |
---|---|
threat_types[] |
I tipi di minacce da controllare. |
platform_types[] |
I tipi di piattaforma da controllare. |
threat_entry_types[] |
I tipi di voce da controllare. |
threat_entries[] |
Le voci delle minacce da controllare. |
ThreatListDescriptor
Descrive un singolo elenco di minacce. Un elenco è definito da tre parametri: il tipo di minaccia rappresentata, il tipo di piattaforma presa di mira e il tipo di voci nell'elenco.
Campi | |
---|---|
threat_type |
Il tipo di minaccia rappresentato dalle voci dell'elenco. |
platform_type |
Il tipo di piattaforma scelto come target dalle voci dell'elenco. |
threat_entry_type |
I tipi di voci contenuti nell'elenco. |
ThreatMatch
Una corrispondenza quando viene controllata una voce di minaccia negli elenchi di minacce di Navigazione sicura.
Campi | |
---|---|
threat_type |
Il tipo di minaccia corrispondente a questa minaccia. |
platform_type |
Il tipo di piattaforma corrispondente a questa minaccia. |
threat_entry_type |
Il tipo di voce della minaccia corrispondente a questa minaccia. |
threat |
La minaccia corrispondente a questa minaccia. |
threat_entry_metadata |
Metadati facoltativi associati a questa minaccia. |
cache_duration |
La durata della cache per la corrispondenza restituita. I client non devono memorizzare nella cache questa risposta per un periodo superiore a quello specificato per evitare falsi positivi. |
ThreatType
Tipi di minacce.
Enum | |
---|---|
THREAT_TYPE_UNSPECIFIED |
Sconosciuto. |
MALWARE |
Tipo di minaccia malware. |
SOCIAL_ENGINEERING |
Tipo di minaccia di ingegneria sociale. |
UNWANTED_SOFTWARE |
Tipo di minaccia software indesiderato. |
POTENTIALLY_HARMFUL_APPLICATION |
Tipo di minaccia per le applicazioni potenzialmente dannosa. |