Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
APIHarvester — La herramienta de ataque a API de un solo disparo: encuentra la URL de la API a partir de la raíz dada y simula los ataques automatizados | Kitploit
Herramientas/GitHubGitHub/piratesshield/apiharvester
ReconocimientoEscáneres de VulnerabilidadesEscáneres de Vulnerabilidades WebEnumeración de DNS y SubdominiosExplotación de Aplicaciones WebPruebas de Seguridad de APIsRecopilación de InformaciónFuzzingPruebas de PenetraciónDetección de SecretosCrawler
32614hace 2 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Seguridad de APIs
GitHubpiratesshield/apiharvester

APIHarvester

La herramienta de ataque a API de un solo disparo: encuentra la URL de la API a partir de la raíz dada y simula los ataques automatizados

Ver Repositorio
Compartir
ChatGPT Image Jul 15, 2026, 10_14_08 AM

ApiHarvester

Un escáner de seguridad de API de caja negra de pipeline completo escrito en Python. Enumera endpoints, identifica parámetros, sondea métodos HTTP, prueba la lógica de autenticación/autorización y ejecuta simulaciones de ataque estándar del OWASP API Top 10 (BOLA, Broken Auth, BFLA, Mass Assignment, Rate Limiting, SSRF, Security Misconfiguration, etc.), además de un fuzzer de fiabilidad estilo RESTler que caza crashes/500s independientemente de cualquier categoría OWASP.

Todos los scripts principales están diseñados para ser stdlib-only (solo biblioteca estándar). Si las herramientas o bibliotecas externas no están presentes en el sistema, apiharvester recurre automáticamente a implementaciones en Python puro para garantizar la ejecución inmediata.


Estructura del Repositorio

  • apiharvester/ — El directorio principal del paquete de Python. Se ejecuta como python3 -m apiharvester.
  • scripts/check_requirements.sh — Verifica los requisitos previos de binarios + payloads.
  • scripts/install_requirements.sh — Descarga los archivos de payload de SecLists requeridos e instala opcionalmente binarios (mediante go install y pip).
  • apiharvester.py — Una distribución independiente del escáner en un solo archivo.
  • api_deep_discovery.py — Crawler dinámico que utiliza código del navegador headless Katana para el descubrimiento dinámico de endpoints SPA/XHR.
  • api_intelligence_engine.py — Agregador de pipeline y clasificador pasivo de vulnerabilidades.
  • apisec.py — Versión alternativa del escáner de seguridad en un solo archivo.
  • requirements.txt — Lista de dependencias de Python (principalmente para aceleradores opcionales basados en Python).
  • payloads/ — Archivos de wordlist y payload para reconocimiento:
    • params.txt — 25,889 candidatos de nombres de parámetros para pruebas de endpoints de API
    • directories.txt — 62,281 patrones comunes de rutas de API y nombres de directorios
    • subdomains.txt — 5,000 variantes de subdominios para descubrimiento de API
    • kiterunner/ — Archivos de esquema de rutas de Kiterunner para enumeración acelerada de endpoints

Instalación y Configuración

  1. Verificar Requisitos: Ejecute el script de solo lectura para comprobar si las herramientas/payloads principales están disponibles:

    ./scripts/check_requirements.sh
    
  2. Instalar Herramientas Opcionales y Archivos de Payload: Ejecute el script de instalación para obtener automáticamente las wordlists principales de SecLists, los esquemas de rutas de Kiterunner e instalar aceleradores de herramientas:

    ./scripts/install_requirements.sh
    
  3. Instalar Paquetes de Python:

    pip3 install -r requirements.txt
    

Uso

Ejecute el escáner directamente contra un dominio objetivo:

python3 -m apiharvester example.com \
    --auth "Bearer eyJ..." \
    --auth2 "Bearer eyJ_lowpriv..." \
    --threads 20 \
    --html report.html \
    --json findings.jsonl

