Panoramica di Cloud Run Threat Detection

Il rilevamento delle minacce di Cloud Run è un servizio integrato di Security Command Center che monitora continuamente lo stato delle risorse Cloud Run supportate per rilevare gli attacchi in fase di runtime più comuni. Se il rilevamento delle minacce di Cloud Run rileva un attacco, genera un risultato in Security Command Center quasi in tempo reale.

I rilevatori di runtime di Cloud Run Threat Detection monitorano le risorse Cloud Run per rilevare librerie e file binari sospetti e utilizzano l'elaborazione del linguaggio naturale (NLP) per rilevare codice dannoso in Bash e Python.

Inoltre, i rilevatori del piano di controllo sono disponibili tramite Event Threat Detection. Questi rilevatori monitorano il flusso di Cloud Logging della tua organizzazione o dei tuoi progetti per rilevare potenziali attacchi al piano di controllo delle risorse Cloud Run.

Risorse supportate

Cloud Run Threat Detection monitora le seguenti risorse:

Ambienti di esecuzione supportati

Gli ambienti di esecuzione supportati sono diversi per i rilevatori di runtime e per i rilevatori del piano di controllo.

Ambienti di esecuzione supportati per i rilevatori di runtime

I raccoglitori di runtime di Cloud Run Threat Detection supportano solo le risorse Cloud Run in esecuzione nell'ambiente di esecuzione di seconda generazione. Valuta quanto segue prima di attivare Cloud Run Threat Detection:

  • Quando attivi Cloud Run Threat Detection, non puoi creare un servizio o una revisione del servizio Cloud Run che viene eseguito nell'ambiente di esecuzione di prima generazione. Il servizio Cloud Run deve utilizzare l'ambiente di esecuzione di seconda generazione. Ti consigliamo di testare i workload nell'ambiente di esecuzione di seconda generazione prima di attivare Cloud Run Threat Detection.

  • Per attivare il rilevamento delle minacce in fase di runtime per un servizio, esegui il deployment di una revisione che imposti l'ambiente di esecuzione del servizio sulla seconda generazione o sull'ambiente di esecuzione predefinito.

Ambienti di esecuzione supportati per i rilevatori del piano di controllo

I rivelatori del piano di controllo supportano sia gli ambienti di esecuzione di prima che di seconda generazione.

Come funziona il rilevamento delle minacce di Cloud Run Threat Detection in fase di esecuzione

Quando attivi il rilevamento delle minacce di Cloud Run, viene raccolta la telemetria dalle risorse Cloud Run supportate per analizzare processi, script e librerie che potrebbero indicare un attacco in fase di runtime. Di seguito è riportato il percorso di esecuzione quando vengono rilevati gli eventi:

  1. Cloud Run Threat Detection utilizza un processo di monitoraggio per raccogliere informazioni su container ed eventi per l'intera durata di un carico di lavoro Cloud Run. L'avvio del processo di monitoraggio può richiedere fino a 20 secondi.
  2. Cloud Run Threat Detection analizza le informazioni sugli eventi raccolti per determinare se un evento è indicativo di un incidente. Utilizza l'NLP per analizzare gli script Bash e Python alla ricerca di codice dannoso.

    • Se Cloud Run Threat Detection identifica un incidente, lo segnala come risultato in Security Command Center.

    • Se Cloud Run Threat Detection non identifica un incidente, non viene memorizzata alcuna informazione.

    • Tutti i dati raccolti sono effimeri e non vengono memorizzati in modo permanente.

Per informazioni su come esaminare i risultati di Cloud Run Threat Detection nella console Google Cloud, consulta Esaminare i risultati.

Problemi noti

  • Le istanze dei servizi o dei job Cloud Run che durano più di sette giorni smettono di inviare informazioni di telemetria.
  • Se il processo di monitoraggio si interrompe prematuramente in un'istanza in esecuzione del servizio o del job Cloud Run, il processo di monitoraggio non si riavvia. L'istanza smette di inviare informazioni di telemetria a Cloud Run Threat Detection. I log di Cloud Run Threat Detection non sono presenti nei log dell'istanza. Non è presente alcun indicatore che indichi l'interruzione di un processo di monitoraggio.

Rilevatori

Questa sezione elenca i rilevatori di runtime e del piano di controllo disponibili. Aggiungiamo regolarmente nuovi rilevatori man mano che emergono nuove minacce al cloud.

Rilevatori di runtime

Cloud Run Threat Detection include i seguenti rilevatori di runtime:

Nome visualizzato Nome API Descrizione
Esecuzione: programma binario dannoso aggiuntivo eseguito CLOUD_RUN_ADDED_MALICIOUS_BINARY_EXECUTED

È stato eseguito un file binario che soddisfa le seguenti condizioni:

  • Identificato come dannoso in base alle informazioni sulla minaccia
  • Non fa parte dell'immagine del contenitore originale

Se viene eseguito un file binario dannoso aggiunto, è un chiaro segno che un malintenzionato ha il controllo del carico di lavoro ed esegue software dannoso.

Esecuzione: caricamento di una libreria dannosa aggiuntiva CLOUD_RUN_ADDED_MALICIOUS_LIBRARY_LOADED

È stata caricata una libreria che soddisfa le seguenti condizioni:

  • Identificato come dannoso in base alle informazioni sulla minaccia
  • Non fa parte dell'immagine del contenitore originale

Se viene caricata una libreria dannosa aggiunta, è un chiaro segno che un malintenzionato ha il controllo del carico di lavoro ed esegue software dannoso.

Esecuzione: programma binario dannoso integrato eseguito CLOUD_RUN_BUILT_IN_MALICIOUS_BINARY_EXECUTED

È stato eseguito un file binario che soddisfa le seguenti condizioni:

  • Identificato come dannoso in base alle informazioni sulla minaccia
  • Inclusi nell'immagine contenitore originale

Se viene eseguito un file binario dannoso integrato, è un segno che l'autore dell'attacco sta implementando container dannosi. Potrebbero aver acquisito il controllo di un repository di immagini o della pipeline di compilazione del container legittimi e aver iniettato un file binario dannoso nell'immagine del container.

Esecuzione: evasione dal contenitore CLOUD_RUN_CONTAINER_ESCAPE

All'interno del contenitore è stato eseguito un processo che ha tentato di aggirare l'isolamento del contenitore utilizzando tecniche di evasione o file binari noti. Questo tipo di attacco può consentire all'aggressore di accedere al sistema host. Questi processi vengono identificati come potenziali minacce in base ai dati di intelligence.

Se viene rilevato un tentativo di fuga dal contenitore, potrebbe indicare che un malintenzionato sta sfruttando le vulnerabilità per sfuggire al contenitore. Di conseguenza, l'aggressore potrebbe ottenere l'accesso non autorizzato al sistema ospitante o all'infrastruttura più ampia, compromettendo l'intero ambiente.

Esecuzione: esecuzione dello strumento di attacco Kubernetes CLOUD_RUN_KUBERNETES_ATTACK_TOOL_EXECUTION

Nello spazio è stato eseguito uno strumento di attacco specifico per Kubernetes, il che può indicare che un malintenzionato ha come target i componenti del cluster Kubernetes. Questi strumenti di attacco vengono identificati come potenziali minacce in base ai dati di intelligence.

Se uno strumento di attacco viene eseguito nell'ambiente Kubernetes, può indicare che un malintenzionato ha ottenuto l'accesso al cluster e lo sta utilizzando per sfruttare vulnerabilità o configurazioni specifiche di Kubernetes.

Esecuzione: esecuzione dello strumento di ricognizione locale CLOUD_RUN_LOCAL_RECONNAISSANCE_TOOL_EXECUTION

È stato eseguito uno strumento di ricognizione locale non in genere associato al contenitore o all'ambiente, il che suggerisce un tentativo di raccogliere informazioni sul sistema interno. Questi strumenti di ricognizione sono identificati come potenziali minacce in base ai dati di intelligence.

Se viene eseguito uno strumento di ricognizione, è possibile che l'utente malintenzionato stia tentando di mappare l'infrastruttura, identificare vulnerabilità o raccogliere dati sulle configurazioni di sistema per pianificare i passaggi successivi.

Esecuzione: codice Python dannoso eseguito (anteprima) CLOUD_RUN_MALICIOUS_PYTHON_EXECUTED

Un modello di machine learning ha identificato il codice Python specificato come dannoso. Gli utenti malintenzionati possono utilizzare Python per trasferire strumenti o altri file da un sistema esterno a un ambiente compromesso ed eseguire comandi senza file binari.

Il rilevatore utilizza tecniche di NLP per valutare i contenuti del codice Python eseguito. Poiché questo approccio non si basa su firme, i rilevatori possono identificare codice Python noto e nuovo.

Esecuzione: programma binario dannoso modificato eseguito CLOUD_RUN_MODIFIED_MALICIOUS_BINARY_EXECUTED

