Web Vulnerabilities Methodology
In ogni Pentest Web, ci sono diversi luoghi nascosti e ovvi che potrebbero essere vulnerabili. Questo post è pensato come una checklist per confermare che hai cercato vulnerabilità in tutti i possibili luoghi.
Proxies
Oggigiorno le applicazioni web di solito utilizzano qualche tipo di proxy intermediario, che possono essere (ab)usati per sfruttare vulnerabilità. Queste vulnerabilità necessitano di un proxy vulnerabile per essere presenti, ma di solito richiedono anche qualche vulnerabilità extra nel backend.
Input dell'utente
La maggior parte delle applicazioni web consentirà agli utenti di inserire alcuni dati che verranno elaborati successivamente. A seconda della struttura dei dati che il server si aspetta, alcune vulnerabilità potrebbero o meno applicarsi.
Valori Riflessi
Se i dati introdotti possono in qualche modo essere riflessi nella risposta, la pagina potrebbe essere vulnerabile a diversi problemi.
Alcune delle vulnerabilità menzionate richiedono condizioni speciali, altre richiedono solo che il contenuto venga riflesso. Puoi trovare alcuni interessanti polygloths per testare rapidamente le vulnerabilità in:
Reflecting Techniques - PoCs and Polygloths CheatSheetFunzionalità di ricerca
Se la funzionalità può essere utilizzata per cercare qualche tipo di dati all'interno del backend, forse puoi (ab)usarla per cercare dati arbitrari.
Form, WebSockets e PostMsgs
Quando un websocket invia un messaggio o un modulo che consente agli utenti di eseguire azioni, possono sorgere vulnerabilità.
Intestazioni HTTP
A seconda delle intestazioni HTTP fornite dal server web, alcune vulnerabilità potrebbero essere presenti.
Bypass
Ci sono diverse funzionalità specifiche dove alcune soluzioni alternative potrebbero essere utili per bypassarle.
Oggetti strutturati / Funzionalità specifiche
Alcune funzionalità richiederanno che i dati siano strutturati in un formato molto specifico (come un oggetto serializzato in linguaggio o XML). Pertanto, è più facile identificare se l'applicazione potrebbe essere vulnerabile poiché deve elaborare quel tipo di dati. Alcune funzionalità specifiche potrebbero essere vulnerabili se viene utilizzato un formato specifico dell'input (come le Iniezioni di Header Email).
File
Le funzionalità che consentono il caricamento di file potrebbero essere vulnerabili a diversi problemi. Le funzionalità che generano file includendo input dell'utente potrebbero eseguire codice imprevisto. Gli utenti che aprono file caricati da altri utenti o generati automaticamente includendo input dell'utente potrebbero essere compromessi.
Gestione dell'identità esterna
Altre vulnerabilità utili
Queste vulnerabilità potrebbero aiutare a sfruttare altre vulnerabilità.
Last updated