Navigazione forzata

Navigazione forzata

Un URL scollegato non è un controllo di autorizzazione.

Cos’è Navigazione forzata?

Esiste un percorso, nulla nell'interfaccia si collega ad esso e risponde a chiunque indovini il percorso. La segretezza dei nomi delle cartelle non è un controllo di accesso. Senza account, eseguirai un elenco di parole per il rilevamento dei contenuti su una piattaforma di persone e troverai un percorso di esportazione interno che risponde a 200 OK con la directory completa dei dipendenti, senza bisogno di cookie o chiave API. Quindi aggiungi il gate che non ha mai avuto, un controllo della sessione e del ruolo prima che venga letta una singola riga e riproduci la richiesta a un 403.

Cosa imparerai in Navigazione forzata

Navigazione forzata — Fasi della formazione

  1. Dimensionare il bersaglio

    Bob è un aggressore motivato finanziariamente. Trova aziende che hanno lasciato qualcosa esposto sull'Internet pubblica, poi vende ciò che tira fuori o lo usa per ottenere i loro soldi. Oggi si rivolge a Kelvara, una piattaforma personale su cui le aziende gestiscono le buste paga e le risorse umane. Inizia da dove chiunque farebbe, sul sito pubblico, valutando l'azienda prima di cercare un modo per entrarvi.

  2. Mappa l'albero API

    Niente sul sito pubblico è insolito: un accesso, un tour del prodotto, una pagina di supporto. Ma un'app risponde a molti più percorsi di quelli a cui si collega. Tutto ciò che uno sviluppatore ha lasciato raggiungibile rimane raggiungibile da chiunque vada a cercarlo, quindi Bob mappa ogni percorso a cui risponde effettivamente l'API del portale.

  3. Apri il percorso di esportazione

    L'unico percorso che ha risposto senza problemi è un URL come qualsiasi altro. Bob non ha bisogno di nessuno strumento per questo: digita il percorso scoperto direttamente nel browser e preme invio, come se aprisse qualsiasi pagina.

  4. L'intera directory, nessun login

    La risposta non è una pagina di errore. Il browser lo visualizza in linea: l'intera directory dei dipendenti di Kelvara, migliaia di record, consegnati a una richiesta che non prevedeva alcun accesso.

  5. Verifica della conoscenza

    Hai osservato che un URL indovinato restituisce dati sensibili a una richiesta senza credenziali. Blocca il motivo per cui l'endpoint era raggiungibile.

  6. Viene visualizzato l'avviso DLP

    Possiedi il portale personale di Kelvara. Durante la notte, il monitoraggio della perdita di dati in uscita ha attivato una risposta che ha portato fuori dalla rete l'elenco completo dei dipendenti, SSN e stipendi inclusi. Le operazioni di sicurezza ti hanno inviato via email i dettagli.

  7. Apri il gestore dell'esportazione

    Il gestore che crea l'esportazione dei dipendenti è ciò che devi modificare. Aprilo e guarda cosa fa tra l'arrivo della richiesta e l'uscita dei dati.

  8. Individua il cancello mancante

    Il gestore legge il record di ogni dipendente e lo restituisce. Leggilo da cima a fondo e cerca il controllo di accesso. Non c'è niente tra la richiesta e la query.

  9. Verifica della conoscenza

    Hai visto il gestore passare dalla richiesta ai dati senza nulla in mezzo. Blocca ciò che effettivamente mantiene privato un percorso come questo.

  10. Aggiungi il controllo di accesso

    Metti un vero cancello nella parte superiore del gestore. Risolve la sessione del chiamante, conferma che detiene il ruolo hr_admin e rifiuta tutto il resto prima che venga eseguita la query sul database. Il percorso rimane lo stesso; ora è il segno di spunta, non il nome della cartella, a proteggere i dati.

Copertura dei framework di sicurezza

OWASP Top 10

  • A01:2025 Broken Access Control
  • A01:2021 Broken Access Control

CWE

  • CWE-425 Direct Request ('Forced Browsing')
  • CWE-862 Missing Authorization

CIS Controls

  • CIS 16 Application Software Security

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.PS Platform Security