Diventa Autore per CoreTech | Scopri di più





Cos'è la navigazione forzata

04/03/21 CoreTech Blog

navigazione forzata sicurezza

La navigazione forzata, è una tecnica di attacco contro siti Web e applicazioni Web mal protetti, che consente all'autore dell'attacco di accedere a risorse a cui non dovrebbe essere in grado di accedere. Tali risorse possono contenere informazioni sensibili. La navigazione forzata è un problema comune di sicurezza delle applicazioni web causato da una codifica imprudente.

La navigazione forzata è formalmente definita da Mitre in CWE-425 . Nell'ultima OWASP Top-10 2017 del progetto Open Web Application Security, la navigazione forzata non è considerata una categoria separata ma inclusa nella categoria A5: 2017-Broken Access Control .

Di seguito sono riportati alcuni esempi di attacchi di navigazione forzata.

Utilizzo di URL difficili da indovinare

Lo sviluppatore del sito Web o dell'applicazione Web crea un URL difficile da indovinare per una risorsa preziosa utilizzando nomi di file e nomi di directory non convenzionali. Questo URL consente l'accesso a funzioni privilegiate senza autenticazione. Per esempio:

https://www.example.com/administration/administersite.php

Lo sviluppatore presume che l'URL sia troppo complesso da indovinare, non sia collegato, non sia indicizzato o inviato a Google, e quindi nessuno lo troverà sicuramente. Tuttavia, l'attaccante scopre questo URL (ad esempio, utilizzando l'ingegneria sociale o altre tecniche e strumenti di scansione come l'enumerazione di directory brute-force, l'enumerazione dei file, l'enumerazione delle risorse, ecc.), Vi accede e ottiene l'accesso come amministratore. Nonostante ciò che pensano molti sviluppatori, identificare le risorse non è affatto difficile per un utente malintenzionato esperto.

Posizione prevedibile delle risorse

Lo sviluppatore di un sito Web o di un'applicazione Web utilizza l'autenticazione semplice. Una volta che un utente è stato autenticato, può accedere a qualsiasi URL del sito.

L'aggressore è un utente del sito. Prima accedono alla seguente pagina web:

https://www.example.com/userdata.php?id=2258

Quindi, inseriscono il seguente URL nella barra degli indirizzi del browser, tentando di utilizzare un parametro URL che rappresenta un altro utente:

https://www.example.com/userdata.php?id=2262

Se l'autenticazione è troppo semplice, sono in grado di ottenere l'accesso a dati sensibili appartenenti a qualsiasi altro utente. Possono anche provare il seguente ID:

https://www.example.com/userdata.php?id=1

In molti casi, ID = 1 può appartenere a un utente amministratore e la pagina può contenere informazioni preziose che consentiranno all'aggressore di intensificare il proprio attacco.

Accesso a file e directory comuni

La navigazione forzata è strettamente correlata ad altri problemi di sicurezza delle applicazioni web simili, come riferimenti a oggetti diretti non sicuri e elenchi di directory . Ad esempio, se un server Web ha l'elenco delle directory attivato, la navigazione forzata potrebbe consentire all'autore dell'attacco di accedere a informazioni cruciali. Ecco alcuni esempi:

  • https://www.example.com/source-code/
     
    In questo esempio, il server Web ha l'elenco delle directory attivato e l'autore dell'attacco indovina un nome di directory comune codice sorgente, ottenendo così l'accesso all'intera struttura del codice sorgente dell'applicazione Web.
     
  • https://www.example.com/configuration/
     
    In questo caso, l'aggressore ottiene l'accesso a tutti i file di configurazione dell'applicazione web. Alcuni di questi file possono contenere informazioni riservate come le password di accesso per i database.
     
  • https://www.example.com/backup/
     
    Questa volta, l'aggressore ottiene l'accesso a tutti i file di backup dell'applicazione web, che possono, ad esempio, includere un dump del database.
     

Come evitare la navigazione forzata

