Best practice per la protezione dagli attacchi di mining di criptovaluta

Last reviewed 2023-10-20 UTC

Il mining di criptovalute (noto anche come mining di bitcoin) è il processo utilizzato per creare nuove criptovalute e verificare le transazioni. Gli attacchi di mining di critovaluta si verificano quando anche aggressori che ottengono accesso al tuo ambiente potrebbero sfruttare e gestire le proprie operazioni di mining a tue spese.

In base alle report Threat Horizons di novembre 2021, Gli attacchi di criptovaluta sono il modo più comune di sfruttamento da parte degli aggressori le tue risorse di calcolo dopo aver compromesso il tuo Google Cloud completamente gestito di Google Cloud. Il rapporto dice anche che gli aggressori solitamente scaricano software di mining di criptovaluta alle tue risorse entro 22 secondi dal o compromettere il tuo impianto. Il mining di criptovalute può far aumentare rapidamente i costi. un attacco di criptovaluta può causare una fattura molto più elevata di quanto ti aspettassi. Poiché i costi possono aumentare rapidamente, è necessario adottare misure protettive, investigative misure di mitigazione per proteggere la tua organizzazione.

Questo documento è rivolto agli architetti e agli amministratori della sicurezza. it descrive le best practice che puoi adottare per proteggere i tuoi Risorse di Google Cloud dagli attacchi di mining di criptovalute e assistenza per mitigare l'impatto in caso di attacco.

Identifica i vettori delle minacce

Per determinare l'esposizione della tua organizzazione agli attacchi di mining di criptovaluta, devono identificare i vettori delle minacce che si applicano alla propria azienda.

Il report Orizzonti delle minacce del novembre 2021 indica che la maggior parte degli aggressori sfrutta vulnerabilità come le seguenti:

  • Password inefficace o assente per gli account utente
  • Debole o assente autenticazione per le API Google Cloud
  • Vulnerabilità nel software di terze parti
  • Errori di configurazione nell'ambiente Google Cloud o le applicazioni di terze parti in esecuzione su Google Cloud
  • Credenziali divulgate, ad esempio chiavi degli account di servizio pubblicate in pubblico Repository GitHub

Inoltre, puoi richiedere l'iscrizione ai seguenti documenti per avere un elenco dei vettori di minacce:

Dopo aver identificato i vettori delle minacce che si applicano a te, puoi utilizzare best practice rimanenti in questo documento per aiutarti a risolverli.

Proteggere gli account e le credenziali degli account

Gli utenti malintenzionati possono sfruttare account non protetti o mal gestiti per ottenere l'accesso ai tuoi alle risorse di Compute Engine. Google Cloud include diverse opzioni che che puoi configurare per gestire account e gruppi.

Limitare l'accesso all'ambiente cloud

La seguente tabella descrive i criteri dell'organizzazione che puoi utilizzare per e definire chi può accedere al tuo ambiente cloud.

Vincolo dei criteri dell'organizzazione Descrizione
Condivisione limitata per il dominio Specifica gli ID cliente per Cloud Identity o Google Workspace.
Account AWS consentiti che possono essere configurati per il carico di lavoro federazione delle identità in Cloud IAM In un ambiente cloud ibrido, definisci quali account AWS possono utilizzare per l'identificazione dei carichi di lavoro e la federazione.
Provider di identità esterni consentiti per carichi di lavoro In un ambiente cloud ibrido, definisci i provider di identità dei carichi di lavoro.

Configurare l'autenticazione MFA o l'autenticazione a due fattori (2FA)

Cloud Identity supporta l'autenticazione a più fattori (MFA) utilizzando vari metodi. Configurare MFA, in particolare per gli account con privilegi. Per ulteriori informazioni, vedi Applicare l'MFA uniforme alle risorse di proprietà dell'azienda.

Per prevenire attacchi di phishing che possono portare al mining di criptovaluta attacchi, usa Token di sicurezza Titan per l'autenticazione a due fattori (2FA).

