Controllo dell'accesso a livello di funzione mancante
La maggior parte delle applicazioni Web verifica i diritti di accesso a livello di funzione prima di rendere tale funzionalità accessibile all'utente. Tuttavia, se gli stessi controlli di controllo degli accessi non vengono eseguiti sul server, gli hacker sono in grado di penetrare nell'applicazione senza un'adeguata autorizzazione.
Cerchiamo di comprendere gli agenti di minaccia, i vettori di attacco, la debolezza della sicurezza, l'impatto tecnico e gli impatti sul business di questo difetto con l'aiuto di un semplice diagramma.
Esempio
Ecco un classico esempio di controllo dell'accesso a livello di funzione mancante:
L'hacker forza semplicemente gli URL di destinazione. Di solito l'accesso amministratore richiede l'autenticazione, tuttavia, se l'accesso all'applicazione non è verificato, un utente non autenticato può accedere alla pagina di amministrazione.
' Below URL might be accessible to an authenticated user
http://website.com/app/standarduserpage
' A NON Admin user is able to access admin page without authorization.
http://website.com/app/admin_page
Mani su
Step 1 - Effettuiamo il login come account manager esaminando prima l'elenco degli utenti e i loro privilegi di accesso.
Step 2 - Dopo aver provato varie combinazioni, possiamo scoprire che Larry ha accesso al gestore dell'account delle risorse.
Meccanismi preventivi
Il meccanismo di autenticazione dovrebbe negare tutti gli accessi per impostazione predefinita e fornire l'accesso a ruoli specifici per ogni funzione.
In un'applicazione basata sul flusso di lavoro, verificare lo stato degli utenti prima di consentire loro di accedere a qualsiasi risorsa.