Esposizione della rete dei container

Esposizione della rete dei container

Un porto pubblicato e il database è su Internet.

Cos’è Esposizione della rete dei container?

La pubblicazione di una porta del contenitore la collega a ogni interfaccia sull'host per impostazione predefinita, quindi una mappatura aggiunta per comodità locale può mettere un database su Internet pubblico senza alcuna modifica al firewall del cloud. Per prima cosa ti schiererai dalla parte dell'aggressore: esegui la scansione dell'host, ti connetti direttamente al database con una vecchia password rubata e leggi i record dei clienti senza alcuna applicazione nel percorso. Quindi collegherai la mappatura a 127.0.0.1, verificherai dall'esterno e ruoterai la credenziale esposta.

Cosa imparerai in Esposizione della rete dei container

Esposizione della rete dei container — Fasi della formazione

  1. Un database su internet aperto

    Bob non è dentro a nulla. Settimane fa ha acquistato un dump che includeva una credenziale di sola lettura per un database di Halvexis, ma una credenziale è inutile se non si può raggiungere il database. Quindi scansiona gli host dei data store dell'azienda per vedere se qualcuno risponde dall'esterno.

  2. Dritto dentro, nessuna applicazione

    Non c'è nessuna pagina di login, nessuna API, nessun rate limit. Una porta di database pubblicata parla il protocollo Postgres grezzo a chiunque riesca a raggiungerla. Bob punta un client per database direttamente su di essa e si autentica con la credenziale che aveva già.

  3. Leggi la tabella residents

    La credenziale è di sola lettura, ed è tutto ciò di cui Bob ha bisogno. Interroga la tabella che contiene gli inquilini della piattaforma e i loro dettagli, direttamente dalla produzione.

  4. Cosa è cambiato

    Bob ha questa esatta credenziale da mesi e non l'ha mai usata.

  5. Il monitoraggio segnala il traffico

    Halvexis esegue il monitoraggio cloud sui suoi host di produzione. Non sa a cosa serva il database; riporta ciò che ha visto.

  6. Trova la porta aperta

    Se i security group non sono cambiati, l'esposizione è stata creata sull'host stesso, dal modo in cui un container ha pubblicato la sua porta. Alice elenca il container del database e legge la colonna che indica a quali interfacce è associata la porta.

  7. Dove viene pubblicata la porta

    Il mapping della porta proviene dal file Compose che definisce lo stack. Alice lo apre per vedere la riga che ha pubblicato la 5432.

  8. La riga responsabile

    Un unico mapping, scritto nel modo in cui uno sviluppatore lo scrive sul proprio laptop, è ciò che ha messo il database su internet quando questo stack è stato distribuito in produzione.

  9. Associalo a localhost

    L'API raggiunge il database attraverso la rete Compose tramite il suo nome di servizio, non attraverso una porta host pubblicata. Quindi il mapping dell'host non ha alcun bisogno di essere pubblico. Alice lo fissa all'interfaccia di loopback, così solo l'host stesso, e i container sulla sua rete, possono raggiungerlo.

  10. Leggi il binding corretto

    La modifica è un solo prefisso di interfaccia, ma è l'intera correzione. Alice esamina il mapping associato prima di ridistribuire, per vedere esattamente cosa è ora raggiungibile e da dove.

Copertura dei framework di sicurezza

CWE

  • CWE-668 Exposure of Resource to Wrong Sphere
  • CWE-306 Missing Authentication for Critical Function

MITRE ATT&CK

  • T1046 Network Service Discovery
  • T1210 Exploitation of Remote Services

CIS Controls

  • CIS 12 Network Infrastructure Management

NIST CSF

  • PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
  • PR.IR Technology Infrastructure Resilience