Panoramica sulla progettazione della sicurezza dell'infrastruttura Google

Questi contenuti sono stati aggiornati a giugno 2024 e rappresentano lo status quo al momento della loro redazione. Le norme e i sistemi di sicurezza di Google potrebbero cambiare in futuro, grazie al costante miglioramento della protezione per i nostri clienti.

Introduzione

Questo documento fornisce una panoramica di come la sicurezza è integrata in Google dell'infrastruttura tecnica. È destinato a responsabili della sicurezza, progettisti della sicurezza e revisori.

Questo documento descrive quanto segue:

  • L'infrastruttura tecnica globale di Google, progettata per fornire sicurezza durante tutto il ciclo di vita del trattamento delle informazioni di Google. Questa infrastruttura consente di fornire quanto segue:
    • Deployment sicuro dei servizi
    • Archiviazione sicura dei dati con salvaguardie della privacy degli utenti finali
    • Comunicazione sicura tra i servizi
    • Comunicazione sicura e privata con i clienti tramite internet
    • Operatività sicura da parte dei tecnici di Google
  • Il modo in cui utilizziamo questa infrastruttura per creare servizi internet, inclusi ai consumatori quali Ricerca Google, Gmail e Google Foto e servizi aziendali come Google Workspace e in Google Cloud.
  • I prodotti e i servizi per la sicurezza che sono il risultato di innovazioni che abbiamo implementato internamente per soddisfare le nostre esigenze di sicurezza. Ad esempio: BeyondCorp è il risultato diretto della nostra implementazione interna modello di sicurezza Zero Trust.
  • Come la sicurezza dell'infrastruttura è progettata in livelli progressivi. Questi livelli includono:

Le restanti sezioni di questo documento descrivono i livelli di sicurezza.

Infrastruttura di basso livello sicura

Questa sezione descrive in che modo proteggiamo le strutture fisiche dei nostri data center, l'hardware al loro interno e lo stack software in esecuzione sull'hardware.

Sicurezza dei locali fisici

Progettiamo e costruiamo i nostri data center, che includono più livelli di sicurezza fisica. L'accesso a questi data center è strettamente controllato. Usiamo più livelli di sicurezza fisica per proteggere i pavimenti dei nostri data center. Usiamo identificazione biometrica, rilevamento dei metalli, videocamere, barriere per veicoli e sistemi di rilevamento delle intrusioni basati su laser. Per ulteriori informazioni, vedi Sicurezza dei data center.

All'interno del data center, implementiamo controlli aggiuntivi per garantire che le risorse fisiche l'accesso ai server è protetto e monitorato. Per ulteriori informazioni, vedi Come Google protegge lo spazio fisico-logico nei dati .

Ospitiamo anche alcuni server in data center di terze parti. In questi data center, seguiamo gli stessi standard normativi che applichiamo ai nostri data center. Garantiamo che vengano adottate misure di sicurezza fisica e connettività controllate da Google in aggiunta ai livelli di sicurezza forniti dall'operatore del data center. Ad esempio, gestiamo sistemi di identificazione biometrica, telecamere e metal detector indipendenti dai livelli di sicurezza forniti dall'operatore del data center.

Se non diversamente specificato, i controlli di sicurezza in questo documento si applicano sia ai data center di proprietà di Google sia a quelli di terze parti.

Origine e progettazione hardware

I data center di Google sono costituiti da migliaia di server connessi a un in ogni rete. Noi progettiamo le schede server e le apparecchiature di rete. Esaminiamo le i fornitori di componenti con cui collaboriamo e scelgono i componenti con attenzione. Collaboriamo con i fornitori per controllare e convalidare le proprietà di sicurezza fornite dai componenti. Progettiamo anche chip personalizzati, tra cui un chip di sicurezza hardware (chiamato Titan), che implementiamo su server, dispositivi e periferiche. Questi chip ci consentono di identificare e autenticare i dispositivi Google legittimi a livello di hardware e fungere da le radici di attendibilità hardware.

Stack di avvio protetto e identità della macchina

I server di Google utilizzano varie tecnologie per garantire l'avvio e lo stack software. In ogni passaggio del processo di avvio, Google implementa controlli leader del settore che aiutano ad applicare lo stato di avvio previsto per contribuire a proteggere i dati dei clienti.