Configura il privilegio minimo

Il privilegio minimo garantisce che utenti e servizi abbiano solo l'accesso che devono svolgere le proprie attività specifiche. Il privilegio minimo rallenta la capacità di attacchi a tutta l'azienda perché un aggressore non può facilmente e ad aumentare i loro privilegi.

Per soddisfare le esigenze della tua organizzazione, utilizza criteri, ruoli e autorizzazioni in Identity and Access Management (IAM). Inoltre, analizza regolarmente le tue autorizzazioni utilizzando strumento per suggerimenti sul ruolo e Analizzatore criteri. Il motore per suggerimenti di ruoli utilizza il machine learning per analizzare le impostazioni e fornire consigli per garantire che le impostazioni del ruolo rispettino il principio del privilegio minimo. L'Analizzatore criteri ti consente di vedere quali account sono l'accesso alle risorse cloud.

Monitorare gli account

Se utilizzi i gruppi per assegnare criteri IAM, monitora i log del gruppo per assicurarti che non vengano aggiunti account non aziendali. Inoltre, limita di identità basate sui domini Cloud Identity o Google Workspace, che possono accedere alle tue risorse. Per ulteriori informazioni, vedi Limitazione delle identità in base al dominio.

Assicurati che le procedure di offboarding includano procedure per la disattivazione e reimpostare le autorizzazioni quando i dipendenti lasciano l'organizzazione o cambiano ruoli. Per ulteriori informazioni, vedi Revoca dell'accesso a Google Cloud.

Per verificare gli utenti e i gruppi, vedi Log di controllo per Google Workspace.

Riduci l'esposizione a internet delle tue risorse Compute Engine e GKE

Ridurre l'esposizione a internet significa che i malintenzionati hanno meno opportunità per trovare e sfruttare le vulnerabilità. Questa sezione descrive le best practice che ti aiutano a proteggere le VM di Compute Engine Cluster Google Kubernetes Engine (GKE) dall'esposizione a internet.

Limita traffico esterno

Non assegnare indirizzi IP esterni alle tue VM. Puoi utilizzare la funzionalità Disabilita l'utilizzo di IPv6 VPC esterno vincolo dei criteri dell'organizzazione per negare l'IP esterno a tutte le VM. Per visualizzare quali VM hanno indirizzi IP accessibili pubblicamente, vedi Individuare gli indirizzi IP per un'istanza. Se la tua architettura richiede indirizzi IP esterni per le VM, utilizza il criterio dell'organizzazione Definisci IP esterni consentiti per le istanze VM, che ti consente di definire un elenco di nomi di istanze a cui è consentito avere indirizzi IP esterni.

Limita i nodi GKE solo agli indirizzi IP interni. Per maggiori informazioni le informazioni, vedi Creazione di un cluster privato.

Limita il traffico in entrata e in uscita (in uscita) verso internet per a tutte le risorse dei tuoi progetti. Per ulteriori informazioni, vedi Regole firewall VPC e Criteri firewall gerarchici.

Per ulteriori informazioni sulla limitazione del traffico esterno, ad esempio Cloud NAT per consentire le comunicazioni in uscita per le VM senza IP esterno o l'utilizzo di un bilanciatore del carico proxy per le comunicazioni in entrata, consulta Connessione sicura alle istanze VM.

Utilizza i perimetri di servizio

Crea un perimetro di servizio per le risorse Compute Engine e GKE Controlli di servizio VPC. Controlli di servizio VPC consente di controllare le comunicazioni alle risorse di Compute Engine dall'esterno del perimetro. Servizio perimetri consentono la libera comunicazione all'interno del perimetro, bloccano l'esfiltrazione di dati e bloccano il servizio per le comunicazioni dall'esterno del perimetro. Utilizza le funzionalità di accesso sensibile al contesto come gli indirizzi IP e gli attributi utente per controllare ulteriormente l'accesso servizi Google Cloud da internet.

