Attacca i vettori durante l'esecuzione di immagini di finestra mobile non attendibili

4

Quali sono i possibili vettori di attacco se eseguo l'immagine della finestra mobile inviata dall'utente, ad es. pull through docker pull FOO; ... docker run FOO dove FOO è una stringa inviata dall'utente contenente il nome di un repository Docker Hub?

Questa è non una domanda su come eseguire semplicemente contenitori di finestra mobile all'interno non attendibili. In realtà ho già capito le implicazioni per la sicurezza di questo abbastanza bene per ora. Quali sono i vettori di attacco aggiuntivi rilevanti per l'esecuzione di immagini non fidate?

    
posta Alex Flint 22.12.2016 - 01:42
fonte

2 risposte

4

Esistono vari modi in cui un contenitore non autorizzato potrebbe danneggiare l'host o altri contenitori sulla rete, a seconda della configurazione del daemon docker.

  • Per impostazione predefinita tutti i contenitori condividono la stessa rete. Come tale un contenitore canaglia può tentare di attaccare altri contenitori. Ciò potrebbe includere attacchi come l'avvelenamento ARP in base ai diritti forniti al contenitore.
  • Sul fronte della rete, un container non autorizzato ha una posizione potenzialmente privilegiata nel proprio ambiente e potrebbe tentare di attaccare altri sistemi su reti connesse.
  • Un contenitore non autorizzato può tentare di scalare i privilegi per compromettere il sistema operativo host. Ciò è generalmente ottenuto tentando di sfruttare le vulnerabilità del kernel nel kernel dell'host. Un punto importante sull'isolamento del contenitore è che tutti i contenitori in esecuzione condividono lo stesso kernel.
  • In questa nota, se il kernel espone informazioni sensibili ai contenitori (ad esempio informazioni dal filesystem / proc) potrebbe essere possibile per il contenitore rogue ottenere l'accesso a tale.
  • Se il contenitore viene eseguito con determinate configurazioni, ad es. --privileged o mappando il socket docker nel contenitore, diventa banale che il contenitore rogue acquisisca l'host.

Consiglierei di leggere il benchmark CIS Security per la finestra mobile per ottenere ulteriori informazioni e suggerimenti per rafforzare l'installazione, se sei interessato.

    
risposta data 08.01.2017 - 17:22
fonte
3

Dipende dalla versione specifica della finestra mobile e dai contenitori in esecuzione. E come stai usando i tuoi contenitori.

Mentre il sogno è che un container è isolato dall'host, ci sono stati momenti in cui è stato scoperto un bug o una vulnerabilità che ha permesso a un container di ottenere l'accesso root al sistema host o, più comunemente, di essere in grado di danneggiare il padrone di casa. Semplici modi per danneggiare l'host:

  • Ottenere un contenitore per causare un panico del kernel sull'host.
  • Negazione del servizio (ci sono varie risorse che un contenitore può utilizzare per affamare gli altri sistemi dell'host).
  • Uno sviluppatore, forse stupidamente, che monta un volume in lettura / scrittura e il contenitore pericoloso che danneggia o oscura qualcosa.

I ruoli dei tuoi contenitori aggiungono anche ulteriori vulnerabilità di sicurezza:

  • Supponiamo che un container mobile con un minuscolo proxy sia un'immagine avvelenata. All'improvviso potresti avere un intruso che tiene traccia di tutte le richieste nella rete e determina la tua topologia.
  • O forse i tuoi contenitori parlano tra loro su una rete privata criptata e senza autenticazione. Un'immagine avvelenata come livello di uno dei tuoi contenitori personalizzati è la chiave per compromettere l'intero sistema.
  • O forse il tuo contenitore docker vault è l'immagine rouge. Ora hai appena inviato le tue chiavi a un contenitore fasullo.
risposta data 22.12.2016 - 02:05
fonte

Leggi altre domande sui tag