Ci impegniamo a migliorare continuamente i nostri server con ogni generazione di hardware successiva e a trasferire questi miglioramenti al resto del settore attraverso la partecipazione ai processi di standardizzazione con Trusted Computing Group e DMTF.

Ogni server nel data center ha la propria identità univoca. Questa identità può essere collegata alle radici di attendibilità hardware e al software con cui viene avviata la macchina. Questa identità viene utilizzata per autenticare le chiamate API verso e da servizi di gestione di basso livello sulla macchina. Questa identità viene utilizzata anche per server reciproci l'autenticazione e la crittografia del trasporto. Abbiamo sviluppato Application Layer Transport Security (ALTS) per la protezione delle comunicazioni RPC (chiamata di procedura remota, RPC) all'interno del nostro dell'infrastruttura. Queste identità macchina possono essere revocate centralmente a causa di un incidente di sicurezza. Inoltre, i relativi certificati e chiavi vengono regolarmente ruotato e quelli precedenti revocati.

Abbiamo sviluppato sistemi automatici per:

  • Assicurati che i server eseguano versioni aggiornate degli stack software (incluse le patch di sicurezza).
  • Rilevare e diagnosticare problemi relativi all'hardware e al software.
  • Garantisci l'integrità delle macchine e delle periferiche con avvio verificato e attestazione.
  • Assicurati che solo le macchine su cui è in esecuzione il software e il firmware previsti possano accedere alle credenziali che consentono loro di comunicare sulla rete di produzione.
  • Rimuovere o riparare le macchine se non superano il controllo di integrità o quando non sono più necessari.

Per ulteriori informazioni su come proteggiamo l'integrità del boot stack e delle macchine, consulta In che modo Google applica l'integrità del boot alle macchine di produzione e Attestazione remota delle macchine disaggregate.

Deployment sicuro dei servizi

I servizi Google sono i programmi binari delle applicazioni che i nostri sviluppatori scrivono ed eseguono sulla nostra infrastruttura. Esempi di servizi Google sono Gmail server, database Spanner, server Cloud Storage, YouTube transcodificatori video e VM di Compute Engine che eseguono applicazioni del cliente. Per gestire la scala richiesta del carico di lavoro, migliaia di macchine potrebbero eseguire i binari dello stesso servizio. Un servizio di orchestrazione di cluster, chiamato Borg controlla i servizi in esecuzione direttamente sull'infrastruttura.

L'infrastruttura non presuppone alcuna relazione di trust tra i servizi in esecuzione. Questo modello di attendibilità è chiamato modello di sicurezza zero-trust. Un modello di sicurezza Zero Trust prevede che nessun dispositivo o utente attendibili per impostazione predefinita, all'interno o all'esterno della rete.

Poiché l'infrastruttura è progettata per essere multi-tenant, i dati provenienti dalla nostra i clienti (consumatori, aziende e persino i nostri stessi dati) sono distribuiti un'infrastruttura condivisa. Questa infrastruttura è composta da decine di migliaia di macchine omogenee. L'infrastruttura non separa i dati dei clienti una singola macchina o un insieme di macchine, tranne in circostanze specifiche come quando utilizzi Google Cloud per eseguire il provisioning delle VM nodi single-tenant per Compute Engine.

Google Cloud e Google Workspace supportano i requisiti normativi sulla residenza dei dati. Per ulteriori informazioni sulla residenza dei dati per Google Cloud, consulta Implementa i requisiti di residenza e sovranità dei dati. Per saperne di più sulla residenza dei dati e su Google Workspace, consulta Regioni di dati: scegliere una posizione geografica per i propri dati.

Identità, integrità e isolamento dei servizi

Per abilitare la comunicazione tra i servizi, le applicazioni utilizzano l'autenticazione e l'autorizzazione cryptographic. Autenticazione e autorizzazione forniscono un forte controllo dell'accesso a livello di astrazione e granularità che che amministratori e servizi possano comprendere.

I servizi non si basano sulla segmentazione della rete interna o sul firewall come meccanismo di sicurezza primario. Il filtraggio in entrata e in uscita in vari punti della nostra rete aiuta a prevenire lo spoofing IP. Questo approccio ci aiuta inoltre a massimizzare le prestazioni e la disponibilità della nostra rete. Per Google Cloud, puoi aggiungere meccanismi di sicurezza aggiuntivi come Controlli di servizio VPC e Cloud Interconnect.