Configura la sicurezza Zero Trust

Configura la sicurezza Zero Trust con Chrome Enterprise Premium Chrome Enterprise Premium offre da minacce e protezione dei dati e controlli dell'accesso. Se i carichi di lavoro si trovano sia on-premise che in Google Cloud, e configurare Identity-Aware Proxy (IAP). Configura Inoltro TCP per controllare chi può accedere ai servizi amministrativi come SSH e RDP sul tuo risorse Google Cloud dalla rete internet pubblica. L'inoltro TCP impedisce che questi servizi siano apertamente esposti a internet.

Proteggi le tue risorse Compute Engine e GKE

Il mining di criptovalute richiede l'accesso a Compute Engine e delle risorse GKE. Questa sezione descrive le best practice che ti aiuterà a proteggere Compute Engine delle risorse GKE.

Proteggi le immagini VM

Utilizza immagini VM protette e curate configurando VM schermata. La Shielded VM è progettata per prevenire codici dannosi come il caricamento di malware o rootkit durante il ciclo di avvio. La Shielded VM offre sicurezza in fase di avvio, monitora l'integrità e utilizza Virtual Trusted Platform Module (vTPM).

Per limitare le immagini di cui è possibile eseguire il deployment, puoi implementare norme relative alle immagini attendibili. Il criterio dell'organizzazione Definisci progetti di immagini attendibili definisce i progetti può archiviare immagini e dischi permanenti. Assicurati che siano attendibili in questi progetti.

In GKE, assicurati che i container utilizzino immagini di base, che vengono aggiornati regolarmente con patch di sicurezza. Inoltre, considera immagini container senza distroless che includono solo l'applicazione e le sue dipendenze di runtime.

Accesso sicuro SSH alle VM

Configura OS Login per gestire l'accesso SSH alle VM in esecuzione in Compute Engine. OS Login semplifica la gestione degli accessi SSH collegando l'utente Linux dell'amministratore alla propria identità Google. OS Login funziona con IAM per puoi definire i privilegi di cui dispongono gli amministratori.

Per ulteriori informazioni, vedi Proteggi VM e container.

Limitare gli account di servizio

R account di servizio è un account Google Cloud che i carichi di lavoro utilizzano chiamare l'API Google di un servizio.

Non consentire a Google Cloud di assegnare ruoli predefiniti per gli account di servizio alle risorse quando vengono create. Per ulteriori informazioni, vedi Limitazione dell'utilizzo degli account di servizio.

Se le tue applicazioni sono in esecuzione al di fuori di Google Cloud e richiedono l'accesso alle risorse Google Cloud, non utilizzare le chiavi degli account di servizio. Implementa invece federazione delle identità per i carichi di lavoro per gestire le identità esterne e le autorizzazioni associate. Per GKE, puoi implementare identità dei carichi di lavoro. Per ulteriori informazioni, vedi Scegli il metodo di autenticazione giusto per il tuo caso d'uso.

Per altre best practice che contribuiscono a proteggere gli account di servizio, consulta Best practice per l'utilizzo degli account di servizio.

Monitorare l'utilizzo degli account di servizio e delle chiavi degli account di servizio

Configura il monitoraggio per permetterti di tenere traccia del modo in cui gli account di servizio e le chiavi degli account di servizio utilizzate nella tua organizzazione. Per avere visibilità su pattern di utilizzo degni di nota, usa insight per account di servizio. Ad esempio, puoi utilizzare gli insight sugli account di servizio per monitorare il modo in cui utilizzati nei tuoi progetti e per identificare gli account di servizio inutilizzati. Per vedere quando gli account di servizio e le chiavi sono stati utilizzati l'ultima volta per chiamare un'API di Google per l'autenticazione attività, visualizzare l'utilizzo recente degli account di servizio e delle chiavi degli account di servizio.

Monitora e applica patch a VM e container

