Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
requests-ip-rotator — Uma biblioteca Python para utilizar o grande pool de IPs do AWS API Gateway como proxy para gerar IPs pseudo-infinitos para web scraping e brute forcing. | Kitploit
Ferramentas/GitHubGitHub/ge0rg3/requests-ip-rotator
Ataques de SenhaProxies Web e InterceptaçãoEvasão de IDS/IPSColeta de InformaçõesBypass de WAFSegurança WebTestes de PenetraçãoRastreador
GitHubge0rg3/requests-ip-rotator

requests-ip-rotator

Uma biblioteca Python para utilizar o grande pool de IPs do AWS API Gateway como proxy para gerar IPs pseudo-infinitos para web scraping e brute forcing.

Ver Repositório
1.7k1727há 1 mêsRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Site

Orgulhosamente patrocinado por Swiftproxy

Proxies residenciais de alto desempenho com um pool de mais de 80 milhões de IPs em mais de 195 países — melhore as taxas de sucesso de requisições e reduza bloqueios de IP durante a coleta de dados em larga escala e automação de navegadores. Perfeito para uso com requests-ip-rotator, Playwright, Selenium e outras ferramentas de scraping.

Inicie um teste gratuito →


requests-ip-rotator

Uma biblioteca Python para utilizar o grande pool de IPs do AWS API Gateway como um proxy e gerar IPs pseudo-infinitos para web scraping e ataques de força bruta.

Esta biblioteca permitirá que o usuário contorne limitações de taxa baseadas em IP para sites e serviços.

Os cabeçalhos X-Forwarded-For são automaticamente randomizados e aplicados, a menos que sejam fornecidos. Isso ocorre porque, caso contrário, a AWS enviaria o endereço IP real do cliente neste cabeçalho.

O ApiGateway da AWS envia suas requisições a partir de qualquer IP disponível — e como a infraestrutura da AWS é tão grande, é quase garantido que seja diferente a cada vez. Ao usar o ApiGateway como proxy, podemos aproveitar isso para enviar requisições de IPs diferentes a cada vez. Observe que essas requisições podem ser facilmente identificadas e bloqueadas, pois são enviadas com cabeçalhos AWS exclusivos (por exemplo, "X-Amzn-Trace-Id").


Instalação

Este pacote está no pypi, então você pode instalá-lo por qualquer um dos seguintes métodos:

  • pip3 install requests-ip-rotator
  • python3 -m pip install requests-ip-rotator

 

Uso Simples

root@kitploit:~
import requests
from requests_ip_rotator import ApiGateway

# Create gateway object and initialise in AWS
gateway = ApiGateway("https://site.com")
gateway.start()

# Assign gateway to session
session = requests.Session()
session.mount("https://site.com", gateway)

# Send request (IP will be randomised)
response = session.get("https://site.com/index.php", params={"theme": "light"})
print(response.status_code)

# Delete gateways
gateway.shutdown()

Uso Alternativo (início e desligamento automáticos)

root@kitploit:~
import requests
from requests_ip_rotator import ApiGateway

with ApiGateway("https://site.com") as g:
    session = requests.Session()
    session.mount("https://site.com", g)

    response = session.get("https://site.com/index.php")
    print(response.status_code)

Lembre-se de que, se os gateways não forem desligados pelo método shutdown() ao usar o método #1, você poderá ser cobrado no futuro.

 

Custos

O API Gateway é gratuito para o primeiro milhão de requisições por região, o que significa que, para a maioria dos casos de uso, isso deve ser completamente gratuito.
No momento da redação deste texto, a AWS cobra aproximadamente US$ 3 por milhão de requisições após exceder o nível gratuito.
Se suas requisições envolverem streaming de dados, a AWS cobrará uma taxa de transferência de dados de US$ 0,09 por GB.  

Documentação

Autenticação AWS

Recomenda-se configurar a autenticação por meio de variáveis de ambiente. Com awscli, você pode executar aws configure para fazer isso, ou, alternativamente, você pode simplesmente definir você mesmo as variáveis AWS_ACCESS_KEY_ID e AWS_SECRET_ACCESS_KEY seguindo as etapas mencionadas neste tópico.

Você pode encontrar seu ID da chave de acesso e segredo seguindo o tutorial oficial da AWS.

 

Criando o objeto ApiGateway

A classe ApiGateway pode ser criada com os seguintes parâmetros opcionais:

root@kitploit:~
from ip_rotator import ApiGateway, EXTRA_REGIONS, ALL_REGIONS

# Gateway para IP HTTP de saída e porta para apenas duas regiões
gateway_1 = ApiGateway("http://1.1.1.1:8080", regions=["eu-west-1", "eu-west-2"])