A ogni servizio eseguito nell'infrastruttura è associata un'identità dell'account di servizio. Un servizio viene fornito con credenziali crittografiche che può utilizzare per dimostrare la sua identità ad altri servizi durante l'elaborazione o la ricezione di RPC. Queste identità vengono utilizzate nei criteri di sicurezza. I criteri di sicurezza assicurano che client comunicano con il server previsto e i server limitando i metodi e i dati a cui determinati clienti possono accedere.

Utilizziamo varie tecniche di isolamento e sandbox per proteggere un servizio da altri servizi in esecuzione sulla stessa macchina. Queste tecniche includono Linux separazione degli utenti in base alla lingua (ad esempio, API) e le sandbox basate su kernel, kernel dell'applicazione per i container (come gVisor) e virtualizzazione basata su hardware. In generale, utilizziamo più livelli per i carichi di lavoro più rischiosi. I carichi di lavoro più rischiosi includono carichi di lavoro per elaborare input non sottoposti a sanitizzazione da internet. Ad esempio, i carichi di lavoro più rischiosi includono l'esecuzione di convertitori di file complessi su input non attendibili o l'esecuzione di codice arbitrario come servizio per prodotti come Compute Engine.

Per una maggiore sicurezza, i servizi sensibili, come il servizio di orchestrazione del cluster e alcuni servizi di gestione delle chiavi, vengono eseguiti esclusivamente su macchine dedicate.

In Google Cloud, per fornire un isolamento crittografico più efficace per i tuoi carichi di lavoro e per proteggere i dati in uso, supportiamo i servizi di Confidential Computing per le istanze delle macchine virtuali (VM) Compute Engine e per i nodi Google Kubernetes Engine (GKE).

Gestione degli accessi tra i servizi

Il proprietario di un servizio può gestire l'accesso creando un elenco di altri servizi che possono comunicare con il servizio. Questa funzionalità di gestione degli accessi forniti dall'infrastruttura di Google. Ad esempio, un servizio può limitare le RPC in entrata solo a un elenco consentito di altri servizi. Il proprietario può anche configurare il servizio con un elenco consentito di identità di servizio, che l'infrastruttura applica automaticamente. L'applicazione delle norme include il logging degli audit, le giustificazioni e la limitazione unilaterale dell'accesso (ad esempio per le richieste degli ingegneri).

Anche i tecnici di Google che hanno bisogno di accedere ai servizi ricevono un team le identità di altro tipo. I servizi possono essere configurati per consentire o negare l'accesso in base alle loro identità. Tutte queste identità (macchina, servizio e dipendente) in uno spazio dei nomi globale gestito dall'infrastruttura.

Per gestire queste identità, l'infrastruttura fornisce un sistema di flussi di lavoro include catene di approvazione, logging e notifiche. Ad esempio, il criterio di sicurezza può applicare l'autorizzazione da più parti. Questo sistema utilizza la regola di due persone per garantire che un ingegnere che agisce da solo non possa eseguire operazioni sensibili senza prima ottenere l'approvazione di un altro ingegnere autorizzato. Questo sistema consente a processi di gestione degli accessi sicuri di scalare fino a migliaia di servizi in esecuzione sull'infrastruttura.

L'infrastruttura fornisce anche servizi con il servizio canonico per gli utenti, dei gruppi e delle iscrizioni in modo da poter implementare e un controllo granulare degli accessi, ove necessario.

Le identità degli utenti finali vengono gestite separatamente, come descritto in Gestione dell'accesso ai dati degli utenti finali in Google Workspace.

Crittografia delle comunicazioni tra i carichi di lavoro

L'infrastruttura garantisce la riservatezza e l'integrità dei dati RPC sulla rete. Tutto il traffico della rete virtuale di Google Cloud è criptato. Comunicazione tra i carichi di lavoro dell'infrastruttura Google Cloud criptato, con esenzioni concesse solo per i carichi di lavoro ad alte prestazioni in cui il traffico non supera i vari livelli di sicurezza fisica a livello perimetrale di un data center Google. La comunicazione tra i servizi dell'infrastruttura Google Cloud è protetta da crittografia per l'integrità.

