hacktricks/pentesting-web/rate-limit-bypass.md

71 lines
4.8 KiB
Markdown
Raw Normal View History

# Rate Limit Bypass
2022-04-28 16:01:33 +00:00
<figure><img src="../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>
2022-08-31 22:35:39 +00:00
\
Usa [**Trickest**](https://trickest.com/?utm_source=hacktricks&utm_medium=text&utm_campaign=ppc&utm_content=rate-limit-bypass) per costruire e **automatizzare flussi di lavoro** facilmente, alimentati dagli **strumenti** della comunità **più avanzati** al mondo.\
Accedi oggi:
2022-08-31 22:35:39 +00:00
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=rate-limit-bypass" %}
2022-04-28 16:01:33 +00:00
{% hint style="success" %}
Impara e pratica Hacking AWS:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Impara e pratica Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<summary>Supporta HackTricks</summary>
2023-12-31 01:25:17 +00:00
* Controlla i [**piani di abbonamento**](https://github.com/sponsors/carlospolop)!
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Condividi trucchi di hacking inviando PR ai** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repos di github.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}
2022-04-28 16:01:33 +00:00
2024-02-10 13:03:23 +00:00
## Tecniche di bypass del limite di velocità
### Esplorare Endpoint Simili
Dovrebbero essere effettuati tentativi di attacchi brute force su variazioni dell'endpoint mirato, come `/api/v3/sign-up`, inclusi alternativi come `/Sing-up`, `/SignUp`, `/singup`, `/api/v1/sign-up`, `/api/sign-up` ecc.
### Incorporare Caratteri Vuoti nel Codice o nei Parametri
Inserire byte vuoti come `%00`, `%0d%0a`, `%0d`, `%0a`, `%09`, `%0C`, `%20` nel codice o nei parametri può essere una strategia utile. Ad esempio, modificare un parametro in `code=1234%0a` consente di estendere i tentativi attraverso variazioni nell'input, come aggiungere caratteri di nuova riga a un indirizzo email per aggirare le limitazioni dei tentativi.
### Manipolare l'Origine IP tramite Intestazioni
Modificare le intestazioni per alterare l'origine IP percepita può aiutare a eludere il rate limiting basato su IP. Intestazioni come `X-Originating-IP`, `X-Forwarded-For`, `X-Remote-IP`, `X-Remote-Addr`, `X-Client-IP`, `X-Host`, `X-Forwared-Host`, inclusa l'uso di più istanze di `X-Forwarded-For`, possono essere modificate per simulare richieste da IP diversi.
2021-07-26 10:54:04 +00:00
```bash
X-Originating-IP: 127.0.0.1
X-Forwarded-For: 127.0.0.1
X-Remote-IP: 127.0.0.1
X-Remote-Addr: 127.0.0.1
2020-08-25 08:42:39 +00:00
X-Client-IP: 127.0.0.1
X-Host: 127.0.0.1
X-Forwared-Host: 127.0.0.1
2024-02-06 03:10:38 +00:00
# Double X-Forwarded-For header example
X-Forwarded-For:
X-Forwarded-For: 127.0.0.1
```
### Modifica di Altri Intestazioni
È consigliato alterare altre intestazioni di richiesta come l'user-agent e i cookie, poiché queste possono essere utilizzate per identificare e tracciare i modelli di richiesta. Cambiare queste intestazioni può prevenire il riconoscimento e il tracciamento delle attività del richiedente.
### Sfruttare il Comportamento dell'API Gateway
2021-07-26 10:54:04 +00:00
Alcuni API gateway sono configurati per applicare il rate limiting in base alla combinazione di endpoint e parametri. Variando i valori dei parametri o aggiungendo parametri non significativi alla richiesta, è possibile eludere la logica di rate limiting del gateway, facendo apparire ogni richiesta come unica. Ad esempio `/resetpwd?someparam=1`.
2021-07-26 10:54:04 +00:00
### Accedere al Tuo Account Prima di Ogni Tentativo
Accedere a un account prima di ogni tentativo, o di ogni insieme di tentativi, potrebbe resettare il contatore del rate limit. Questo è particolarmente utile quando si testano le funzionalità di login. Utilizzare un attacco Pitchfork in strumenti come Burp Suite, per ruotare le credenziali ogni pochi tentativi e assicurarsi che i reindirizzamenti siano contrassegnati, può effettivamente riavviare i contatori del rate limit.
2021-11-28 11:01:58 +00:00
### Utilizzare Reti Proxy
Distribuire una rete di proxy per distribuire le richieste su più indirizzi IP può eludere efficacemente i limiti di rate basati su IP. Instradando il traffico attraverso vari proxy, ogni richiesta appare provenire da una fonte diversa, diluendo l'efficacia del rate limit.
### Suddividere l'Attacco tra Diversi Account o Sessioni
Se il sistema target applica limiti di rate su base per-account o per-sessione, distribuire l'attacco o il test su più account o sessioni può aiutare a evitare il rilevamento. Questo approccio richiede la gestione di più identità o token di sessione, ma può distribuire efficacemente il carico per rimanere entro i limiti consentiti.