9.1 KiB
Metodologia delle Vulnerabilità Web
Impara l'hacking di AWS da zero a eroe con htARTE (Esperto Red Team AWS di HackTricks)!
Altri modi per supportare HackTricks:
- Se vuoi vedere la tua azienda pubblicizzata su HackTricks o scaricare HackTricks in PDF Controlla i PIANI DI ABBONAMENTO!
- Ottieni il merchandising ufficiale di PEASS & HackTricks
- Scopri La Famiglia PEASS, la nostra collezione di esclusivi 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 repos di github.
In ogni Pentest Web, ci sono diversi luoghi nascosti e ovvi che potrebbero essere vulnerabili. Questo post è pensato per essere una checklist per confermare che hai 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 che ci sia un proxy vulnerabile, ma di solito necessitano anche di una vulnerabilità aggiuntiva nel backend. {% endhint %}
- Abuso degli header hop-by-hop
- Avvelenamento della Cache/Inganno della Cache
- Smuggling delle Richieste HTTP
- H2C Smuggling
- Inclusione lato server/Inclusione lato Edge
- Scoprire Cloudflare
- Iniezione Server Side XSLT
- Bypass Protezioni Proxy / WAF
Input Utente
{% hint style="info" %}
La maggior parte delle applicazioni web consentirà agli utenti di inserire alcuni dati che verranno elaborati in seguito.
A seconda della struttura dei dati che il server si aspetta, alcune vulnerabilità potrebbero 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
- Iniezione di Prototipi per XSS
- Inclusione lato Server/Inclusione lato Edge
- Forgiatura di Richieste lato Server
- Iniezione di Template lato Server
- Reverse Tab Nabbing
- Iniezione Server Side 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 un tipo di dati all'interno del backend, forse puoi (ab)usarla per cercare dati arbitrari.
- Inclusione di File/Traversal del Percorso
- Iniezione NoSQL
- Iniezione LDAP
- ReDoS
- Iniezione SQL
- Iniezione XPATH
Moduli, WebSockets e PostMsgs
Quando un websocket invia un messaggio o un modulo consente agli utenti di eseguire azioni, potrebbero sorgere vulnerabilità.
- Falsificazione di Richieste Cross Site
- Hijacking WebSocket Cross-site (CSWSH)
- Vulnerabilità PostMessage
Intestazioni HTTP
A seconda delle intestazioni HTTP fornite dal server web, potrebbero essere presenti alcune vulnerabilità.
- Clickjacking
- Bypass della Politica di Sicurezza del Contenuto
- Hacking con i Cookies
- CORS - Misconfigurazioni e Bypass
Bypass
Ci sono diverse funzionalità specifiche in cui alcuni workaround potrebbero essere utili per evitarle
- Bypass 2FA/OTP
- Bypass del Processo di Pagamento
- Bypass Captcha
- Bypass del Login
- Condizione di Gara
- Bypass del Limite di Velocità
- Bypass del Reset della Password Dimenticata
- Vulnerabilità di Registrazione
Oggetti Strutturati / Funzionalità Specifiche
Alcune funzionalità richiederanno che i dati siano strutturati in un formato molto specifico (come un oggetto serializzato di 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 se viene utilizzato un formato specifico dell'input (come le Iniezioni di Intestazioni Email).
File
Le funzionalità che consentono di caricare file potrebbero essere vulnerabili a diversi problemi.
Le funzionalità che generano file includendo input dell'utente potrebbero eseguire codice inaspettato.
Gli utenti che aprono file caricati dagli 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à.
- Takeover di Dominio/Sottodominio
- IDOR
- Inquinamento dei Parametri
- Vulnerabilità di Normalizzazione Unicode
Impara l'hacking di AWS da zero a eroe con htARTE (Esperto Red Team AWS di HackTricks)!
Altri modi per supportare HackTricks:
- Se vuoi vedere la tua azienda pubblicizzata in HackTricks o scaricare HackTricks in PDF Controlla i PIANI DI ABBONAMENTO!
- Ottieni il merchandising ufficiale PEASS & HackTricks
- Scopri La Famiglia PEASS, la nostra collezione di NFT esclusivi
- 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 repository di Github.