Opciones de Línea de Comandos:

  • target (posicional): Dominio FQDN a escanear.
  • --auth: Token de acceso con privilegios elevados para comprobaciones autenticadas (p. ej., sesión de usuario válida).
  • --auth2: Token de acceso con privilegios bajos para pruebas de BOLA / BFLA / escalada de privilegios entre cuentas.
  • --threads: Tamaño del pool de hilos (predeterminado: 20).
  • --timeout: Tiempo de espera de la solicitud HTTP en segundos (predeterminado: 10).
  • --burst: Número de solicitudes rápidas para la verificación de rate-limiting (predeterminado: 20).
  • --json: Guardar informe en formato JSONL (hallazgos JSON delimitados por líneas).
  • --html: Guardar informe de panel HTML interactivo.
  • --output-dir: Anular la ruta del directorio de salida predeterminado (p. ej., ./scans/example.com).
  • --skip-recon: Omitir las fases de reconocimiento, usar los archivos de salida existentes de una ejecución anterior.
  • --recon-dir: Cargar el directorio de salida de reconocimiento preexistente y ejecutar solo las fases de ataque.
  • --attacks-only: Ejecutar solo las fases de ataque (implica --skip-recon).
  • --attacks: Lista de ataques separados por comas a ejecutar. Predeterminado: todos. Disponibles:
    bola,broken_auth,mass_assignment,rate_limit,bfla,business_logic,
    ssrf,misconfiguration,inventory,sspp,injection,reliability,secrets
    

Módulos de Ataque

OWASP API Top 10 (API1–API10:2023):

  • API1: BOLA/IDOR (bola) — Broken Object-Level Authorization. Prueba endpoints de ID de objeto con fuzzing de ID (0, 1, 2, 99, "admin", "test", variantes de UUID, etc.) y tokens de autenticación diferenciales.
  • API2: Broken Auth (broken_auth) — Descubrimiento de endpoints no autenticados, cracking de secreto débil de JWT, bypass alg=none, manipulación de claims, inyección de kid, además de bypasses de métodos OPTIONS/HEAD.
  • API3: Mass Assignment (mass_assignment) — Inyección de campos de escalada de privilegios en cuerpos PUT/PATCH (role, is_admin, verified, balance, etc.).
  • API4: Rate Limiting (rate_limit) — Envía 20+ solicitudes rápidas; marca endpoints que devuelven 200 en lugar de 429 Retry-After.
  • API5: BFLA (bfla) — Broken Function-Level Authorization. Prueba rutas sensibles (/admin, /roles, /impersonate, etc.) con y sin token de privilegios bajos.
  • API6: Business Logic (business_logic) — Violaciones de flujo de trabajo/máquina de estados (p. ej., actualizar un pedido después del pago).
  • API7: SSRF (ssrf) — Prueba la falsificación de solicitudes del lado del servidor a través de parámetros de URL y cuerpos de solicitud.
  • API8: Misconfiguration (misconfiguration) — CORS (activo: envía Origin no confiable), encabezados de seguridad faltantes, errores detallados, fugas de banner del servidor.
  • API9: Inventory (inventory) — Endpoints no documentados, endpoints abandonados, interfaces de administración expuestas.
  • API10: SSPP (sspp) — Unsafe Server-Side Post Processing (inyección de plantillas, inyección de XPath, etc.).

Ataques Adicionales:

  • Injection (injection) — Inyección SQL, XSS, inyección de comandos (basada en errores + ciega basada en tiempo).
  • Reliability (reliability) — Fuzzing estilo RESTler: pruebas de límites/entradas malformadas para encontrar crashes 5xx y errores de fiabilidad del servidor (independiente de las categorías OWASP).
  • Secrets (secrets) — Coincidencia de patrones para credenciales filtradas en cuerpos de respuesta: AWS Access Keys, Google API Keys, Slack Tokens, Stripe Keys, GitHub Tokens, Private Key Blocks, JWTs y asignaciones de secretos genéricas (api_key=..., password=..., etc.).

Escaneos de Ejemplo

Escaneo completo con token autenticado + de privilegios bajos (mejor para BOLA/BFLA):

python3 -m apiharvester api.example.com \
    --auth "Bearer high_priv_token_here" \
    --auth2 "Bearer low_priv_token_here" \
    --html report.html \
    --json findings.jsonl

Reconocimiento rápido únicamente (descubrir endpoints, sin ataques):

python3 -m apiharvester example.com --skip-recon --attacks ""

(O simplemente no proporcione --auth para omitir algunas fases de ataque.)

Re-ejecutar solo los ataques contra datos de reconocimiento guardados (iteración rápida):

python3 -m apiharvester example.com --recon-dir output/example.com_20260715_140233 --attacks-only

Ejecutar solo ataques específicos (p. ej., BOLA + Secrets):

python3 -m apiharvester example.com --attacks bola,secrets
Descargar herramienta