L'infrastruttura in modo automatico ed efficiente (con l'aiuto dell'offload hardware) fornisce la crittografia end-to-end per il traffico RPC dell'infrastruttura che supera della rete tra i data center.

Gestione dell'accesso ai dati degli utenti finali in Google Workspace

Un tipico servizio Google Workspace è scritto per fare qualcosa per un utente finale. Ad esempio, un utente finale può archiviare le proprie email Gmail. L'interazione dell'utente finale con un'applicazione come Gmail potrebbe coinvolgere altri servizi all'interno dell'infrastruttura. Ad esempio, Gmail potrebbe chiamare un'API People per accedere alla rubrica dell'utente finale.

La sezione Crittografia delle comunicazioni tra i servizi descrive in che modo un servizio (ad esempio Contatti Google) è progettato per proteggere le richieste RPC da un altro servizio (ad esempio Gmail). Tuttavia, questo livello di controllo dell'accesso è comunque un insieme ampio di autorizzazioni perché Gmail è in grado di richiedere i contatti di qualsiasi utente in qualsiasi momento.

Quando Gmail effettua una richiesta RPC a Contatti Google per conto di utente finale, l'infrastruttura consente a Gmail di presentare ticket di autorizzazione nella richiesta RPC. Questo ticket dimostra che Gmail sta effettuando la richiesta RPC per conto di quel particolare scopo. utente. Il ticket consente a Contatti Google di implementare un sistema di protezione in modo da restituire solo i dati dell'utente finale indicato nel ticket.

L'infrastruttura fornisce un servizio di identità utente centrale che rilascia questi dati ticket di contesto per l'utente finale. Il servizio di identità verifica l'accesso dell'utente finale e invia una credenziale, come un cookie o un token OAuth, al suo dispositivo. Ogni successiva richiesta dal dispositivo alla nostra infrastruttura deve presentare quella credenziale utente finale.

Quando un servizio riceve la credenziale di un utente finale, passa la credenziale al servizio di identità per la verifica. Se la credenziale dell'utente finale viene verificato, il servizio di identità restituisce un contesto di breve durata dell'utente ticket che può essere utilizzato per le RPC relative alla richiesta dell'utente. Nel nostro esempio, il servizio che riceve il ticket di contesto utente finale è Gmail, che lo passa a Contatti Google. Da quel momento in poi, per qualsiasi a cascata, il servizio di chiamata può inviare il ticket contestuale dell'utente finale del chiamante come parte della RPC.

Il seguente diagramma mostra come comunicano il servizio A e il servizio B. L'infrastruttura fornisce l'identità del servizio, l'autenticazione reciproca automatica, la comunicazione inter-servizio criptata e l'applicazione dei criteri di accesso definiti dal proprietario del servizio. Ogni servizio ha una configurazione del servizio, creato dal proprietario del servizio. Per le comunicazioni crittografate tra i servizi, l'autenticazione reciproca automatica utilizza identità di chiamante e destinatario. Comunicazione è possibile solo se la configurazione di una regola di accesso lo consente.

Diagramma che mostra come Service A e Service B comunicano.

Per informazioni sulla gestione dell'accesso in Google Cloud, consulta la panoramica di IAM.

Gestione dell'accesso ai dati degli utenti finali in Google Cloud

Simile a Accedi alla gestione dei dati degli utenti finali in Google Workspace, l'infrastruttura fornisce un servizio di identità utente centrale che autentica account di servizio e problemi di ticket contestuali per l'utente finale dopo che un account di servizio autenticati. La gestione dell'accesso tra i servizi Google Cloud viene solitamente eseguita con gli agenti di servizio anziché con i ticket di contesto utente finale.

Google Cloud utilizza Identity and Access Management (IAM) e prodotti sensibili al contesto come Identity-Aware Proxy per consentirti di gestire l'accesso alle risorse dell'organizzazione Google Cloud. Le richieste ai servizi Google Cloud passano per IAM per verificare le autorizzazioni.