Per avviare un attacco di criptovaluta, gli aggressori spesso sfruttano errori di configurazione e vulnerabilità del software per ottenere l'accesso di Compute Engine e GKE.

Per ottenere insight sulle vulnerabilità e sugli errori di configurazione applicabili il tuo ambiente, utilizza Analisi dello stato della sicurezza per eseguire la scansione delle tue risorse. In particolare, se utilizzi Security Command Center Premium, consulta qualsiasi Risultati delle istanze Compute Engine e Risultati container e impostare processi per risolverli rapidamente.

Utilizza le funzionalità di Analisi degli artefatti per verificare la presenza di vulnerabilità nelle immagini container archiviate Artifact Registry o Container Registry.

Assicurati che la tua organizzazione possa eseguire il deployment delle patch non appena sono disponibili. Puoi utilizzare la modalità OS Patch Management per Compute Engine. Google automaticamente applica patch alle vulnerabilità in GKE. Per ulteriori informazioni, vedi Mantieni aggiornate le immagini e i cluster.

Proteggi le tue applicazioni utilizzando un WAF

Gli aggressori possono provare ad accedere alla tua rete trovando Livello 7 le vulnerabilità all'interno delle applicazioni di cui hai eseguito il deployment. Per ridurre le configurano questi attacchi Google Cloud Armor un web application firewall (WAF) che utilizza filtri di livello 7 e criteri di sicurezza. Google Cloud Armor offre denial of service (DoS) e WAF per applicazioni e servizi ospitati su Google Cloud, on-premise o su altri cloud.

Google Cloud Armor include una regola WAF per contribuire a risolvere le vulnerabilità di Apache Log4j. Gli aggressori possono utilizzare le vulnerabilità di Log4j per introdurre malware in grado di eseguire mining di criptovaluta non autorizzato. Per ulteriori informazioni, vedi Regola WAF di Google Cloud Armor per aiutare a risolvere la vulnerabilità di Apache Log4j.

Proteggi la catena di fornitura

L'integrazione continua e la distribuzione continua (CI/CD) forniscono un meccanismo per per offrire rapidamente ai clienti le funzionalità più recenti. Per evitare attacchi di criptovaluta contro la pipeline, eseguire analisi del codice e per monitorare la pipeline per rilevare eventuali attacchi dannosi.

Implementa Autorizzazione binaria per assicurarti che tutte le immagini siano firmate da autorità attendibili durante di sviluppo e applicare la convalida della firma quando esegui il deployment in formato Docker.

Sposta i controlli di sicurezza il prima possibile nel processo CI/CD (a volte noto come spostamento a sinistra). Per ulteriori informazioni, vedi Il passaggio alla sicurezza: proteggere le catene di fornitura del software. Per informazioni su come configurare una catena di fornitura sicura con per GKE, consulta Sicurezza della catena di fornitura del software.

Gestisci secret e chiavi

Un vettore di attacco chiave per attacchi non autorizzati di mining di criptovaluta non è sicuro o segreti divulgati. Questa sezione descrive le best practice che puoi utilizzare per: per aiutarti a proteggere i tuoi secret e le tue chiavi di crittografia.

Ruota regolarmente le chiavi di crittografia

Assicurati che tutte le chiavi di crittografia vengano ruotate regolarmente. Se Cloud KMS le tue chiavi di crittografia, puoi ruotare automaticamente le chiavi di crittografia.

Se utilizzi account di servizio con chiavi di proprietà di Google e gestite da Google, le chiavi vengono ruotate automaticamente.

Evita di scaricare i secret

I segreti scoperti sono un vettore di attacco chiave per gli aggressori. Se possibile, esegui Non scaricare chiavi di crittografia o altri secret, incluse le chiavi degli account di servizio. Se devi scaricare le chiavi, assicurati che la tua organizzazione ne abbia una rotazione della chiave processo in atto.

Se utilizzi GitHub o un altro repository pubblico, evita di perdite e credenziali. Implementa strumenti come scansione segreta, che ti avvisa in caso di secret esposti nei repository GitHub. Per interrompere le chiavi dal commit nei repository GitHub, valuta di utilizzare strumenti come git-secret.

