Un pentest web e API deve verificare identità, autorizzazioni e logica applicativa. Ecco cosa preparare e quali risultati chiedere oltre alla scansione. Il sito visibile è soltanto una parte del servizio. Applicazioni mobili, integrazioni e interfacce web possono usare le stesse API con percorsi diversi. La guida al penetration testing spiega il metodo generale; qui affrontiamo le domande più utili per un'applicazione con utenti e documenti. Autenticazione e autorizzazione rispondono a domande diverse L'autenticazione verifica l'identità. L'autorizzazione stabilisce cosa quell'identità può fare. Un login robusto, anche con passkey, non garantisce che un utente veda soltanto i documenti assegnati. La WSTG OWASP dedicata alle autorizzazioni individua quest'area come una parte specifica delle verifiche. Per preparare il test, crea una matrice semplice: ruoli sulle righe, operazioni sulle colonne. Un cliente può consultare il proprio fascicolo; un operatore può gestire quelli assegnati; un amministratore può configurare utenti. Le eccezioni devono essere conosciute prima di interpretare un comportamento come difetto. Il controllo sull'oggetto richiesto OWASP descrive la Broken Object Level Authorization, o BOLA, come un problema nel controllo degli accessi agli oggetti gestiti da un'API. Non basta essere autenticati: il servizio deve verificare che l'utente possa compiere l'operazione proprio su quell'oggetto. Il riferimento è API1:2023 di OWASP. Esempio di preparazione: in un ambiente dedicato, due clienti fittizi hanno ciascuno documenti riconoscibili. Il tester può verificare che le operazioni consentite a uno non riguardino i dati dell'altro. La relazione deve specificare se la prova ha mostrato una lettura, una modifica o un'altra azione, senza confondere effetti differenti. Sessioni, flussi e canali alternativi Definisci anche cosa verificare quando un utente esce, cambia ruolo o reimposta una credenziale. La stessa funzione può essere disponibile nel sito, nell'app e nelle API: la copertura deve dire quali canali sono stati esaminati. Prepara casi realistici ma sintetici. Se il processo prevede richiesta, approvazione e pubblicazione di un documento, documenta le transizioni ammesse. Un tester che conosce le regole può verificare una deviazione; senza quelle informazioni rischia di osservare un comportamento senza comprenderne il significato. Le passkey proteggono una parte del percorso La guida alle passkey aiuta a comprendere un accesso resistente al phishing. Il pentest applicativo amplia la domanda: dopo il login, i dati e le operazioni restano separati correttamente? È un collegamento utile fra sicurezza dell'identità e sicurezza del servizio. Checklist prima del test • Ruoli e operazioni attese descritti. • Account distinti e dati fittizi per verificare la separazione. • API e versioni comprese nel perimetro. • Integrazioni di terze parti riconosciute e gestite separatamente. • Referente che conosce le regole del processo. • Evidenze richieste e limiti sulle operazioni che modificano dati. Scegli il modello di accesso del tester in funzione di queste domande e registra i confini nelle regole d'ingaggio. Dopo le prove, usa il report del pentest per assegnare le correzioni al componente giusto.
Interazioni
Nessun commento ancora. Il primo commento diretto sotto la notizia aprira il primo thread.
@TheFounder