Questa pagina fornisce una panoramica generale dei concetti e delle funzionalità di Container Threat Detection.
Che cos'è Container Threat Detection?
Container Threat Detection è un servizio integrato di Security Command Center che monitora continuamente lo stato delle immagini dei nodi Container-Optimized OS. Il servizio valuta tutte le modifiche e i tentativi di accesso remoto per rilevare gli attacchi di runtime quasi in tempo reale.
Container Threat Detection rileva gli attacchi runtime ai container più comuni e ti invia avvisi in Security Command Center e, facoltativamente, in Cloud Logging. Container Threat Detection include diverse funzionalità di rilevamento, tra cui librerie e file binari sospetti, e utilizza l'elaborazione del linguaggio naturale (NLP) per rilevare codice Python e Bash dannoso.
Container Threat Detection è disponibile solo con il livello Premium o Enterprise di Security Command Center.
Come funziona Container Threat Detection
La strumentazione di rilevamento di Container Threat Detection raccoglie il comportamento a basso livello nel kernel guest e negli script eseguiti. Di seguito è riportato il percorso di esecuzione quando vengono rilevati gli eventi:
Container Threat Detection passa le informazioni sugli eventi e quelle che identificano il contenitore tramite un DaemonSet in modalità utente a un servizio di rilevamento per l'analisi. La raccolta degli eventi viene configurata automaticamente quando viene attivato Container Threat Detection.
Il DaemonSet del watcher trasmette le informazioni del contenitore secondo il criterio del massimo impegno. Le informazioni sul contenitore possono essere eliminate dal rilevamento segnalato se Kubernetes e il runtime del contenitore non riescono a fornire tempestivamente le informazioni corrispondenti sul contenitore.
Il servizio di rilevamento analizza gli eventi per determinare se un evento è indicativo di un incidente. Gli script Bash e Python vengono analizzati con l'NLP per determinare se il codice eseguito è dannoso.
Se il servizio di rilevamento identifica un incidente, questo viene registrato come risultato in Security Command Center e, facoltativamente, in Cloud Logging.
- Se il servizio di rilevamento non identifica un incidente, le informazioni sui risultati non vengono memorizzate.
- Tutti i dati nel servizio del kernel e del rilevatore sono effimeri e non vengono memorizzati in modo permanente.
Puoi visualizzare i dettagli dei risultati nella console di Security Command Center ed esaminare le informazioni sui risultati. La tua capacità di visualizzare e modificare i risultati dipende dai ruoli che ti sono stati assegnati. Per ulteriori informazioni sui ruoli di Security Command Center, consulta Controllo dell'accesso.
Considerazioni
Altri strumenti di rilevamento della sicurezza installati nel cluster possono influire sulle prestazioni di Container Threat Detection e causare il suo malfunzionamento. Ti consigliamo di non installare altri strumenti di rilevamento della sicurezza nel cluster se il cluster è già protetto da Rilevamento minacce dei contenitori.
Rilelevatori di Container Threat Detection
Container Threat Detection include i seguenti rilevatori:
Rilevatore | Descrizione | Input per il rilevamento |
---|---|---|
Programma binario aggiuntivo eseguito |
È stato eseguito un file binario che non faceva parte dell'immagine del contenitore originale. Se un file binario aggiunto viene eseguito da un malintenzionato, è possibile che quest'ultimo abbia il controllo del carico di lavoro ed esegua comandi arbitrari. Questo rilevatore è disattivato per impostazione predefinita. Per istruzioni su come attivarlo, consulta Testare Container Threat Detection. |
Il rilevatore cerca un file binario in esecuzione che non faceva parte dell'immagine del container originale o che è stato modificato rispetto all'immagine del container originale. |
Libreria aggiuntiva caricata |
È stata caricata una libreria che non faceva parte dell'immagine contenitore originale. Se viene caricata una libreria aggiunta, è possibile che un malintenzionato abbia il controllo del carico di lavoro ed stia eseguendo codice arbitrario. Questo rilevatore è disattivato per impostazione predefinita. Per istruzioni su come attivarlo, consulta Testare Container Threat Detection. |
Il rilevatore cerca una libreria in fase di caricamento che non faceva parte dell'immagine del contenitore originale o che è stata modificata rispetto all'immagine del contenitore originale. |
Esecuzione: programma binario dannoso aggiuntivo eseguito |
È stato eseguito un file binario che soddisfa le seguenti condizioni:
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. |
Il rilevatore cerca un file binario in esecuzione che non faceva parte dell'immagine del contenitore originale ed è stato identificato come dannoso in base alle informazioni sulle minacce. |
Esecuzione: caricamento di una libreria dannosa aggiuntiva |
È stata caricata una libreria che soddisfa le seguenti condizioni:
Se viene caricata una libreria dannosa aggiunta, è un chiaro segno che un malintenzionato ha il controllo del carico di lavoro ed esegue software dannoso. |
Il rilevatore cerca una libreria in fase di caricamento che non faceva parte dell'immagine del contenitore originale ed è stata identificata come dannosa in base alle informazioni sulle minacce. |
Esecuzione: programma binario dannoso integrato eseguito |
È stato eseguito un file binario che soddisfa le seguenti condizioni:
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 container. |
Il rilevatore cerca un file binario in esecuzione incluso nell'immagine del contenitore originale e identificato come dannoso in base all'intelligence sulle minacce. |
Esecuzione: evasione dal contenitore |
All'interno del contenitore è stato eseguito un processo che ha tentato di aggirare l'isolamento del contenitore, potenzialmente dando all'utente malintenzionato l'accesso al sistema host. Se viene rilevato un tentativo di container escape, 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. |
Il rilevatore controlla la presenza di processi che tentano di sfruttare i confini dei container che utilizzano tecniche o file binari di escape noti. Questi processi vengono segnalati dalle informazioni sulle minacce come potenziali attacchi che hanno come target il sistema host di base. |
Esecuzione: esecuzione dello strumento di attacco Kubernetes |
Nello spazio è stato eseguito uno strumento di attacco specifico per Kubernetes, il che potrebbe indicare che un malintenzionato ha come bersaglio i componenti del cluster Kubernetes. Se uno strumento di attacco viene eseguito nell'ambiente Kubernetes, potrebbe indicare che un malintenzionato ha ottenuto l'accesso al cluster e lo sta utilizzando per sfruttare configurazioni o vulnerabilità specifiche di Kubernetes. |
Il rilevatore cerca gli strumenti di attacco Kubernetes in esecuzione e identificati come potenziali minacce in base ai dati di intelligence. Il rilevatore attiva avvisi per mitigare potenziali compromissioni nel cluster. |
Esecuzione: esecuzione dello strumento di ricognizione locale |
È 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. 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. |
Il rilevatore controlla se all'interno dell'ambiente vengono eseguiti strumenti di ricognizione noti, identificati tramite la threat intelligence, che potrebbero indicare la preparazione di attività più dannose. |
Esecuzione: codice Python dannoso eseguito (anteprima) |
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 malware Python noti e nuovi. |
Esecuzione: programma binario dannoso modificato eseguito |
È stato eseguito un file binario che soddisfa le seguenti condizioni:
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. |
Il rilevatore cerca un file binario in esecuzione che inizialmente era incluso nell'immagine del contenitore, ma è stato modificato durante l'esecuzione ed è stato identificato come dannoso in base alle informazioni sulle minacce. |
Esecuzione: libreria dannosa modificata caricata |
È stata caricata una libreria che soddisfa le seguenti condizioni:
Se viene caricata una libreria dannosa modificata, è un chiaro segno che un malintenzionato ha il controllo del carico di lavoro ed esegue software dannoso. |
Il rilevatore cerca una libreria in fase di caricamento che era inizialmente inclusa nell'immagine del contenitore, ma modificata durante l'esecuzione ed è stata identificata come dannosa in base alle informazioni sulle minacce. |
Script dannoso eseguito |
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 bash dannosi noti e nuovi. |
URL dannoso rilevato | Container 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 phishing o malware, segnalalo alla pagina Segnalazione di dati errati. |
Shell inversa |
È stato avviato un processo di reindirizzamento dello stream a una socket collegata da remoto. Con una shell inversa, un malintenzionato può comunicare da un workload compromesso a una macchina controllata dall'utente malintenzionato. L'attaccante può quindi controllare il carico di lavoro, ad esempio nell'ambito di una botnet. |
Il rilevatore cerca stdin associato a una socket remota.
|
Shell secondario imprevisto | Un processo che normalmente non richiama shell ha generato un processo shell. | Il rilevatore monitora tutte le esecuzioni dei processi. Quando viene richiamata una shell, il rilevatore genera un rilevamento se è noto che il processo principale in genere non richiama le shell. |
Passaggi successivi
- Scopri di più su come utilizzare Container Threat Detection.
- Scopri di più sul test di Container Threat Detection.
- Scopri come indagare e sviluppare piani di risposta alle minacce.
- Scopri di più su Artifact Analysis e sull'analisi delle vulnerabilità.