Utilizza soluzioni di gestione dei secret come Secret Manager e vault di hashicorp per archiviare i tuoi secret, ruotarli regolarmente e applicare privilegio minimo.

Rileva attività anomala

Per monitorare le attività anomale, configura Google Cloud e di terze parti gli strumenti di monitoraggio e configurare gli avvisi. Ad esempio, configura avvisi basati su l'attività dell'amministratore nel Informazioni sull'audit logging di Compute Engine e Audit log di GKE.

Inoltre, utilizza Event Threat Detection in Security Command Center per identificare le minacce che si basano sulle attività degli amministratori, sulle modifiche ai gruppi Google Modifiche alle autorizzazioni IAM. Utilizza le funzionalità di Virtual Machine Threat Detection in Security Command Center per identificare le minacce relative alle VM di Compute Engine. Per saperne di più sui servizi Security Command Center, consulta Livelli di servizio di Security Command Center.

Per contribuire a rilevare le minacce basate sulla rete, come il malware, configura Cloud IDS.

Partecipare al programma di protezione dal cryptomining di Security Command Center

Se sei un cliente Security Command Center Premium e utilizzi Compute Engine, puoi partecipa al Programma di protezione dal cryptomining di Security Command Center. Questo programma ti consente di sostenere i costi delle VM di Compute Engine correlati a eventi e attacchi di cryptomining non autorizzati nel tuo ambiente VM di Compute Engine. Devi implementare le best practice per il rilevamento del cryptomining, alcune delle quali si sovrappongono ad altre best practice descritte in questa .

Aggiorna il piano di risposta agli incidenti

Assicurarsi che il piano di risposta agli incidenti e i programmi forniscano indicazioni indicazioni su come la tua organizzazione risponderà agli attacchi di mining di criptovaluta. Per ad esempio, assicurati che il piano includa quanto segue:

  • Come presentare una richiesta di assistenza con l'assistenza clienti Google Cloud e contatta il tuo Google Technical Account Manager (TAM). Se non hai un account di assistenza, rivedi le piani di assistenza per crearne uno.
  • Come capire la differenza tra legittimi computing ad alte prestazioni (HPC) carichi di lavoro e attacchi di criptovaluta. Ad esempio, puoi taggare nei progetti è abilitato l'HPC (computing ad alte prestazioni) e configurano avvisi per aumenti imprevisti dei costi.
  • Come comportarsi con credenziali Google Cloud compromesse.
  • Come mettere in quarantena i sistemi infetti e ripristinare i dati da backup integri.
  • Gli utenti della tua organizzazione che devono ricevere una notifica per effettuare accertamenti e rispondere durante l'attacco.
  • Quali informazioni devono essere registrate per le attività retrospettive.
  • Come verificare che le attività di correzione abbiano rimosso in modo efficace attività di mining e risolto la vulnerabilità iniziale che ha portato un attacco.
  • Come rispondere a un avviso inviato dall'assistenza clienti Google Cloud. Per maggiori informazioni le informazioni, vedi Domande frequenti sulle violazioni delle norme.

Per ulteriori informazioni, vedi Rispondere agli attacchi e riprendersi.

Implementare un piano di ripristino di emergenza

Per prepararti a un attacco di criptovaluta, completa continuità aziendale e piani di ripristino di emergenza, creare un programma per la risposta agli incidenti ed eseguire esercizi di simulazione.

Se si verifica un mining di criptovaluta non autorizzato, assicurati di poter risolvere il problema che ha causato la violazione iniziale e che è possibile ricostruire dell'ambiente in uno stato noto Il piano di ripristino di emergenza deve fornire è in grado di determinare lo stato di buono noto in modo che l’aggressore non puoi utilizzare ripetutamente le stesse vulnerabilità per sfruttare le tue risorse.

Passaggi successivi