# Gateway para HTTPS google no pacote de regiões extras, com par de chaves de acesso especificado
gateway_2 = ApiGateway("https://www.google.com", regions=EXTRA_REGIONS, access_key_id="ID", access_key_secret="SECRET")

 

Iniciando o gateway de API

Um objeto ApiGateway deve ser iniciado usando o método start.
Por padrão, se um ApiGateway já existir para o site, ele usará o endpoint existente em vez de criar um novo.
Isso não requer parâmetros, mas aceita os seguintes:

root@kitploit:~
# Inicia novas instâncias do ApiGateway para o site, ou localiza endpoints existentes se já existirem.
gateway_1.start()

# Inicia novas instâncias do ApiGateway mesmo que algumas já existam.
gateway_2.start(force=True)

 

Enviando requisições

As requisições são enviadas anexando o objeto ApiGateway a um objeto Session do requests.
O site fornecido em mount deve corresponder ao site passado no construtor do ApiGateway.

root@kitploit:~
import requests

# Envia uma requisição POST para o site criado no gateway_1. Será enviada de um IP aleatório.
session_1 = requests.Session()
session_1.mount("http://1.1.1.1:8080", gateway_1)
session_1.post("http://1.1.1.1:8080/update.php", headers={"Hello": "World"})

# Envia 127.0.0.1 como cabeçalho X-Forwarded-For na requisição de saída (caso contrário, X-Forwarded-For é randomizado).
session_1.post("http://1.1.1.1:8080/update.php", headers={"X-Forwarded-For", "127.0.0.1"})

# Executa consulta de pesquisa no Google a partir de IP aleatório
session_2 = requests.Session()
session_2.mount("https://www.google.com", gateway_2)
session_2.get("https://www.google.com/search?q=test")

 

Fechando Recursos do ApiGateway

É importante desligar os recursos do ApiGateway quando você terminar de usá-los, para evitar endpoints públicos pendentes que podem gerar cobranças excessivas em sua conta.
Isso é feito através do método shutdown do objeto ApiGateway. Ele fechará todos os recursos para as regiões especificadas no construtor do objeto ApiGateway.

root@kitploit:~
# Isto desligará todos os proxies de gateway para "http://1.1.1.1:8080" em "eu-west-1" e "eu-west-2"
gateway_1.shutdown()

# Isto desligará todos os proxies de gateway para "https://www.google.com" para todas as regiões em ip_rotator.EXTRA_REGIONS
gateway_2.shutdown()

Alternativamente, você pode desligar endpoints específicos seletivamente, se necessário. Para fazer isso, basta passar um array de endpoints para o método shutdown(), por exemplo:

root@kitploit:~
# Isto forçará a inicialização de um novo gateway (ou seja, criará novos endpoints mesmo que alguns já existam na região) e então excluirá apenas os 3 primeiros deles.
gateway_3 = ApiGateway("http://1.1.1.1:8082", regions=ALL_REGIONS)
endpoints = gateway_3.start(force=True)
gateway_3.shutdown(endpoints[:3])

Lembre-se de que quaisquer gateways iniciados com o parâmetro require_manual_deletion definido como True não serão excluídos pelo método shutdown e devem ser excluídos manualmente através da CLI da AWS ou do site.

Mídia

  • Computador de engenheiro de software do DOGE infectado por malware roubador de informações (NPR)
  • Código de trabalhador do DOGE apoia denunciante do NLRB (Krebs on Security)

Crédito

O código principal de criação e organização do gateway foi adaptado da extensão Burp IPRotate da RhinoSecurityLabs.
O conceito de encaminhamento do cabeçalho X-My-X-Forwarded-For foi originalmente concebido por ustayready em seu proxy fireprox.

Baixar ferramenta
NomeDescriçãoObrigatórioPadrão
siteO site (sem caminho) para o qual as requisições serão enviadas.Sim
regionsUm array de regiões AWS para configurar os gateways.Nãoip_rotator.DEFAULT_REGIONS
access_key_idID da Chave de Acesso AWS (substituirá variáveis de ambiente).NãoDepende de variáveis de ambiente.
access_key_secretSegredo da Chave de Acesso AWS (substituirá variáveis de ambiente).NãoDepende de variáveis de ambiente.
verboseIncluir mensagens de status e erro.NãoTrue
NomeDescriçãoObrigatórioPadrão
endpointsArray de endpoints pré-existentes (por exemplo, de sessão anterior).Não
forceCriar um novo conjunto de endpoints, mesmo que alguns já existam.NãoFalse
require_manual_deletionBooleano que especifica se os ApiGateways devem persistir às chamadas shutdown()NãoFalse