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

5.1 KiB

요율 제한 우회


Trickest를 사용하여 세계에서 가장 고급 커뮤니티 도구를 활용한 워크플로우를 쉽게 구축하고 자동화하세요.
오늘 바로 액세스하세요:

{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=rate-limit-bypass" %}

제로부터 영웅이 될 때까지 AWS 해킹을 배우세요 htARTE (HackTricks AWS Red Team Expert)!

HackTricks를 지원하는 다른 방법:

요율 제한 우회 기술

유사한 엔드포인트 탐색

대상 엔드포인트의 변형에 대한 브루트 포스 공격을 시도해야 합니다. /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와 같은 헤더를 수정하여 다른 IP에서 요청이 온 것처럼 시뮬레이션할 수 있습니다.

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

다른 헤더 변경

사용자 에이전트 및 쿠키와 같은 다른 요청 헤더를 변경하는 것이 권장됩니다. 이러한 헤더도 요청 패턴을 식별하고 추적하는 데 사용될 수 있습니다. 이러한 헤더를 변경하면 요청자의 활동을 인식하고 추적하는 것을 방지할 수 있습니다.

API 게이트웨이 동작 활용

일부 API 게이트웨이는 엔드포인트 및 매개변수의 조합에 기반한 속도 제한을 적용하도록 구성됩니다. 매개변수 값을 다양화하거나 요청에 무의미한 매개변수를 추가함으로써 게이트웨이의 속도 제한 논리를 우회할 수 있으며, 각 요청이 고유하게 보이도록 할 수 있습니다. 예를 들어 /resetpwd?someparam=1.

각 시도 전에 계정에 로그인

각 시도 전이나 일련의 시도마다 계정에 로그인하면 속도 제한 카운터가 재설정될 수 있습니다. 특히 로그인 기능을 테스트할 때 유용합니다. Burp Suite와 같은 도구에서 Pitchfork 공격을 활용하여 일부 시도마다 자격 증명을 회전시키고 리디렉션을 따르도록 표시하여 속도 제한 카운터를 효과적으로 다시 시작할 수 있습니다.

프록시 네트워크 활용

여러 IP 주소에 걸쳐 요청을 분산하는 프록시 네트워크를 배포하면 IP 기반 속도 제한을 효과적으로 우회할 수 있습니다. 다양한 프록시를 통해 트래픽을 라우팅함으로써 각 요청이 다른 소스에서 시작한 것처럼 보이게 하여 속도 제한의 효과를 약화시킬 수 있습니다.

공격을 다른 계정 또는 세션으로 분할

대상 시스템이 계정 또는 세션 단위로 속도 제한을 적용하는 경우, 공격이나 테스트를 여러 계정이나 세션으로 분산시키면 감지를 피하는 데 도움이 될 수 있습니다. 이 접근 방식은 여러 신원 또는 세션 토큰을 관리해야 하지만 허용 가능한 한도 내에 유지하기 위해 부하를 효과적으로 분산할 수 있습니다.