La procedura di gestione degli accessi è la seguente:

  1. Una richiesta arriva tramite Servizio Google Front End o il servizio Cloud Front End per le VM dei clienti.
  2. La richiesta viene instradata al servizio di identità dell'utente centrale completa il controllo dell'autenticazione e invia i ticket di contesto dell'utente finale.
  3. La richiesta viene anche indirizzata alla verifica di elementi come i seguenti:
  4. Dopo che tutti questi controlli sono stati superati, vengono chiamati i servizi di backend di Google Cloud.

Per informazioni sulla gestione dell'accesso in Google Cloud, consulta la panoramica di IAM.

Archiviazione sicura dei dati

Questa sezione descrive come implementiamo la sicurezza dei dati memorizzati sul dell'infrastruttura.

Crittografia dei dati inattivi

L'infrastruttura di Google offre vari servizi di archiviazione (ad esempio, Spanner e Colossus) e un Key Management Service centralizzato. Applicazioni di Google accedono allo spazio di archiviazione fisico tramite l'infrastruttura di archiviazione. Usiamo diversi livelli di crittografia per proteggere i dati inattivi. Per impostazione predefinita, crittografa i dati utente prima che vengano scritti su carta archiviazione.

L'infrastruttura esegue la crittografia a livello di applicazione a livello di infrastruttura. Le chiavi per questa crittografia sono gestite e di proprietà di in tutti i canali Google. La crittografia consente all'infrastruttura di isolarsi da potenziali minacce ai livelli inferiori dello spazio di archiviazione, ad esempio il firmware del disco dannoso. Ove possibile, attiviamo anche il supporto della crittografia hardware nei nostri dischi rigidi e SSD e monitoriamo meticolosamente ogni unità durante il suo ciclo di vita. Prima che un dispositivo di archiviazione criptato dismesso possa uscire fisicamente dalla nostra custodia, viene pulito utilizzando una procedura in più passaggi che include due verifiche indipendenti. I dispositivi che non superano questa procedura di pulizia vengono distrutti fisicamente (ovvero triturati) in sede.

Oltre alla crittografia eseguita dall'infrastruttura con Chiavi gestite da Google, Google Cloud Google Workspace offre servizi di gestione delle chiavi che puoi proprietario e gestore. Per Google Cloud, Cloud KMS è un servizio cloud che consente di creare chiavi di crittografia, incluse chiavi certificate FIPS 140-3 L3 basate su hardware. Queste chiavi sono specifiche per te, non per il servizio Google Cloud, e puoi gestirle in base alle tue norme e procedure. Per Google Workspace, puoi usare la crittografia lato client. Per saperne di più, consulta Crittografia lato client e collaborazione rafforzata in Google Workspace.

Eliminazione dei dati

L'eliminazione del materiale o dei dati crittografici inizia in genere con il contrassegno chiavi o dati specifici pianificati per l'eliminazione. La procedura per contrassegnare i dati per l'eliminazione prende in considerazione le norme specifiche del servizio e norme specifiche.

Pianificando l'eliminazione dei dati o disattivando prima le chiavi, possiamo ripristinare da eliminazioni non intenzionali, indipendentemente dal fatto che siano avviate dal cliente, a causa di un bug o essere il risultato di un errore interno del processo.

Quando un utente finale elimina il proprio account, l'infrastruttura invia una notifica ai servizi che gestiscono i dati dell'utente finale che l'account è stato eliminato. I servizi possono quindi pianificare l'eliminazione dei dati associati all'account utente finale eliminato. Questa funzionalità consente a un utente finale di controllare i propri dati.

Per ulteriori informazioni, consulta la sezione Eliminazione dei dati Google Cloud. Per informazioni su come utilizzare Cloud Key Management Service per disabilitare le tue chiavi, consulta Eliminare e ripristinare le tue chiavi le versioni della chiave.

Comunicazione internet sicura

Questa sezione descrive come proteggiamo la comunicazione tra internet e i servizi in esecuzione sull'infrastruttura di Google.

Come discusso in Design e provenienza dell'hardware, l'infrastruttura è composta da molte macchine fisiche interconnesse tramite LAN e WAN. La sicurezza delle comunicazioni tra i servizi dipende dalla sicurezza della rete. Tuttavia, isoliamo la nostra infrastruttura da internet a uno spazio di indirizzi IP privato. Esponiamo solo un sottoinsieme di macchine direttamente al traffico internet esterno per poter implementare protezioni aggiuntive, come le difese contro gli attacchi denial of service (DoS).

