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

91 lines
7 KiB
Markdown

# Contournement de la limite de taux
<figure><img src="../.gitbook/assets/image (3) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
\
Utilisez [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) pour construire facilement et **automatiser des flux de travail** alimentés par les outils communautaires les plus avancés au monde.\
Accédez dès aujourd'hui à :
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
<details>
<summary><strong>Apprenez le piratage AWS de zéro à héros avec</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (Expert de l'équipe rouge HackTricks AWS)</strong></a><strong>!</strong></summary>
Autres façons de soutenir HackTricks :
* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) !
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family)
* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
</details>
## Techniques de contournement de la limite de taux
### Exploration des points de terminaison similaires
Des tentatives doivent être faites pour effectuer des attaques par force brute sur des variations du point de terminaison ciblé, telles que `/api/v3/sign-up`, y compris des alternatives comme `/Sing-up`, `/SignUp`, `/singup`, `/api/v1/sign-up`, `/api/sign-up`, etc.
### Incorporation de caractères vides dans le code ou les paramètres
Insérer des octets vides comme `%00`, `%0d%0a`, `%0d`, `%0a`, `%09`, `%0C`, `%20` dans le code ou les paramètres peut être une stratégie utile. Par exemple, ajuster un paramètre à `code=1234%0a` permet d'étendre les tentatives à travers des variations d'entrée, comme ajouter des caractères de saut de ligne à une adresse e-mail pour contourner les limitations des tentatives.
### Manipulation de l'origine IP via les en-têtes
La modification des en-têtes pour modifier l'origine IP perçue peut aider à contourner la limitation de taux basée sur l'IP. Des en-têtes tels que `X-Originating-IP`, `X-Forwarded-For`, `X-Remote-IP`, `X-Remote-Addr`, `X-Client-IP`, `X-Host`, `X-Forwared-Host`, y compris l'utilisation de plusieurs instances de `X-Forwarded-For`, peuvent être ajustés pour simuler des requêtes provenant de différentes adresses IP.
```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
```
### Modification des autres en-têtes
Il est recommandé de modifier d'autres en-têtes de requête tels que l'agent utilisateur et les cookies, car ils peuvent également être utilisés pour identifier et suivre les schémas de requête. Le changement de ces en-têtes peut empêcher la reconnaissance et le suivi des activités du demandeur.
### Exploitation du comportement de la passerelle API
Certaines passerelles API sont configurées pour appliquer une limitation de taux en fonction de la combinaison de l'endpoint et des paramètres. En variant les valeurs des paramètres ou en ajoutant des paramètres non significatifs à la requête, il est possible de contourner la logique de limitation de taux de la passerelle, rendant chaque requête unique. Par exemple `/resetpwd?someparam=1`.
### Connexion à votre compte avant chaque tentative
Se connecter à un compte avant chaque tentative, ou à chaque série de tentatives, pourrait réinitialiser le compteur de limitation de taux. Cela est particulièrement utile lors de tests de fonctionnalités de connexion. L'utilisation d'une attaque Pitchfork dans des outils comme Burp Suite, pour faire tourner les informations d'identification tous les quelques essais et s'assurer que les redirections sont suivies, peut redémarrer efficacement les compteurs de limitation de taux.
### Utilisation de réseaux de proxy
Le déploiement d'un réseau de proxies pour distribuer les requêtes sur plusieurs adresses IP peut contourner efficacement les limites de taux basées sur les adresses IP. En routant le trafic à travers divers proxies, chaque requête semble provenir d'une source différente, diluant l'efficacité de la limite de taux.
### Répartition de l'attaque entre différents comptes ou sessions
Si le système cible applique des limites de taux sur une base par compte ou par session, la répartition de l'attaque ou du test entre plusieurs comptes ou sessions peut aider à éviter la détection. Cette approche nécessite la gestion de plusieurs identités ou jetons de session, mais peut distribuer efficacement la charge pour rester dans les limites autorisées.
<details>
<summary><strong>Apprenez le piratage AWS de zéro à héros avec</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Autres façons de soutenir HackTricks :
* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) !
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>
<figure><img src="../.gitbook/assets/image (3) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
\
Utilisez [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) pour construire et **automatiser facilement des workflows** alimentés par les outils communautaires les plus avancés au monde.\
Accédez dès aujourd'hui :
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}