9.2 KiB
Metodologia delle vulnerabilità web
Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!
Altri modi per supportare HackTricks:
- Se vuoi vedere la tua azienda pubblicizzata in HackTricks o scaricare HackTricks in PDF Controlla i PACCHETTI DI ABBONAMENTO!
- Ottieni il merchandising ufficiale di PEASS & HackTricks
- Scopri The PEASS Family, la nostra collezione di esclusive NFT
- Unisciti al 💬 gruppo Discord o al gruppo Telegram o seguici su Twitter 🐦 @carlospolopm.
- Condividi i tuoi trucchi di hacking inviando PR a HackTricks e HackTricks Cloud github repos.
In ogni Web Pentest, ci sono diversi luoghi nascosti e ovvi che potrebbero essere vulnerabili. Questo post è pensato per essere una checklist per confermare di aver cercato vulnerabilità in tutti i possibili luoghi.
Proxy
{% hint style="info" %} Oggi le applicazioni web di solito utilizzano qualche tipo di proxy intermedio, che possono essere (ab)usati per sfruttare vulnerabilità. Queste vulnerabilità richiedono un proxy vulnerabile per essere in atto, ma di solito richiedono anche una vulnerabilità aggiuntiva nel backend. {% endhint %}
- Abuso degli header hop-by-hop
- Avvelenamento della cache/Inganno della cache
- HTTP Request Smuggling
- H2C Smuggling
- Inclusione lato server/Inclusione lato edge
- Scoprire Cloudflare
- Iniezione lato server XSLT
- Bypass delle protezioni Proxy / WAF
Input dell'utente
{% hint style="info" %}
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à possono essere applicabili o meno.
{% endhint %}
Valori riflessi
Se i dati introdotti possono in qualche modo essere riflessi nella risposta, la pagina potrebbe essere vulnerabile a diversi problemi.
- Iniezione di template lato client
- Iniezione di comandi
- CRLF
- Markup sospeso
- Inclusione di file/Traversal del percorso
- Reindirizzamento aperto
- Pollution del prototipo per XSS
- Inclusione lato server/Inclusione lato edge
- Forgiatura di richieste lato server
- Iniezione di template lato server
- Reverse Tab Nabbing
- Iniezione lato server XSLT
- XSS
- XSSI
- XS-Search
Alcune delle vulnerabilità menzionate richiedono condizioni speciali, altre richiedono solo che il contenuto venga riflessi. Puoi trovare alcuni poliglotti interessanti per testare rapidamente le vulnerabilità in:
{% content-ref url="../pocs-and-polygloths-cheatsheet/" %} pocs-and-polygloths-cheatsheet {% endcontent-ref %}
Funzionalità 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.
- Inclusione di file/Traversal del percorso
- NoSQL Injection
- LDAP Injection
- ReDoS
- SQL Injection
- XPATH Injection
Moduli, 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, potrebbero essere presenti alcune vulnerabilità.
- Clickjacking
- Bypass della Content Security Policy
- Hacking dei cookie
- CORS - Misconfigurations & Bypass
Bypass
Ci sono diverse funzionalità specifiche in cui alcuni workaround potrebbero essere utili per aggirarle.
- Bypass 2FA/OTP
- Bypass del processo di pagamento
- Bypass del Captcha
- Bypass del login
- Race Condition
- Bypass del limite di velocità
- Bypass del ripristino della password dimenticata
- Vulnerabilità di registrazione
Oggetti strutturati / Funzionalità specifiche
Alcune funzionalità richiedono che i dati siano strutturati in un formato molto specifico (come un oggetto serializzato in un 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 anche se viene utilizzato un formato specifico dell'input (come le Iniezioni di Intestazione Email).
File
Le funzionalità che consentono di caricare file potrebbero essere vulnerabili a diversi problemi.
Le funzionalità che generano file includendo l'input dell'utente potrebbero eseguire codice imprevisto.
Gli utenti che aprono file caricati dagli utenti o generati automaticamente includendo l'input dell'utente potrebbero essere compromessi.
Gestione dell'Identità Esterna
Altre Vulnerabilità Utili
Queste vulnerabilità potrebbero aiutare a sfruttare altre vulnerabilità.
- Acquisizione di Dominio/Sottodominio
- IDOR
- Inquinamento dei Parametri
- Vulnerabilità di Normalizzazione Unicode
Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!
Altri modi per supportare HackTricks:
- Se vuoi vedere la tua azienda pubblicizzata in HackTricks o scaricare HackTricks in PDF Controlla i PACCHETTI DI ABBONAMENTO!
- Ottieni il merchandising ufficiale di PEASS & HackTricks
- Scopri The PEASS Family, la nostra collezione di esclusive NFT
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @carlospolopm.
- Condividi i tuoi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud github repos.