Servizio Google Front End (GFE)

Quando un servizio deve rendersi disponibile su internet, può registrarsi con un servizio di infrastruttura chiamato Google Front End (GFE). GFE garantisce che tutte le connessioni TLS vengano terminate con i certificati corretti e seguendo le best practice, ad esempio il supporto della crittografia Perfect Forward Secrecy. GFE e applica protezioni contro gli attacchi DoS. Il GFE inoltra quindi le richieste per il servizio utilizzando il protocollo di sicurezza RPC descritto in Gestione dell'accesso ai dati degli utenti finali in Google Workspace.

In effetti, qualsiasi servizio interno che deve pubblicarsi esternamente utilizza il GFE come frontend di proxy inverso intelligente. GFE offre l'hosting di indirizzi IP pubblici nome DNS pubblico, protezione DoS e terminazione TLS. I GFE vengono eseguiti dell'infrastruttura come qualsiasi altro servizio e può scalare per adeguarsi alle richieste in entrata come i bilanciatori del carico e i volumi di archiviazione.

Quando le VM dei clienti nelle reti VPC di Google Cloud accedono alle API e ai servizi Google ospitati direttamente su Borg, comunicano con GFE specifici chiamati Cloud Front End. Per ridurre al minimo la latenza, gli endpoint Cloud Front si trovano nella stessa regione cloud della VM del cliente. Il routing di rete tra le VM del cliente e i front-end cloud non richiede che le VM del cliente abbiano indirizzi IP esterni. Quando L'accesso privato Google è abilitato, Le VM con solo indirizzi IP interni possono comunicare con l'IP esterno indirizzi IP per le API e i servizi Google utilizzando Cloud Front End. Tutta la rete il routing tra le VM del cliente, le API di Google e i servizi dipende dagli hop successivi nella rete di produzione di Google, anche per le VM dei clienti che dispongono di e gli indirizzi IP esterni.

Protezione DoS

La scalabilità della nostra infrastruttura le consente di assorbire molti attacchi DoS. A ridurre ulteriormente il rischio di impatto DoS sui servizi, abbiamo sistemi multilivello, delle protezioni DoS a più livelli.

Quando la nostra dorsale in fibra ottica fornisce una connessione esterna a uno dei nostri data center, la connessione passa attraverso diversi livelli di bilanciatori del carico hardware e software. Questi bilanciatori del carico segnalano informazioni sul traffico in entrata a un servizio DoS centrale in esecuzione nell'infrastruttura. Quando il servizio DoS centralizzato rileva un attacco DoS, può configurare i bilanciatori del carico in modo da eliminare o limitare il traffico associato all'attacco.

Le istanze GFE segnalano anche informazioni sulle richieste ricezione al servizio DoS centrale, comprese le informazioni a livello di applicazione a cui i bilanciatori del carico non hanno accesso. Il servizio DoS centrale può quindi configurare le istanze GFE per bloccare o limitare il traffico di attacco.

Autenticazione degli utenti

Dopo la protezione DoS, il livello successivo di difesa per la comunicazione sicura arriva dal servizio di identità centrale. Gli utenti finali interagiscono con questo servizio tramite la pagina di accesso di Google. Il servizio richiede un nome utente e una password e può richiede inoltre agli utenti informazioni aggiuntive in base ai fattori di rischio. Esempio i fattori di rischio includono se gli utenti hanno eseguito l'accesso dallo stesso dispositivo o da una località simile in passato. Dopo aver autenticato l'utente, il servizio di identità emette credenziali come cookie e token OAuth che possono essere utilizzati per le chiamate successive.

Quando gli utenti accedono, possono utilizzare fattori secondari come le OTP o i token di sicurezza resistenti al phishing, come il token di sicurezza Titan. Il token di sicurezza Titan è un token fisico che supporta il protocollo FIDO U2F (Universal 2nd Factor). Abbiamo contribuito a sviluppare lo standard aperto U2F con la FIDO Alliance. La maggior parte del web piattaforme e browser hanno adottato questo standard di autenticazione aperto.

Sicurezza operativa

