Autorizzazione a livello di oggetto (BOLA)
Un utente può leggere o modificare risorse di un altro utente cambiando un ID in una richiesta? È il controllo più frequente e più grave, e lo verifichiamo su ogni endpoint che riceve un identificatore.
API security · OWASP API Security Top 10 · Da €490
Le API espongono dati e funzioni direttamente, spesso senza un'interfaccia che li filtri. I rischi più frequenti riguardano l'autorizzazione a livello di oggetto (BOLA), l'autenticazione e la gestione dei token, l'esposizione eccessiva di dati e la logica di business. Li verifichiamo uno per uno, con prove riproducibili.
Un'applicazione web ha un'interfaccia che guida l'utente. Un'API no: chiunque può inviare richieste, modificarne i parametri e leggere le risposte. Se il server non controlla bene chi può fare cosa, la falla è spesso invisibile da un browser e facile da sfruttare da uno script.
La lista OWASP API Security Top 10 è separata da quella delle applicazioni web, perché i rischi sono diversi. Al primo posto c'è l'autorizzazione a livello di oggetto: nella pratica, un utente legittimo che modifica un identificatore e legge dati di un altro utente.
Quattro famiglie di verifiche, con più ruoli di prova per misurare davvero il controllo tra utenti.
Un utente può leggere o modificare risorse di un altro utente cambiando un ID in una richiesta? È il controllo più frequente e più grave, e lo verifichiamo su ogni endpoint che riceve un identificatore.
Gestione di login, emissione e scadenza dei token, revoca alla disconnessione, protezione delle chiavi, possibilità di accesso con token scaduti o manomessi.
Le risposte restituiscono più campi del necessario? Esistono limiti alle richieste per endpoint sensibili, come login o recupero password, e paginazioni che consentono di estrarre grandi volumi di dati?
Flussi che si possono aggirare: prezzi o quantità modificabili dal client, stati di un ordine saltabili, operazioni eseguibili in ordine errato o più volte.
Quattro fasi, con il responsabile dell'API informato a ogni passaggio e nessuna azione fuori dal perimetro concordato.
Individuiamo endpoint, metodi, parametri, formati e schemi di autenticazione, partendo dalla documentazione quando è disponibile e dall'osservazione del traffico nell'ambiente di test.
Osserviamo come il sistema risponde a richieste senza credenziali, con credenziali scadute, con ruoli diversi, e a input non previsti. Sono le basi su cui costruire i test successivi.
Eseguiamo i test mirati su autorizzazione, token, esposizione dati e logica di business, con prove di impatto e senza azioni distruttive.
Il report arriva al responsabile dell'API con priorità, prove riproducibili e indicazioni di correzione. La riverifica gratuita entro 30 giorni chiude il ciclo.
Nessuno di questi elementi è obbligatorio, ma ciascuno riduce i tempi e migliora la copertura.
Una specifica OpenAPI o Swagger, anche parziale. Ci permette di coprire più endpoint in meno tempo e di non dimenticare quelli meno evidenti.
Almeno due utenti con privilegi differenti, e un profilo amministrativo se l'API ne ha uno. Senza di loro non si verifica il controllo tra utenti.
Preferiamo un ambiente di test equivalente alla produzione, con dati fittizi. Il test in produzione richiede finestre e autorizzazione scritta.
Chi conosce l'API e può rispondere a domande su comportamenti attesi, eccezioni e flussi di business.
Non è una lista di casi eccezionali. Sono i problemi che ricorrono più spesso nelle API di applicazioni reali.
Per essere chiari sui confini: il test verifica il comportamento dell'API nell'ambiente concordato. Non sostituisce la revisione del codice, né garantisce che un'API nuova sia sicura dopo una modifica. Per questo serve ripetere il test quando l'API cambia.
Il piano Perimetro singolo costa €490 una tantum, IVA esclusa, per un dominio o un'API esterna con i suoi sottodomini. API molto estese, più ambienti o test di logica di business particolarmente complessa sono su preventivo. Il listino completo è nella home.
Sì. Le API hanno meno interfaccia e più oggetti e ruoli. Spesso il rischio principale è la BOLA, che non richiede di aggirare l'autenticazione: basta un utente legittimo che cambia un identificatore.
Non è obbligatoria. Con OpenAPI o Swagger copriamo più endpoint in meno tempo e con minor rischio di lasciarne fuori qualcuno.
Solo con autorizzazione scritta e finestre concordate. Di norma preferiamo un ambiente di test equivalente alla produzione.
Nell'ambiente di test sì, per dimostrare l'impatto, e sempre su dati fittizi. Non eseguiamo azioni distruttive né cancelliamo risorse, e ogni modifica di prova viene documentata nel report.
Il perimetro singolo costa €490 una tantum, IVA esclusa. API estese o più ambienti sono su preventivo.
Mandaci la documentazione o l'elenco degli endpoint: ti rispondiamo per iscritto con il perimetro proposto.
Richiedi il test API