Per evitare attacchi di navigazione forzata, lo sviluppatore non deve mai presumere che soluzioni semplici siano sufficienti per la sicurezza dei dati dell'applicazione:

  • Lo sviluppatore non deve mai presumere che un URL accessibile pubblicamente sia impossibile da trovare. Se esiste, può essere trovato. L'autenticazione è un must.
  • Lo sviluppatore non deve mai presumere che una volta che l'utente è stato autenticato, non necessita di alcun altro controllo di accesso. Per ogni pagina web a cui si accede, lo sviluppatore deve assicurarsi che l'utente autenticato sia autorizzato ad accedere al contenuto.

Per scoprire potenziali vulnerabilità, è necessario utilizzare una scansione delle vulnerabilità delle applicazioni Web efficiente e automatizzata utilizzando uno strumento come Acunetix. Questo ti aiuterà a trovare la maggior parte dei problemi molto rapidamente ed eliminarli prima che un utente malintenzionato possa sfruttarli. Dovresti anche eseguire un test di penetrazione manuale per trovare problemi difficili da scoprire automaticamente, come la navigazione forzata.

Banner


Articoli su Sicurezza

Sicurezza aziendale: da cosa è minacciata e come proteggerla?Il threat modeling per la sicurezza delle applicazioniScanner di vulnerabilità: ecco come funzionanoWeb security: 5 motivi per cui è essenziale contro i ransomwareChe cos'è DevSecOps e come dovrebbe funzionare?Test di penetrazione vs scansione delle vulnerabilitàConsiderazioni sui test di correzione delle applicazioni WebQuattro modi in cui l'analisi AppSec aiuta i tuoi professionisti DevSecOpsQuattro modi per combattere il divario di competenze di sicurezza informaticaDove i framework di cybersecurity incontrano la sicurezza webCome costruire un piano di risposta agli incidenti informaticiRendi i tuoi utenti parte della soluzione di sicurezza webSei l'unico che può proteggere le tue applicazioni webNuovo studio di settore: il 70% dei team salta i passaggi di sicurezzaConvergenza Dev-Sec: i progressi e le sfide sulla strada per garantire l'innovazioneAggiornamento FISMA: cosa sta cambiando e perché è importanteChe cos'è la sicurezza continua delle applicazioni Web?Sei l'unico che può proteggere le tue applicazioni webCos'è la sicurezza del sito Web: come proteggere il tuo sito Web dall'hackingRendi i tuoi utenti parte della soluzione di sicurezza webConvergenza Dev-Sec: la ricerca illustra i progressi per garantire l'innovazioneAggiornamento FISMA: cosa sta cambiando e perché è importanteChe cos'è la sicurezza continua delle applicazioni Web?La differenza tra XSS e CSRFNuovo studio di settore: il 70% dei team salta i passaggi di sicurezzaPrevenzione e mitigazione XSSStop ai compromessi sulla sicurezza delle applicazioni webSfatare 5 miti sulla sicurezza informaticaBasta compromessi sulla sicurezza delle applicazioni webNozioni di base sulla sicurezza web: la tua applicazione web è sicura?Che cos'è l'iniezione dell’header HTTP?Fare shift left o no?Individuazione e correzione di falle di sicurezza in software di terze partiClassi di vulnerabilità Web nel contesto delle certificazioniScripting tra siti (XSS)Che cos'è un attacco CSRFChe cos'è una SQL Injection (SQLi) e come prevenirlaAttacchi di attraversamento di directoryChe cos'è la falsificazione delle richieste lato server (SSRF)?7 migliori pratiche per la sicurezza delle applicazioni WebBlack Hat 2021: la più grande minaccia alla sicurezza informaticaÈ ben fatto? Chiedi allo sviluppatore!Scegli la soluzione di sicurezza delle applicazioni web che fa per teSicurezza fai-da-te: lo stai facendo bene?Sulla sicurezza delle applicazioni web professionali per MSSPLa cattiva comunicazione è al centro delle sfide di AppSecImpostazione e raggiungimento degli obiettivi di sicurezza delle applicazioniMetriche di sicurezza informatica per le applicazioni WebCome evitare attacchi alla supply chainPerché la maggior parte delle misure di sicurezza delle applicazioni fallisceVuoi che la tua sicurezza sia costruita su scuse?Cos'è SCA e perché ne hai bisognoLa scansione ad hoc non è sufficienteEsposizione dei dati sensibili: come si verificano le violazioniHai paura dei test di sicurezza nell'SDLC?Vantaggi di Web Asset DiscoveryStrumenti di scansione delle vulnerabilità: perché non open source?Protezione WAF - Ottieni il massimo dal tuo firewall per applicazioni webL'errore di comunicazione è al centro delle sfide di AppSecDebugger remoti come vettore di attaccoDAST è una parte essenziale di un programma completo per la sicurezza delle applicazioniCome difendersi dagli attacchi recenti su Microsoft Exchange5 principali vantaggi dei primi test di sicurezzaTecniche di attacco Denial-of-Service con avvelenamento della cacheQuali principali attacchi web possiamo aspettarci nella nuova top 10 di OWASP?Hack di SolarWindsPillole di Sicurezza | Episodio 38Pillole di Sicurezza | Episodio 37Perché gli sviluppatori evitano la sicurezza e cosa puoi fare al riguardoPillole di Sicurezza | Episodio 36Cos'è l'attacco RUDYCos'è la navigazione forzataCome gli scanner trovano le vulnerabilitàPillole di Sicurezza | Episodio 34Pillole di Sicurezza | Episodio 35Come eseguire il benchmark di uno scanner di vulnerabilità Web?Pillole di Sicurezza | Episodio 33Pillole di Sicurezza | Episodio 325 proposte di vendita comuni sulla sicurezza delle applicazioni web5 motivi per non fare affidamento sui programmi BountyPillole di Sicurezza | Episodio 315 motivi per cui la sicurezza web è importante quanto la sicurezza degli endpointPillole di Sicurezza | Episodio 305 motivi per cui la sicurezza web è importante per evitare il ransomwarePillole di Sicurezza | Episodio 293 motivi per cui DAST è il migliore per la sicurezza delle applicazioni WebPillole di Sicurezza | Episodio 28Pillole di Sicurezza | Episodio 27Pillole di Sicurezza | Episodio 24Pillole di Sicurezza | Episodio 25Pillole di Sicurezza | Episodio 21Pillole di Sicurezza | Episodio 22Pillole di Sicurezza | Episodio 20Pillole di Sicurezza | Episodio 17Il flag HttpOnly: protezione dei cookie da XSSPillole di Sicurezza | Episodio 16Il Bug Heartbleed – I vecchi Bug sono duri a morirePillole di Sicurezza | Episodio 15Pillole di Sicurezza | Episodio 14Pillole di Sicurezza | Episodio 13Pillole di Sicurezza | Episodio 12Pillole di Sicurezza | Episodio 11Pillole di Sicurezza | Episodio 10Sicurezza delle reti: gli hacker puntano CitrixCyber hacking: la Germania chiede l’intervento dell’UESicurezza informatica: Cisco rilascia aggiornamentiOcchio al cryptojacking: malware infiltrato in Docker HubSIGRed: bug di sistema in Windows Server scovato dopo 17 anniPillole di Sicurezza | Episodio 9Summit Live - Disponibili le registrazioni delle live di MonteleoneCriminalità informatica: Schmersal sventa un cyber-attaccoPillole di Sicurezza | Episodio 8Pillole di Sicurezza | Episodio 7Analisi pratica dei rischi per il SysAdmin, DevOps e Dev | Summit LivePillole di Sicurezza | Episodio 6Pillole di Sicurezza | Episodio 5Pillole di Sicurezza | Episodio 4Pillole di Sicurezza | Episodio 3Pillole di Sicurezza | Episodio 2Pillole di Sicurezza | Episodio 1Pillole di Sicurezza | Episodio 23