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 Bash e Python dannoso.
Inoltre, i rilevatori del control plane 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 control plane delle tue 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 control plane.
Ambienti di esecuzione supportati per i rilevatori di runtime
I detector di runtime di Cloud Run Threat Detection supportano solo le risorse Cloud Run eseguite nell'ambiente di esecuzione di seconda generazione. Considera quanto segue prima di abilitare Cloud Run Threat Detection:
Quando abiliti Cloud Run Threat Detection, non puoi creare un servizio Cloud Run o una revisione del servizio che viene eseguita 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 tuoi workload nell'ambiente di esecuzione di seconda generazione prima di attivare Cloud Run Threat Detection.
Per abilitare il rilevamento delle minacce in fase di runtime per un servizio, deploy una revisione che imposta l'ambiente di esecuzione del servizio sull'ambiente di esecuzione di seconda generazione o su quello predefinito.
Ambienti di esecuzione supportati per i rilevatori del control plane
I detector del control plane supportano gli ambienti di esecuzione di prima e seconda generazione.
Come funziona il rilevamento delle minacce in fase di runtime di Cloud Run Threat Detection
Quando attivi Cloud Run Threat Detection, raccoglie 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 eventi:
- Cloud Run Threat Detection utilizza un processo di osservazione per raccogliere informazioni su container ed eventi per l'intera durata di un carico di lavoro Cloud Run.
Cloud Run Threat Detection analizza le informazioni sugli eventi raccolte per determinare se un evento è indicativo di un incidente. Utilizza l'elaborazione del linguaggio naturale 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 vengono archiviate informazioni.
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
- Se il processo di monitoraggio si interrompe prematuramente in un'istanza in esecuzione del servizio o del job Cloud Run, non viene riavviato. 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 un processo di monitoraggio sia stato interrotto.
Rilevatori
Questa sezione elenca i rilevatori di runtime e del control plane disponibili. Aggiungiamo regolarmente nuovi rilevatori man mano che emergono nuove minacce cloud.
Rilevatori di runtime
Cloud Run Threat Detection include i seguenti rilevatori di runtime:
| Nome visualizzato | Nome API | Descrizione |
|---|---|---|
| Comando e controllo: strumento di steganografia rilevato | CLOUD_RUN_STEGANOGRAPHY_TOOL_DETECTED |
È stato eseguito un programma identificato come strumento di steganografia comunemente presente in ambienti simili a Unix, il che indica un potenziale tentativo di nascondere la comunicazione o il trasferimento di dati. Gli autori degli attacchi potrebbero utilizzare tecniche steganografiche per incorporare istruzioni di comando e controllo (C2) dannose o dati esfiltrati all'interno di file digitali apparentemente innocui, con l'obiettivo di eludere il monitoraggio e il rilevamento della sicurezza standard. Identificare l'utilizzo di questi strumenti è fondamentale per scoprire attività dannose nascoste. |
| Accesso con credenziali: trova Google Cloud credenziali | CLOUD_RUN_FIND_GCP_CREDENTIALS |
È stato eseguito un comando per cercare Google Cloud chiavi private, password o altre credenziali sensibili all'interno dell'ambiente del container. Un malintenzionato potrebbe utilizzare credenziali Google Cloud rubate per ottenere l'accesso illegittimo a dati o risorse sensibili all'interno dell'ambiente Google Cloud di destinazione. |
| Accesso alle credenziali: ricognizione chiave GPG | CLOUD_RUN_GPG_KEY_RECONNAISSANCE |
È stato eseguito un comando per cercare le chiavi di sicurezza GPG. Un malintenzionato potrebbe utilizzare chiavi di sicurezza GPG rubate per ottenere l'accesso non autorizzato a comunicazioni o file criptati. |
| Accesso alle credenziali: cerca chiavi private o password | CLOUD_RUN_SEARCH_PRIVATE_KEYS_OR_PASSWORDS |
È stato eseguito un comando per cercare chiavi private, password o altre credenziali sensibili all'interno dell'ambiente del container, il che indica un potenziale tentativo di raccogliere dati di autenticazione. Gli aggressori spesso cercano file di credenziali per ottenere l'accesso non autorizzato ai sistemi, aumentare i privilegi o spostarsi lateralmente all'interno dell'ambiente. Il rilevamento di queste attività è fondamentale per prevenire violazioni della sicurezza. |
| Evasione della difesa: riga di comando del file ELF Base64 | CLOUD_RUN_BASE64_ELF_FILE_CMDLINE |
È stato eseguito un processo che contiene un argomento che è un file ELF (Executable and Linkable Format). Se viene rilevata l'esecuzione di un file ELF codificato, significa che un malintenzionato sta tentando di codificare dati binari per il trasferimento a righe di comando solo ASCII. Gli autori degli attacchi possono utilizzare questa tecnica per eludere il rilevamento ed eseguire codice dannoso incorporato in un file ELF. |
| Evasione della difesa: script Python con codifica Base64 eseguito | CLOUD_RUN_BASE64_ENCODED_PYTHON_SCRIPT_EXECUTED |
È stato eseguito un processo che contiene un argomento che è uno script Python con codifica base64. Se viene rilevata l'esecuzione di uno script Python codificato, significa che un malintenzionato sta tentando di codificare dati binari per il trasferimento a righe di comando solo ASCII. Gli autori degli attacchi possono utilizzare questa tecnica per eludere il rilevamento ed eseguire codice dannoso incorporato in uno script Python. |
| Evasione della difesa: script shell con codifica Base64 eseguito | CLOUD_RUN_BASE64_ENCODED_SHELL_SCRIPT_EXECUTED |
È stato eseguito un processo che contiene un argomento che è uno script shell con codifica base64. Se viene rilevata l'esecuzione di uno script shell codificato, significa che un malintenzionato sta tentando di codificare dati binari per il trasferimento a righe di comando solo ASCII. Gli autori degli attacchi possono utilizzare questa tecnica per eludere il rilevamento ed eseguire codice dannoso incorporato in uno script shell. |
| Evasione della difesa: avvia strumento di compilazione codice nel container | CLOUD_RUN_LAUNCH_CODE_COMPILER_TOOL_IN_CONTAINER |
È stato avviato un processo per lanciare uno strumento di compilazione del codice all'interno dell'ambiente container, il che indica un potenziale tentativo di creare o modificare codice eseguibile in un contesto isolato. Gli autori degli attacchi potrebbero utilizzare i compilatori di codice all'interno dei container per sviluppare payload dannosi, inserire codice in file binari esistenti o creare strumenti per aggirare i controlli di sicurezza, il tutto operando in un ambiente meno controllato per evitare il rilevamento sul sistema host. |
| Esecuzione: file binario aggiuntivo dannoso eseguito | CLOUD_RUN_ADDED_MALICIOUS_BINARY_EXECUTED |
È stato eseguito un binario che soddisfa le seguenti condizioni:
Se viene eseguito un binario dannoso aggiunto, è un chiaro segnale che un malintenzionato ha il controllo del workload e sta eseguendo software dannoso. |
| Esecuzione: libreria dannosa aggiuntiva caricata | CLOUD_RUN_ADDED_MALICIOUS_LIBRARY_LOADED |
È stata caricata una libreria che soddisfa le seguenti condizioni:
Se viene caricata una libreria dannosa aggiunta, è un chiaro segnale che un malintenzionato ha il controllo del carico di lavoro e sta eseguendo software dannoso. |
| Esecuzione: file binario dannoso integrato eseguito | CLOUD_RUN_BUILT_IN_MALICIOUS_BINARY_EXECUTED |
È stato eseguito un binario che soddisfa le seguenti condizioni:
Se viene eseguito un file binario dannoso integrato, è un segno che l'attaccante sta eseguendo il deployment di container dannosi. Potrebbero aver ottenuto il controllo di un repository di immagini o di una pipeline di build di container legittimi e aver inserito un binario dannoso nell'immagine container. |
| Esecuzione: container escape | CLOUD_RUN_CONTAINER_ESCAPE |
All'interno del container è stato eseguito un processo che ha tentato di uscire dall'isolamento del container utilizzando tecniche di escape o file binari noti. Questo tipo di attacco può dare all'aggressore l'accesso al sistema host. Questi processi sono identificati come potenziali minacce in base ai dati di intelligence. Se viene rilevato un tentativo di attacco container escape, ciò potrebbe indicare che un malintenzionato sta sfruttando le vulnerabilità per uscire dal container. Di conseguenza, l'aggressore potrebbe ottenere l'accesso non autorizzato al sistema host o a un'infrastruttura più ampia, compromettendo l'intero ambiente. |
| Esecuzione: esecuzione senza file in /memfd: | CLOUD_RUN_FILELESS_EXECUTION_DETECTION_MEMFD |
È stato eseguito un processo utilizzando un descrittore di file in memoria. Se un processo viene avviato da un file in memoria, potrebbe indicare che un malintenzionato sta tentando di aggirare altri metodi di rilevamento per eseguire codice dannoso. |
| Esecuzione: Esecuzione dello strumento di attacco Kubernetes | CLOUD_RUN_KUBERNETES_ATTACK_TOOL_EXECUTION |
Nell'ambiente è stato eseguito uno strumento di attacco specifico per Kubernetes, il che può indicare che un malintenzionato sta prendendo di mira i componenti del cluster Kubernetes. Questi strumenti di attacco sono identificati come potenziali minacce in base ai dati di intelligence. Se uno strumento di attacco viene eseguito all'interno dell'ambiente Kubernetes, ciò può suggerire che un malintenzionato ha ottenuto l'accesso al cluster e sta utilizzando lo strumento 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 associato in genere al container 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, ciò suggerisce che l'attaccante potrebbe tentare di mappare l'infrastruttura, identificare le vulnerabilità o raccogliere dati sulle configurazioni di sistema per pianificare i passaggi successivi. |
| Esecuzione: Python dannoso eseguito | CLOUD_RUN_MALICIOUS_PYTHON_EXECUTED |
Un modello di machine learning ha identificato il codice Python specificato come dannoso. Gli autori degli attacchi 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 il contenuto del codice Python eseguito. Poiché questo approccio non si basa su firme, i rilevatori possono identificare codice Python noto e nuovo. |
| Esecuzione: File binario dannoso modificato eseguito | CLOUD_RUN_MODIFIED_MALICIOUS_BINARY_EXECUTED |
È stato eseguito un binario che soddisfa le seguenti condizioni:
Se viene eseguito un binario dannoso modificato, è un chiaro segnale che un malintenzionato ha il controllo del workload e sta eseguendo software dannoso. |
| Esecuzione: libreria dannosa modificata caricata | CLOUD_RUN_MODIFIED_MALICIOUS_LIBRARY_LOADED |
È stata caricata una libreria che soddisfa le seguenti condizioni:
Se viene caricata una libreria dannosa modificata, è un chiaro segnale che un malintenzionato ha il controllo del carico di lavoro e sta eseguendo software dannoso. |
| Esecuzione: esecuzione di codice remoto Netcat nel container | CLOUD_RUN_NETCAT_REMOTE_CODE_EXECUTION_IN_CONTAINER |
Netcat, un'utilità di rete versatile, è stata eseguita all'interno dell'ambiente container, il che potrebbe indicare un tentativo di stabilire un accesso remoto non autorizzato o di esfiltrare dati. L'utilizzo di Netcat in un ambiente containerizzato potrebbe segnalare il tentativo di un aggressore di creare una shell inversa, consentire il movimento laterale o eseguire comandi arbitrari, il che potrebbe compromettere l'integrità del sistema. |
| Esecuzione: possibile esecuzione di comandi arbitrari tramite CUPS (CVE-2024-47177) | CLOUD_RUN_POSSIBLE_ARBITRARY_COMMAND_EXECUTION_THROUGH_CUPS |
Questa regola rileva l'esecuzione del processo |
| Esecuzione: Possibile esecuzione di comando remoto rilevata | CLOUD_RUN_POSSIBLE_REMOTE_COMMAND_EXECUTION_DETECTED |
È stato rilevato un processo che genera comandi UNIX comuni tramite una connessione socket di rete, il che indica un potenziale tentativo di stabilire funzionalità di esecuzione di comandi remoti non autorizzate. Gli autori degli attacchi utilizzano spesso tecniche che imitano le shell inverse per ottenere il controllo interattivo su un sistema compromesso, consentendo loro di eseguire comandi arbitrari da remoto e aggirare le misure di sicurezza di rete standard, come le restrizioni del firewall. Il rilevamento dell'esecuzione di comandi su un socket è un forte indicatore di accesso remoto dannoso. |
| Esecuzione: Esecuzione del programma con ambiente proxy HTTP non consentito | CLOUD_RUN_PROGRAM_RUN_WITH_DISALLOWED_HTTP_PROXY_ENV |
È stato eseguito un programma con una variabile di ambiente proxy HTTP non consentita. Ciò può indicare un tentativo di aggirare i controlli di sicurezza, reindirizzare il traffico per scopi dannosi o esfiltrare dati tramite canali non autorizzati. Gli autori degli attacchi potrebbero configurare proxy HTTP non consentiti per intercettare informazioni sensibili, instradare il traffico attraverso server dannosi o stabilire canali di comunicazione segreti. Il rilevamento dell'esecuzione di programmi con queste variabili di ambiente è fondamentale per mantenere la sicurezza della rete e prevenire violazioni dei dati. |
| Esecuzione: Rilevata reverse shell Socat | CLOUD_RUN_SOCAT_REVERSE_SHELL_DETECTED |
Il comando
Questa regola rileva l'esecuzione di |
| Esecuzione: Oggetto condiviso OpenSSL sospetto caricato | CLOUD_RUN_SUSPICIOUS_OPENSSL_SHARED_OBJECT_LOADED |
OpenSSL è stato eseguito per caricare un oggetto condiviso personalizzato. Gli autori degli attacchi potrebbero caricare librerie personalizzate e sostituire quelle esistenti utilizzate da OpenSSL per eseguire codice dannoso. Il suo utilizzo in produzione è raro e dovrebbe giustificare un'indagine immediata. |
| Esfiltrazione: avvia strumenti di copia file remoti nel container | CLOUD_RUN_LAUNCH_REMOTE_FILE_COPY_TOOLS_IN_CONTAINER |
È stata rilevata l'esecuzione di uno strumento di copia di file remoti all'interno del container, il che indica una potenziale esfiltrazione di dati, un movimento laterale o la distribuzione di payload dannosi. Gli aggressori spesso utilizzano questi strumenti per trasferire dati sensibili al di fuori del container, spostarsi lateralmente all'interno della rete per compromettere altri sistemi o introdurre malware per ulteriori attività dannose. Il rilevamento dell'utilizzo di strumenti di copia remota dei file è fondamentale per prevenire violazioni dei dati, accessi non autorizzati e ulteriori compromissioni del container e potenzialmente del sistema host. |
| Impatto: Rileva cmdline dannose | CLOUD_RUN_DETECT_MALICIOUS_CMDLINES |
È stato eseguito un comando con argomenti noti per essere potenzialmente distruttivi, ad esempio tentativi di eliminare file di sistema critici o modificare configurazioni relative alle password. Gli autori degli attacchi potrebbero emettere righe di comando dannose per causare instabilità del sistema, impedire il ripristino eliminando file essenziali o ottenere l'accesso non autorizzato manipolando le credenziali utente. Il rilevamento di questi pattern di comando specifici è fondamentale per evitare un impatto significativo sul sistema. |
| Impatto: Rimuovi dati collettivi dal disco | CLOUD_RUN_REMOVE_BULK_DATA_FROM_DISK |
È stato rilevato un processo che esegue operazioni di eliminazione collettiva dei dati, il che potrebbe indicare un tentativo di cancellare prove, interrompere i servizi o eseguire un attacco di cancellazione dei dati all'interno dell'ambiente container. I malintenzionati potrebbero rimuovere grandi volumi di dati per coprire le loro tracce, sabotare le operazioni o prepararsi per l'implementazione di ransomware. Il rilevamento di queste attività aiuta a identificare potenziali minacce prima che si verifichi una perdita di dati critica. |
| Impatto: attività sospetta di estrazione di criptovalute mediante il protocollo Stratum | CLOUD_RUN_SUSPICIOUS_CRYPTO_MINING_ACTIVITY_USING_STRATUM_PROTOCOL |
È stato rilevato un processo che comunica tramite il protocollo Stratum, che viene comunemente utilizzato dal software di mining di criptovalute. Questa attività suggerisce potenziali operazioni di mining non autorizzate all'interno dell'ambiente del container. Gli autori degli attacchi spesso distribuiscono miner di criptovalute per sfruttare le risorse di sistema a scopo di lucro, con conseguente peggioramento delle prestazioni, aumento dei costi operativi e potenziali rischi per la sicurezza. Il rilevamento di queste attività contribuisce a mitigare l'abuso delle risorse e l'accesso non autorizzato. |
| Script dannoso eseguito | CLOUD_RUN_MALICIOUS_SCRIPT_EXECUTED |
Un modello di machine learning ha identificato il codice Bash specificato come dannoso. Gli autori degli attacchi possono utilizzare Bash 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 Bash eseguito. Poiché questo approccio non si basa su firme, i rilevatori possono identificare codice Bash dannoso noto e nuovo. |
| Rilevato URL dannoso | 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 viene classificato erroneamente come sito di phishing o malware, segnalalo all'indirizzo Segnalazione di dati errati. |
| Escalation dei privilegi: abuso di sudo per l'escalation dei privilegi (CVE-2019-14287) | CLOUD_RUN_ABUSE_SUDO_FOR_PRIVILEGE_ESCALATION |
Questo rilevamento segnala un tentativo di sfruttamento della
CVE-2019-14287, che consente l'escalation dei privilegi tramite l'abuso del
comando |
| Escalation dei privilegi: esecuzione senza file in /dev/shm | CLOUD_RUN_FILELESS_EXECUTION_DETECTION_SHM |
È stato eseguito un processo da un percorso all'interno di
Se esegue un file da |
| Escalation dei privilegi: vulnerabilità di escalation dei privilegi locali di Polkit (CVE-2021-4034) | CLOUD_RUN_POLKIT_LOCAL_PRIVILEGE_ESCALATION_VULNERABILITY |
Un utente non root ha eseguito
Questa regola rileva un tentativo di sfruttare una vulnerabilità di escalation dei privilegi (CVE-2021-4034) in |
| Escalation dei privilegi: potenziale escalation dei privilegi sudo (CVE-2021-3156) | CLOUD_RUN_SUDO_POTENTIAL_PRIVILEGE_ESCALATION |
Un utente non root ha eseguito
Rileva un tentativo di sfruttare una vulnerabilità che interessa
|
| Shell inversa | CLOUD_RUN_REVERSE_SHELL |
Un processo avviato con il reindirizzamento del flusso a un socket connesso
remotamente. Il rilevatore cerca Con una shell inversa, un malintenzionato può comunicare da un carico di lavoro compromesso a una macchina controllata dall'attaccante. L'autore dell'attacco può quindi comandare e controllare il workload, ad esempio nell'ambito di una botnet. |
| Shell secondaria imprevista | 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 richiamato un comando shell, il rilevatore genera un risultato se è noto che il processo padre non richiama in genere le shell. |
Rilevatori del control plane
I seguenti rilevatori del control plane 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 Event Threat Detection. Per saperne di più, consulta la sezione Utilizzare Event Threat Detection.
| Nome visualizzato | Nome API | Tipi di origini log | Descrizione |
|---|---|---|---|
| Impatto: comandi di cryptomining | CLOUD_RUN_JOBS_CRYPTOMINING_COMMANDS |
Audit log di Cloud: Audit log degli eventi di sistema IAM |
Durante l'esecuzione, a un job Cloud Run sono stati allegati comandi di cryptomining specifici. Per impostazione predefinita, i risultati sono classificati come di gravità Alta. |
| Esecuzione: immagine Docker per il cryptomining | CLOUD_RUN_CRYPTOMINING_DOCKER_IMAGES |
Audit log di Cloud: Audit log degli eventi di sistema IAM |
Sono state allegate immagini Docker specifiche note come dannose a un servizio o un job Cloud Run nuovo o esistente. Per impostazione predefinita, i risultati sono classificati come di gravità Alta. |
| Escalation dei privilegi: Default Compute Engine Service Account SetIAMPolicy | CLOUD_RUN_SERVICES_SET_IAM_POLICY |
Audit log di Cloud: Log attività amministratore |
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 impostazione predefinita, i risultati vengono classificati come di gravità Bassa. |
Passaggi successivi
- Scopri come utilizzare Cloud Run Threat Detection.
- Scopri come utilizzare Event Threat Detection.
- Scopri come rispondere ai risultati delle minacce di Cloud Run.
- Consulta l'indice dei risultati delle minacce.