Questa sezione descrive il modo in cui sviluppiamo il software dell'infrastruttura, proteggiamo le nostre dei dipendenti macchine e credenziali e difenderti dalle minacce al dell'infrastruttura da parte di utenti malintenzionati interni ed esterni.

Sviluppo sicuro di software

Oltre alle protezioni del controllo del codice sorgente e alla procedura di revisione tra due parti descritte in precedenza, utilizziamo librerie che impediscono agli sviluppatori di introdurre determinate classi di bug di sicurezza. Ad esempio, abbiamo librerie e framework che aiutano a eliminare le vulnerabilità XSS nelle app web. Utilizziamo anche strumenti automatici come fuzzer, strumenti di analisi statica e scanner per la sicurezza web per rilevare automaticamente i bug di sicurezza.

Come controllo finale, utilizziamo controlli di sicurezza manuali che variano da una valutazione rapida per le funzionalità meno rischiose alle revisioni approfondite della progettazione e dell'implementazione per le funzionalità più rischiose. Il team che esegue queste revisioni include esperti di sicurezza web, crittografia e sicurezza del sistema operativo. Le revisioni possono portare allo sviluppo di nuove funzionalità delle librerie di sicurezza e di nuovi fuzzer che potremo utilizzare per i prodotti futuri.

Inoltre, gestiamo un Vulnerability Rewards Program che premia chiunque scopra e ci segnali i bug presenti nell'infrastruttura o nelle applicazioni. Per ulteriori informazioni su questo programma, inclusi i premi che abbiamo dato, vedi Statistiche chiave per cacciare di bug.

Investiamo anche nella ricerca di exploit zero-day e di altri problemi di sicurezza nel software open source che utilizziamo. Eseguiamo Project Zero, un team di ricercatori Google dedicato alla ricerca zero-day le vulnerabilità, tra cui Spectre e Meltdown. Inoltre, siamo il più grande mittente di CVE e correzioni di bug di sicurezza per l'hypervisor KVM di Linux.

Protezioni del codice sorgente

Il nostro codice sorgente è archiviato in repository con integrità del codice sorgente integrata e la governance, in cui è possibile controllare sia la versione attuale che quella precedente del servizio. L'infrastruttura richiede che i file binari di un servizio vengano creati da codice sorgente, dopo essere stato esaminato, archiviato e testato. L'Autorizzazione binaria per Borg (BAB) è un controllo dell'applicazione forzata interno che viene eseguito quando viene eseguito il deployment di un servizio. BAB esegue quanto segue:

  • Assicura che il software di produzione e la configurazione di cui viene eseguito il deployment di Google viene esaminato e autorizzato, in particolare quando il codice può accedere ai dati utente.
  • Garantisce che i deployment di codice e configurazione soddisfino determinati requisiti minimi standard.
  • Limita la capacità di un addetto ai lavori o di un avversario di commettere modifiche al codice sorgente e fornisce anche una traccia forense da all'origine.

Proteggere le credenziali e i dispositivi dei dipendenti

Adottiamo misure di salvaguardia per proteggere i dispositivi e le credenziali dei nostri dipendenti da eventuali compromissioni. Per proteggere i nostri dipendenti da sofisticati tentativi di phishing, abbiamo sostituito l'autenticazione a due fattori con OTP con l'uso obbligatorio di token di sicurezza compatibili con U2F.

Monitoriamo i dispositivi client che i nostri dipendenti utilizzano per gestire le nostre dell'infrastruttura. Ci assicuriamo che le immagini del sistema operativo per questi dispositivi siano aggiornato con le patch di sicurezza e noi controlliamo le applicazioni installabili sui propri dispositivi. Abbiamo anche sistemi che analizzano le applicazioni, i download, le estensioni del browser e i contenuti dei browser web installati dagli utenti per determinare se sono adatti ai dispositivi aziendali.

Il collegamento alla LAN aziendale non è il nostro meccanismo principale per concedere privilegi di accesso. Utilizziamo invece la sicurezza zero trust per proteggere l'accesso dei dipendenti alle nostre risorse. I controlli di gestione dell'accesso a livello di applicazione espongono le applicazioni interne ai dipendenti solo quando questi utilizzano un dispositivo gestito e si connettono da reti e posizioni geografiche previste. Un dispositivo client è attendibile in base a un certificato emesso per la singola macchina e in base ad affermazioni sulla sua configurazione (ad esempio software aggiornato). Per ulteriori informazioni, consulta BeyondCorp.

