hacktricks/pentesting-web/reset-password.md
2024-02-10 13:03:23 +00:00

150 lines
10 KiB
Markdown

# Bypass del ripristino/password dimenticata
<details>
<summary><strong>Impara l'hacking di AWS da zero a esperto con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Altri modi per supportare HackTricks:
* Se vuoi vedere la tua **azienda pubblicizzata su HackTricks** o **scaricare HackTricks in PDF** Controlla i [**PIANI 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 di HackenProof**](https://discord.com/invite/N3FrSbmwdy) 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.**
</details>
<figure><img src="../../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
Unisciti al server [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) per comunicare con hacker esperti e cacciatori di bug bounty!
**Insight sull'hacking**\
Interagisci con contenuti che approfondiscono l'emozione e le sfide dell'hacking
**Notizie sull'hacking in tempo reale**\
Resta aggiornato sul mondo dell'hacking frenetico attraverso notizie e approfondimenti in tempo reale
**Ultime notizie**\
Rimani informato sul lancio delle nuove bug bounty e sugli aggiornamenti cruciali delle piattaforme
**Unisciti a noi su** [**Discord**](https://discord.com/invite/N3FrSbmwdy) **e inizia a collaborare con i migliori hacker oggi stesso!**
## **Fuga del token di ripristino password tramite Referrer**
* L'intestazione HTTP referer può rivelare il token di ripristino password se è incluso nell'URL. Ciò può accadere quando un utente fa clic su un link di un sito di terze parti dopo aver richiesto un ripristino password.
* **Impatto**: Possibile compromissione dell'account tramite attacchi di Cross-Site Request Forgery (CSRF).
* **Riferimenti**:
- [Segnalazione HackerOne 342693](https://hackerone.com/reports/342693)
- [Segnalazione HackerOne 272379](https://hackerone.com/reports/272379)
- [Articolo sulla fuga del token di ripristino password](https://medium.com/@rubiojhayz1234/toyotas-password-reset-token-and-email-address-leak-via-referer-header-b0ede6507c6a)
## **Avvelenamento del ripristino password**
* Gli attaccanti possono manipolare l'intestazione Host durante le richieste di ripristino password per indirizzare il link di ripristino a un sito malevolo.
* **Patch**: Utilizzare `$_SERVER['SERVER_NAME']` per costruire gli URL di ripristino password invece di `$_SERVER['HTTP_HOST']`.
* **Impatto**: Porta a un possibile compromesso dell'account rivelando i token di ripristino agli attaccanti.
* **Passaggi di mitigazione**:
- Convalidare l'intestazione Host rispetto a un elenco di domini consentiti.
- Utilizzare metodi sicuri lato server per generare URL assoluti.
* **Riferimenti**:
- [Articolo di Acunetix sul veleno del ripristino password](https://www.acunetix.com/blog/articles/password-reset-poisoning/)
## **Ripristino password manipolando il parametro email**
* Gli attaccanti possono manipolare la richiesta di ripristino password aggiungendo parametri email aggiuntivi per deviare il link di ripristino.
* **Passaggi di mitigazione**:
- Analizzare e convalidare correttamente i parametri email lato server.
- Utilizzare istruzioni preparate o query parametrizzate per prevenire attacchi di injection.
* **Riferimenti**:
- [Account Takeover di Readme.com](https://medium.com/@0xankush/readme-com-account-takeover-bugbounty-fulldisclosure-a36ddbe915be)
## **Cambiare email e password di qualsiasi utente tramite parametri API**
* Gli attaccanti possono modificare i parametri email e password nelle richieste API per cambiare le credenziali dell'account.
* **Passaggi di mitigazione**:
- Assicurarsi una valida convalida dei parametri e controlli di autenticazione.
- Implementare un logging e un monitoraggio robusti per rilevare e rispondere a attività sospette.
* **Riferimento**:
- [Account Takeover completo tramite manipolazione dei parametri API](https://medium.com/@adeshkolte/full-account-takeover-changing-email-and-password-of-any-user-through-api-parameters-3d527ab27240)
## **Nessun limite di velocità: bombardamento di email**
* La mancanza di limiti di velocità sulle richieste di ripristino password può portare a un bombardamento di email, sovraccaricando l'utente con email di ripristino.
* **Passaggi di mitigazione**:
- Implementare limiti di velocità basati sull'indirizzo IP o sull'account utente.
- Utilizzare sfide CAPTCHA per prevenire abusi automatizzati.
* **Riferimenti**:
- [Segnalazione HackerOne 280534](https://hackerone.com/reports/280534)
## **Scoprire come viene generato il token di ripristino password**
* Comprendere il modello o il metodo di generazione del token può portare a prevedere o forzare i token.
* **Passaggi di mitigazione**:
- Utilizzare metodi crittografici robusti per la generazione dei token.
- Assicurarsi una casualità e una lunghezza sufficienti per prevenire la prevedibilità.
* **Strumenti**: Utilizzare Burp Sequencer per analizzare la casualità dei token.
## **GUID indovinabile**
* Se i GUID (ad esempio, versione 1) sono indovinabili o prevedibili, gli attaccanti possono forzarli per generare token di ripristino validi.
* **Passaggi di mitigazione**:
- Utilizzare la versione 4 dei GUID per la casualità o implementare misure di sicurezza aggiuntive per altre versioni.
* **Strumenti**: Utilizzare [guidtool](https://github.com/intruder-io/guidtool) per analizzare e generare GUID.
## **Manipolazione della risposta: sostituire una risposta errata con una corretta**
* Manipolazione delle risposte HTTP per eludere messaggi di errore o restrizioni.
* **Passaggi di mitigazione**:
- Implementare controlli lato server per garantire l'integrità delle risposte.
- Utilizzare canali di comunicazione sicuri come HTTPS per prevenire attacchi di man-in-the-middle.
* **Riferimento**:
- [Bug critico in un evento di bug bounty dal vivo](https://medium.com/@innocenthacker/how-i-found-the-most-critical-bug-in-live-bug-bounty-event-7a88b3aa97b3)
## **Utilizzo di token scaduti**
* Verifica se i token scaduti possono ancora essere utilizzati per il ripristino password.
* **Passaggi di mitigazione**:
- Implementare rigorose politiche di scadenza dei token e convalidare la scadenza dei token lato server.
## **Forzatura del token di ripristino password**
* Tentativo di forzare il token di ripristino utilizzando strumenti come Burpsuite e IP-Rotator per eludere i limiti di velocità basati sull'indirizzo IP.
* **Passaggi di mitigazione**:
- Implementare meccanismi robusti di limitazione della velocità e blocco dell'account.
- Monitorare attività sospette indicative di attacchi di forza bruta.
## **Prova a utilizzare il tuo token**
* Verifica se il token di ripristino di un attaccante può essere utilizzato insieme all'email della vittima.
* **Passaggi di mitigazione**:
- Assicurarsi che i token siano legati alla sessione dell'utente o ad altri attributi specifici dell'utente.
## **Invalidazione della sessione in logout/ripristino password**
* Assicurarsi che le sessioni vengano invalidate quando un utente effettua il logout o ripristina la password.
* **Passaggi di mitigazione**:
- Implementare una corretta gestione delle sessioni, garantendo che tutte le sessioni vengano invalidate al momento del logout o del ripristino password.
## **Invalidazione della sessione in logout/ripristino password**
* I token di ripristino devono avere un tempo di scadenza dopo il quale diventano invalidi.
* **Passaggi di mitigazione**:
- Impostare un tempo di scadenza ragionevole per i token di
## Riferimenti
* [https://anugrahsr.github.io/posts/10-Password-reset-flaws/#10-try-using-your-token](https://anugrahsr.github.io/posts/10-Password-reset-flaws/#10-try-using-your-token)
<figure><img src="../../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
Unisciti al server [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) per comunicare con hacker esperti e cacciatori di bug!
**Insight sull'hacking**\
Interagisci con contenuti che approfondiscono l'emozione e le sfide dell'hacking
**Notizie sull'hacking in tempo reale**\
Resta aggiornato con il mondo dell'hacking veloce attraverso notizie e approfondimenti in tempo reale
**Ultime notizie**\
Rimani informato con i nuovi bug bounty in lancio e gli aggiornamenti cruciali della piattaforma
**Unisciti a noi su** [**Discord**](https://discord.com/invite/N3FrSbmwdy) e inizia a collaborare con i migliori hacker oggi stesso!
<details>
<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>
Altri modi per supportare HackTricks:
* 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 [**NFT**](https://opensea.io/collection/the-peass-family) esclusivi
* **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 repository github di** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
</details>