mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 13:13:41 +00:00
62 lines
4.1 KiB
Markdown
62 lines
4.1 KiB
Markdown
# 绕过速率限制
|
||
|
||
<figure><img src="../.gitbook/assets/image (3) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
||
|
||
\
|
||
使用[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks)轻松构建和**自动化工作流程**,使用世界上**最先进**的社区工具。\
|
||
立即获取访问权限:
|
||
|
||
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|
||
|
||
<details>
|
||
|
||
<summary><strong>从零开始学习AWS黑客技术,成为专家</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||
|
||
支持HackTricks的其他方式:
|
||
|
||
* 如果您想在HackTricks中看到您的**公司广告**或**下载PDF格式的HackTricks**,请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||
* 获取[**官方PEASS & HackTricks周边产品**](https://peass.creator-spring.com)
|
||
* 探索[**PEASS家族**](https://opensea.io/collection/the-peass-family),我们的独家[NFTs](https://opensea.io/collection/the-peass-family)系列
|
||
* **加入** 💬 [**Discord群**](https://discord.gg/hRep4RUj7f) 或 [**电报群**](https://t.me/peass) 或在**Twitter**上关注我 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**。**
|
||
* 通过向[**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github仓库提交PR来分享您的黑客技巧。
|
||
|
||
</details>
|
||
|
||
## 绕过速率限制技术
|
||
|
||
### 探索类似的端点
|
||
应尝试对目标端点的变体执行暴力攻击,例如`/api/v3/sign-up`,包括`/Sing-up`,`/SignUp`,`/singup`,`/api/v1/sign-up`,`/api/sign-up`等替代选项。
|
||
|
||
### 在代码或参数中插入空白字符
|
||
在代码或参数中插入空白字节,如`%00`,`%0d%0a`,`%0d`,`%0a`,`%09`,`%0C`,`%20`,可以是一种有用的策略。例如,将参数调整为`code=1234%0a`可以通过输入的变化来延长尝试次数,例如向电子邮件地址添加换行符以绕过尝试限制。
|
||
|
||
### 通过标头操纵IP来源
|
||
修改标头以更改感知的IP来源可以帮助规避基于IP的速率限制。可以调整标头,如`X-Originating-IP`,`X-Forwarded-For`,`X-Remote-IP`,`X-Remote-Addr`,`X-Client-IP`,`X-Host`,`X-Forwared-Host`,包括使用多个`X-Forwarded-For`实例,以模拟来自不同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
|
||
```
|
||
### 更改其他标头
|
||
建议更改其他请求标头,如用户代理和Cookie,因为这些也可以用于识别和跟踪请求模式。更改这些标头可以防止识别和跟踪请求者的活动。
|
||
|
||
### 利用 API 网关行为
|
||
一些 API 网关配置为基于端点和参数的组合应用速率限制。通过改变参数值或向请求添加非重要参数,可以绕过网关的速率限制逻辑,使每个请求看起来是独一无二的。
|
||
例如 `/resetpwd?someparam=1`。
|
||
|
||
### 在每次尝试之前登录到您的帐户
|
||
在每次尝试之前登录到一个帐户,或每组尝试之前,可能会重置速率限制计数器。这在测试登录功能时特别有用。利用类似 Burp Suite 中的 Pitchfork 攻击工具,每隔几次尝试轮换凭据,并确保标记了跟随重定向,可以有效地重新启动速率限制计数器。
|
||
|
||
### 利用代理网络
|
||
部署一个代理网络以将请求分布到多个 IP 地址可以有效地绕过基于 IP 的速率限制。通过通过各种代理路由流量,每个请求看起来来自不同的源头,从而削弱速率限制的效果。
|
||
|
||
### 将攻击分散到不同帐户或会话中
|
||
如果目标系统根据每个帐户或每个会话应用速率限制,将攻击或测试分散到多个帐户或会话中有助于避免检测。这种方法需要管理多个身份或会话令牌,但可以有效地分发负载以保持在允许的限制范围内。
|