Una debolezza di autorizzazione è un difetto nel modo in cui il software decide se un utente o un processo è autorizzato a eseguire un'azione. L'autenticazione risponde alla domanda “chi sei?”; l'autorizzazione risponde alla domanda “che cosa puoi fare?” Se quel secondo controllo è compromesso, un account con privilegi inferiori, un componente dell'app o il contesto di un dispositivo può accedere a funzioni destinate a un ruolo più affidabile.
Questo è importante perché i fallimenti del controllo degli accessi possono esporre dati, modificare impostazioni o attivare operazioni privilegiate senza che venga rubata alcuna password. Negli attacchi reali, i bug di autorizzazione spesso favoriscono l'escalation dei privilegi, il movimento laterale o modifiche di configurazione non autorizzate. Gli analisti difensivi cercano controlli di ruolo mancanti, riferimenti diretti non sicuri agli oggetti e endpoint API che si fidano troppo dei parametri forniti dal client. Buone correzioni includono controlli delle autorizzazioni lato server, principio del privilegio minimo e test di ogni azione sensibile da più ruoli utente, non solo dal normale percorso amministrativo.