È stato eseguito un file binario che soddisfa le seguenti condizioni:

  • Identificato come dannoso in base alle informazioni sulla minaccia
  • Inclusi nell'immagine contenitore originale
  • Modificata dall'immagine del contenitore originale durante il runtime

Se viene eseguito un programma binario dannoso modificato, è un chiaro indizio che un malintenzionato ha il controllo del carico di lavoro ed esegue software dannoso.

Esecuzione: caricamento di una libreria dannosa modificata CLOUD_RUN_MODIFIED_MALICIOUS_LIBRARY_LOADED

È stata caricata una libreria che soddisfa le seguenti condizioni:

  • Identificato come dannoso in base alle informazioni sulla minaccia
  • Inclusi nell'immagine contenitore originale
  • Modificata dall'immagine del contenitore originale durante il runtime

Se viene caricata una libreria dannosa modificata, è un chiaro segno che un malintenzionato ha il controllo del carico di lavoro ed esegue software dannoso.

Script dannoso eseguito CLOUD_RUN_MALICIOUS_SCRIPT_EXECUTED

Un modello di machine learning ha identificato il codice Bash specificato come dannoso. Gli utenti malintenzionati possono utilizzare Bash per trasferire strumenti o altri file da un sistema esterno a un ambiente compromesso ed eseguire comandi senza binari.

Il rilevatore utilizza tecniche di NLP per valutare i contenuti del codice Bash eseguito. Poiché questo approccio non si basa su firme, i rilevatori possono identificare codice Bash dannoso noto e nuovo.

URL dannoso rilevato CLOUD_RUN_MALICIOUS_URL_OBSERVED

Cloud Run Threat Detection ha rilevato un URL dannoso nell'elenco degli argomenti di un processo in esecuzione.

Il rilevatore controlla gli URL osservati nell'elenco degli argomenti dei processi in esecuzione rispetto agli elenchi di risorse web non sicure gestiti dal servizio Navigazione sicura di Google. Se un URL è classificato erroneamente come sito di phishing o malware, segnalalo alla pagina Segnalare dati errati.

Shell inversa CLOUD_RUN_REVERSE_SHELL

È stato avviato un processo con il reindirizzamento dello stream a una socket collegata da remoto. Il rilevatore cerca stdin associato a una socket remota.

Con una shell inversa, un malintenzionato può comunicare da un workload compromesso a una macchina controllata dall'utente malintenzionato. L'aggressore può quindi controllare il carico di lavoro, ad esempio nell'ambito di una botnet.

Shell secondario imprevisto CLOUD_RUN_UNEXPECTED_CHILD_SHELL

Un processo che normalmente non richiama shell ha generato un processo shell.

Il rilevatore monitora tutte le esecuzioni dei processi. Quando viene invocata una shell, il rilevatore genera un rilevamento se è noto che il processo principale non invoca normalmente le shell.

Rilevatori del piano di controllo

I seguenti rilevatori del piano di controllo sono disponibili tramite Event Threat Detection. Questi rilevatori sono attivi per impostazione predefinita. Gestisci questi rilevatori allo stesso modo in cui gestisci gli altri rilevatori di Event Threat Detection. Per ulteriori informazioni, consulta la sezione Utilizzare Event Threat Detection.

Nome visualizzato Nome API Tipi di origini log Descrizione
Impatto: comandi di cryptomining (anteprima) CLOUD_RUN_JOBS_CRYPTOMINING_COMMANDS Audit log di Cloud:
Audit log degli eventi di sistema IAM
Comandi di cryptomining specifici sono stati collegati a un job Cloud Run durante l'esecuzione.
Esecuzione: immagine Docker per il cryptomining (anteprima) CLOUD_RUN_CRYPTOMINING_DOCKER_IMAGES Audit log di Cloud:
Audit log degli eventi di sistema IAM
Immagini Docker con errori noti specifici sono state associate a un servizio o job Cloud Run nuovo o esistente.
Escalation dei privilegi: SetIAMPolicy dell'account di servizio Compute Engine predefinito (anteprima) CLOUD_RUN_SERVICES_SET_IAM_POLICY Audit log di Cloud:
Log attività di amministrazione
L'account di servizio Compute Engine predefinito è stato utilizzato per impostare il criterio IAM per un servizio Cloud Run. Si tratta di una potenziale azione post-exploit quando un token Compute Engine viene compromesso da un servizio serverless.
Per le regole ritirate e chiuse, consulta la sezione Ritiro.

Passaggi successivi