Riduzione dei rischi provenienti da personale interno

Il rischio interno è il potenziale di un dipendente, di un'impresa a contratto o di un ex altro partner commerciale che ha o aveva autorizzato l'accesso alla nostra rete, al nostro o dati di fare un uso improprio di tale accesso e comprometterne la riservatezza, l'integrità o disponibilità delle nostre informazioni o dei nostri sistemi informativi.

Per contribuire a ridurre i rischi provenienti da personale interno, limitiamo e monitoriamo attivamente le attività dipendenti a cui è stato concesso l'accesso amministrativo all'infrastruttura. Me lavorare costantemente per eliminare la necessità di accessi privilegiati per particolari le attività utilizzando l'automazione in grado di svolgere le stesse attività in un ambiente in modo controllato. Esponiamo API limitate che consentono il debug senza esporre sensibili e richiediamo l'approvazione di due parti per determinate azioni sensibili eseguite da operatori umani.

L'accesso dei dipendenti Google alle informazioni degli utenti finali può essere registrato attraverso gli hook dell'infrastruttura. Il nostro team di sicurezza monitora i pattern di accesso e esamina gli eventi insoliti. Per ulteriori informazioni, vedi Gestione degli accessi con privilegi in Google Cloud (PDF).

Utilizziamo l'autorizzazione binaria per Borg per contribuire a proteggere la nostra catena di approvvigionamento dai rischi legati agli addetti ai lavori. Inoltre, il nostro investimento in BeyondProd contribuisce a proteggere i dati utente nell'infrastruttura di Google e a instaurare la fiducia nei nostri servizi.

In Google Cloud, puoi monitorare l'accesso ai tuoi dati utilizzando Access Transparency. I log di Access Transparency ti consentono di verificare che il personale di Google acceda ai tuoi contenuti solo per motivi aziendali validi, ad esempio per risolvere un'interruzione o per rispondere alle tue richieste di assistenza. Access Approval garantisce che l'assistenza clienti e i tecnici Google Cloud richiedano la tua approvazione esplicita quando devono accedere ai tuoi dati. L'approvazione è basata su crittografia verificati per garantire l'integrità dell'approvazione di accesso.

Per ulteriori informazioni sulle protezioni del servizio di produzione, consulta In che modo Google ne protegge la produzione Google Cloud.

Monitoraggio delle minacce

Il Threat Analysis Group di Google monitora gli autori di minacce e l'evoluzione delle loro tattiche e tecniche. Gli obiettivi di questo gruppo sono contribuire a migliorare la sicurezza e la protezione dei prodotti Google e condividere queste informazioni a vantaggio della comunità online.

Per Google Cloud, puoi utilizzare Google Cloud Threat Intelligence per le operazioni di sicurezza di Google e VirusTotal per monitorare e rispondere a molti tipi di malware. Minaccia Google Cloud Intelligence for Google Security Operations è un team di ricercatori che sviluppano minacce le informazioni sulle minacce da usare Google Security Operations. VirusTotal è una soluzione di database e visualizzazione del malware che puoi usare per a capire meglio come funziona il malware all'interno della tua azienda.

Per ulteriori informazioni sulle nostre attività di monitoraggio delle minacce, consulta Report Orizzonti di minaccia.

Rilevamento delle intrusioni

Utilizziamo pipeline di elaborazione dati sofisticate per integrare indicatori basati su host su singoli dispositivi, segnali basati sulla rete da vari punti di monitoraggio dell'infrastruttura e indicatori dai servizi di infrastruttura. Le regole e l'intelligenza artificiale basate su queste pipeline inviano avvisi sui possibili incidenti agli ingegneri della sicurezza operativa. I nostri team investigativi e di risposta agli incidenti valutare, analizzare e rispondere a questi potenziali incidenti 24 ore al giorno, 365 giorni all'anno. Conduciamo Squadra rossa esercizi per misurare e migliorare l'efficacia dei nostri sistemi di rilevamento e risposta i meccanismi dell'impatto del diamante.

Passaggi successivi