hacktricks/pentesting-web/web-vulnerabilities-methodology/README.md

155 lines
9.2 KiB
Markdown
Raw Normal View History

2024-02-10 13:03:23 +00:00
# Metodologia delle vulnerabilità web
2022-09-12 18:43:22 +00:00
<details>
2024-02-10 13:03:23 +00:00
<summary><strong>Impara l'hacking di AWS da zero a eroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
Altri modi per supportare HackTricks:
2024-01-01 17:15:42 +00:00
2024-02-10 13:03:23 +00:00
* Se vuoi vedere la tua **azienda pubblicizzata in HackTricks** o **scaricare HackTricks in PDF** Controlla i [**PACCHETTI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di esclusive [**NFT**](https://opensea.io/collection/the-peass-family)
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo Telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR a** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-09-12 18:43:22 +00:00
</details>
2024-02-10 13:03:23 +00:00
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.
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
## Proxy
2022-09-12 18:43:22 +00:00
{% hint style="info" %}
2024-02-10 13:03:23 +00:00
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.
2022-09-12 18:43:22 +00:00
{% endhint %}
2024-02-10 13:03:23 +00:00
* [ ] [**Abuso degli header hop-by-hop**](../abusing-hop-by-hop-headers.md)
* [ ] [**Avvelenamento della cache/Inganno della cache**](../cache-deception.md)
2022-09-12 18:43:22 +00:00
* [ ] [**HTTP Request Smuggling**](../http-request-smuggling/)
* [ ] [**H2C Smuggling**](../h2c-smuggling.md)
2024-02-10 13:03:23 +00:00
* [ ] [**Inclusione lato server/Inclusione lato edge**](../server-side-inclusion-edge-side-inclusion-injection.md)
* [ ] [**Scoprire Cloudflare**](../../network-services-pentesting/pentesting-web/uncovering-cloudflare.md)
* [ ] [**Iniezione lato server XSLT**](../xslt-server-side-injection-extensible-stylesheet-language-transformations.md)
* [ ] [**Bypass delle protezioni Proxy / WAF**](../proxy-waf-protections-bypass.md)
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
## **Input dell'utente**
2022-09-12 18:43:22 +00:00
{% hint style="info" %}
2024-02-10 13:03:23 +00:00
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.
2022-09-12 18:43:22 +00:00
{% endhint %}
2024-02-10 13:03:23 +00:00
### **Valori riflessi**
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
Se i dati introdotti possono in qualche modo essere riflessi nella risposta, la pagina potrebbe essere vulnerabile a diversi problemi.
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
* [ ] [**Iniezione di template lato client**](../client-side-template-injection-csti.md)
* [ ] [**Iniezione di comandi**](../command-injection.md)
2022-09-12 18:43:22 +00:00
* [ ] [**CRLF**](../crlf-0d-0a.md)
2024-02-10 13:03:23 +00:00
* [ ] [**Markup sospeso**](../dangling-markup-html-scriptless-injection/)
* [ ] [**Inclusione di file/Traversal del percorso**](../file-inclusion/)
* [ ] [**Reindirizzamento aperto**](../open-redirect.md)
* [ ] [**Pollution del prototipo per XSS**](../deserialization/nodejs-proto-prototype-pollution/#client-side-prototype-pollution-to-xss)
* [ ] [**Inclusione lato server/Inclusione lato edge**](../server-side-inclusion-edge-side-inclusion-injection.md)
* [ ] [**Forgiatura di richieste lato server**](../ssrf-server-side-request-forgery/)
* [ ] [**Iniezione di template lato server**](../ssti-server-side-template-injection/)
2022-09-12 18:43:22 +00:00
* [ ] [**Reverse Tab Nabbing**](../reverse-tab-nabbing.md)
2024-02-10 13:03:23 +00:00
* [ ] [**Iniezione lato server XSLT**](../xslt-server-side-injection-extensible-stylesheet-language-transformations.md)
2022-09-12 18:43:22 +00:00
* [ ] [**XSS**](../xss-cross-site-scripting/)
* [ ] [**XSSI**](../xssi-cross-site-script-inclusion.md)
* [ ] [**XS-Search**](../xs-search.md)
2024-02-10 13:03:23 +00:00
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:
2022-09-12 18:43:22 +00:00
{% content-ref url="../pocs-and-polygloths-cheatsheet/" %}
[pocs-and-polygloths-cheatsheet](../pocs-and-polygloths-cheatsheet/)
{% endcontent-ref %}
2024-02-10 13:03:23 +00:00
### **Funzionalità di ricerca**
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
Se la funzionalità può essere utilizzata per cercare qualche tipo di dati all'interno del backend, forse puoi (ab)usarla per cercare dati arbitrari.
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
* [ ] [**Inclusione di file/Traversal del percorso**](../file-inclusion/)
2022-09-12 18:43:22 +00:00
* [ ] [**NoSQL Injection**](../nosql-injection.md)
* [ ] [**LDAP Injection**](../ldap-injection.md)
* [ ] [**ReDoS**](../regular-expression-denial-of-service-redos.md)
* [ ] [**SQL Injection**](../sql-injection/)
* [ ] [**XPATH Injection**](../xpath-injection.md)
2024-02-10 13:03:23 +00:00
### **Moduli, WebSockets e PostMsgs**
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
Quando un websocket invia un messaggio o un modulo che consente agli utenti di eseguire azioni, possono sorgere vulnerabilità.
2022-09-12 18:43:22 +00:00
* [ ] [**Cross Site Request Forgery**](../csrf-cross-site-request-forgery.md)
* [ ] [**Cross-site WebSocket hijacking (CSWSH)**](../websocket-attacks.md)
2024-02-10 13:03:23 +00:00
* [ ] [**Vulnerabilità di PostMessage**](../postmessage-vulnerabilities/)
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
### **Intestazioni HTTP**
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
A seconda delle intestazioni HTTP fornite dal server web, potrebbero essere presenti alcune vulnerabilità.
2022-09-12 18:43:22 +00:00
* [ ] [**Clickjacking**](../clickjacking.md)
2024-02-10 13:03:23 +00:00
* [ ] [**Bypass della Content Security Policy**](../content-security-policy-csp-bypass/)
* [ ] [**Hacking dei cookie**](../hacking-with-cookies/)
2022-09-12 18:43:22 +00:00
* [ ] [**CORS - Misconfigurations & Bypass**](../cors-bypass.md)
2024-02-10 13:03:23 +00:00
### **Bypass**
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
Ci sono diverse funzionalità specifiche in cui alcuni workaround potrebbero essere utili per aggirarle.
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
* [ ] [**Bypass 2FA/OTP**](../2fa-bypass.md)
* [ ] [**Bypass del processo di pagamento**](../bypass-payment-process.md)
* [ ] [**Bypass del Captcha**](../captcha-bypass.md)
* [ ] [**Bypass del login**](../login-bypass/)
2022-09-12 18:43:22 +00:00
* [ ] [**Race Condition**](../race-condition.md)
2024-02-10 13:03:23 +00:00
* [ ] [**Bypass del limite di velocità**](../rate-limit-bypass.md)
* [ ] [**Bypass del ripristino della password dimenticata**](../reset-password.md)
* [ ] [**Vulnerabilità di registrazione**](../registration-vulnerabilities.md)
### **Oggetti strutturati / Funzionalità specifiche**
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
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).
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
* [ ] [**Deserializzazione**](../deserialization/)
* [ ] [**Iniezione di Intestazione Email**](../email-injections.md)
* [ ] [**Vulnerabilità JWT**](../hacking-jwt-json-web-tokens.md)
* [ ] [**Entità XML Esterna**](../xxe-xee-xml-external-entity.md)
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
### File
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
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.
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
* [ ] [**Caricamento File**](../file-upload/)
* [ ] [**Iniezione di Formule**](../formula-csv-doc-latex-ghostscript-injection.md)
* [ ] [**Iniezione PDF**](../xss-cross-site-scripting/pdf-injection.md)
* [ ] [**XSS Lato Server**](../xss-cross-site-scripting/server-side-xss-dynamic-pdf.md)
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
### **Gestione dell'Identità Esterna**
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
* [ ] [**OAUTH per il dirottamento dell'account**](../oauth-to-account-takeover.md)
* [ ] [**Attacchi SAML**](../saml-attacks/)
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
### **Altre Vulnerabilità Utili**
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
Queste vulnerabilità potrebbero aiutare a sfruttare altre vulnerabilità.
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
* [ ] [**Acquisizione di Dominio/Sottodominio**](../domain-subdomain-takeover.md)
2022-09-12 18:43:22 +00:00
* [ ] [**IDOR**](../idor.md)
2024-02-10 13:03:23 +00:00
* [ ] [**Inquinamento dei Parametri**](../parameter-pollution.md)
* [ ] [**Vulnerabilità di Normalizzazione Unicode**](../unicode-injection/)
2022-09-12 18:43:22 +00:00
<details>
2024-02-10 13:03:23 +00:00
<summary><strong>Impara l'hacking di AWS da zero a eroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-09-12 18:43:22 +00:00
2024-02-10 13:03:23 +00:00
Altri modi per supportare HackTricks:
2024-01-01 17:15:42 +00:00
2024-02-10 13:03:23 +00:00
* Se vuoi vedere la tua **azienda pubblicizzata in HackTricks** o **scaricare HackTricks in PDF** Controlla i [**PACCHETTI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di esclusive [**NFT**](https://opensea.io/collection/the-peass-family)
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR ai** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-09-12 18:43:22 +00:00
</details>