Guía: Realizar Peticiones Web con Agentes de Usuario Rotatorios

Hacker La Red Oscura

1. Preparar herramientas necesarias

Instala curl, python3, y pip si no están ya instalados:

sudo apt update && sudo apt install curl python3 python3-pip -y

2. Crear una lista de agentes de usuario (User-Agents)

Los agentes de usuario son cadenas que identifican navegadores o dispositivos. Crea un archivo llamado user_agents.txt con una lista de agentes de usuario comunes.

Ejemplo del contenido de user_agents.txt:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1
Mozilla/5.0 (Linux; Android 11; Pixel 4 XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Mobile Safari/537.36

3. Crear un script en Python para rotar los agentes de usuario

Usa Python para automatizar las peticiones con agentes rotatorios. Guarda el siguiente código como rotating_user_agents.py:

import requests
import random
import time

# Leer los agentes de usuario desde el archivo
with open("user_agents.txt", "r") as f:
user_agents = [line.strip() for line in f.readlines()]

# URL objetivo
url = "http://target.com"

# Número de peticiones
num_requests = 50

for i in range(num_requests):
# Seleccionar un agente de usuario aleatorio
user_agent = random.choice(user_agents)

# Configurar encabezados
headers = {
"User-Agent": user_agent
}

try:
# Realizar la petición
response = requests.get(url, headers=headers)

# Mostrar el resultado
print(f"[{i+1}/{num_requests}] Status: {response.status_code}, User-Agent: {user_agent}")

# Pausa aleatoria entre peticiones para no parecer un bot
time.sleep(random.uniform(1, 3))

except Exception as e:
print(f"Error en la petición: {e}")

4. Ejecutar el script

Asegúrate de que el archivo user_agents.txt esté en la misma carpeta que el script y luego ejecuta el script en Python:

python3 rotating_user_agents.py

5. Ajustar parámetros

  • URL: Cambia el valor de url en el script a la página que deseas probar.
  • Número de peticiones: Modifica la variable num_requests para ajustar la cantidad de solicitudes que deseas realizar.
  • Intervalos de tiempo: Ajusta time.sleep para establecer pausas más largas si es necesario.

6. Opciones avanzadas

Si deseas pruebas más avanzadas o simulación de rotación de IP junto con rotación de User-Agent:

  • Instala tor: Usa tor para cambiar la IP con cada petición.
  • Usa proxies: Integra una lista de proxies rotativos en el script.

Ejemplo de integración con tor:

sudo apt install tor

Añade a tu script Python:

proxies = {
"http": "socks5h://127.0.0.1:9050",
"https": "socks5h://127.0.0.1:9050",
}

response = requests.get(url, headers=headers, proxies=proxies)

7. Consideraciones legales y éticas

  • Consentimiento previo: Asegúrate de tener permiso para realizar estas pruebas.
  • Evitar abuso: Configura pausas entre solicitudes para no dañar servidores ni parecer un ataque de denegación de servicio.

Con este enfoque, puedes realizar peticiones web con agentes de usuario rotatorios y personalizar tus pruebas para diversos escenarios.