mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 05:03:35 +00:00
70 lines
4.8 KiB
Markdown
70 lines
4.8 KiB
Markdown
# Rate Limit Bypass
|
|
|
|
<figure><img src="../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
\
|
|
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:
|
|
|
|
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=rate-limit-bypass" %}
|
|
|
|
{% 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)
|
|
|
|
<details>
|
|
|
|
<summary>Supporta HackTricks</summary>
|
|
|
|
* 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.
|
|
|
|
</details>
|
|
{% endhint %}
|
|
|
|
## 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.
|
|
```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
|
|
X-Client-IP: 127.0.0.1
|
|
X-Host: 127.0.0.1
|
|
X-Forwared-Host: 127.0.0.1
|
|
|
|
# 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
|
|
|
|
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`.
|
|
|
|
### 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.
|
|
|
|
### 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.
|