Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
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.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
nomore403 — 🚫 Herramienta avanzada para investigadores de seguridad para evadir restricciones 403/40X mediante técnicas inteligentes y manipulación adaptativa de solicitudes. Rápida. Precisa. Efectiva. | Kitploit
Herramientas/GitHubGitHub/devploit/nomore403
ReconocimientoEscáneres de VulnerabilidadesEvasión de IDS/IPSEvasión de WAFSeguridad WebPruebas de Penetración
GitHubdevploit/nomore403

nomore403

🚫 Herramienta avanzada para investigadores de seguridad para evadir restricciones 403/40X mediante técnicas inteligentes y manipulación adaptativa de solicitudes. Rápida. Precisa. Efectiva.

Ver Repositorio
1.8k21416hace 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 →
Compartir

Logotipo de NoMore403

NoMore403

GitHub stars GitHub forks Go Report Card Go version License: MIT Contributions welcome

nomore403 es una herramienta de línea de comandos para probar bypass de control de acceso HTTP e inconsistencias en analizadores alrededor de respuestas 401, 403 y relacionadas.

La herramienta está diseñada para trabajo práctico en seguridad web: bug bounty, pruebas de penetración, revisiones de seguridad y pruebas de regresión de reglas de control de acceso. Automatiza un amplio conjunto de mutaciones de solicitudes, captura una línea de base, filtra falsos positivos comunes y resalta las respuestas con mayor probabilidad de representar un bypass significativo.

Qué Hace

Dada una URL objetivo, nomore403:

  1. Envía una solicitud de línea de base para capturar la respuesta bloqueada.
  2. Opcionalmente se autocalibra contra rutas inexistentes para aprender el comportamiento de error predeterminado del objetivo.
  3. Ejecuta un conjunto de técnicas de bypass que mutan la ruta de la solicitud, método, cabeceras o formato de red.
  4. Puntúa y agrupa los resultados para reducir el ruido.
  5. Emite evidencia reproducible, incluidos comandos curl para los hallazgos interesantes.

Esta herramienta no "rompe la autenticación" por sí sola. Ayuda a encontrar diferencias entre cómo los frontends, proxies, WAFs, CDNs, enrutadores de aplicación y backends interpretan la misma solicitud.

Características

  • Comparación basada en línea de base contra la respuesta bloqueada
  • Autocalibración para reducir falsos positivos de respuestas 404 o de ruta padre predeterminadas
  • Salida puntuada con resúmenes separados para bypass probables y variaciones interesantes
  • Reproducción y repetibilidad para hallazgos de alto valor
  • Reintento y retroceso para fallos de red transitorios
  • Ejecución concurrente con progreso por técnica
  • Soporte de HTTP raw para formas de solicitud que net/http normaliza
  • Salida JSON y JSONL para pipelines y post-procesamiento
  • Entrada desde una sola URL, archivos de URL, stdin o archivos de solicitud

Instalación

Compilar desde el código fuente

root@kitploit:~
git clone https://github.com/devploit/nomore403
cd nomore403
go build

Instalar con Go

root@kitploit:~
go install github.com/devploit/nomore403@latest

Si instalas con go install, el directorio payloads/ no se instala automáticamente. Clona el repositorio y apunta la herramienta a ese directorio con -f si es necesario.

Requisitos

  • Go 1.24 o posterior para compilar desde el código fuente
  • curl disponible en PATH para técnicas que dependen de él, como:
    • http-versions
    • http-parser
    • absolute-uri

La mayoría de las técnicas funcionan sin curl.

Inicio Rápido

Escaneo básico:

root@kitploit:~
./nomore403 -u https://target.tld/admin

Usar un proxy y salida verbosa:

root@kitploit:~
./nomore403 -u https://target.tld/admin -x http://127.0.0.1:8080 -v

Ejecutar solo técnicas seleccionadas:

root@kitploit:~
./nomore403 -u https://target.tld/admin -k headers,absolute-uri,raw-desync

Leer objetivos desde stdin:

root@kitploit:~
cat urls.txt | ./nomore403

Usar un archivo de solicitud estilo Burp:

root@kitploit:~
./nomore403 --request-file request.txt

Escribir salida legible por máquina:

root@kitploit:~
./nomore403 -u https://target.tld/admin --jsonl -o findings.jsonl

Ejemplo de Salida

root@kitploit:~
target: https://target.tld/admin   method: GET   frontend: AWS ELB/ALB   payloads: payloads

calib: 404 | 1245b | ±50 | frag 703b

BASELINE
  default       403    520 bytes    https://target.tld/admin

FINDINGS
  hdr-ip     100! 200   2048 bytes   X-Original-URL: /
  abs-uri     26. 403    236 bytes   request-target: https://target.tld/admin
  http        18. 400    122 bytes   HTTP/2

no visible results: 17 techniques

━━━━━━━━━━━━━━ LIKELY BYPASS ━━━━━━━━━━━━━━━━━
[!100 HIGH] Header injection (IP) 403=>200    2048b
         why: status 403->200, len Δ1528, body changed, type changed
        item: X-Original-URL: /
        curl: curl -i -sS -k -H 'User-Agent: nomore403' -H 'X-Original-URL: /' 'https://target.tld/admin'

Cómo Leer la Salida

Salida principal de técnicas

Cada línea visible es una respuesta que difirió lo suficiente de la línea de base como para superar el filtrado.

Campos típicos:

  • alias de técnica, por ejemplo hdr-ip, abs-uri o parser
  • marcador de puntuación compacto como 18., 61+ o 100!
  • estado de respuesta final
  • tamaño de respuesta
  • ítem o payload utilizado

Transiciones en el resumen

Los resúmenes finales muestran las transiciones de línea de base a resultado:

  • 403=>200 suele merecer atención inmediata
  • 403=>302 puede ser interesante, pero aún puede resolverse en una barrera de autenticación
  • 403->400 o 403->404 suelen indicar diferencias de analizador o enrutamiento, no un bypass

Resúmenes

Al final de la ejecución, nomore403 imprime:

  • LIKELY BYPASS
    • resultados con mayor puntuación
    • incluye curl reproducible
  • INTERESTING VARIATIONS
    • diferencias significativas de analizador o enrutamiento que merecen revisión manual
  • no visible results
    • conteo de técnicas que se ejecutaron pero no produjeron salida visible después del filtrado

Modelo de Puntuación

La puntuación es heurística. Está destinada a priorizar resultados, no a probar explotación.

La herramienta generalmente recompensa:

  • transiciones a 2xx
  • transiciones a 3xx
  • cambios grandes en el tamaño del cuerpo
  • cambios en el hash del cuerpo
  • cambios en Location
  • redirecciones anómalas que no parecen resolverse en un flujo de inicio de sesión o denegado
  • diferencias que sobreviven a la reproducción

La herramienta generalmente penaliza:

  • respuestas casi idénticas
  • ruido repetido del analizador
  • resultados inestables en la reproducción
  • redirecciones con cuerpo vacío que parecen llevar de vuelta al control de acceso
  • muchos casos de 400 y 404 a menos que la respuesta también cambie sustancialmente

Interpretación recomendada:

  • HIGH: probablemente accionable; revisar primero
  • MED: candidato plausible; generalmente vale la pena una reproducción manual
  • LOW: diferencia de analizador, anomalía de enrutamiento o comportamiento de baja confianza

Autocalibración

La autocalibración está habilitada por defecto en modo no verboso.

Envía solicitudes a varias rutas inexistentes y construye una línea de base para el comportamiento de error predeterminado del objetivo. También realiza una solicitud de calibración basada en fragmentos para reducir falsos positivos causados por rutas sin fragmentos.

Usa estas banderas para controlarlo:

  • --no-calibrate
    • comparar solo con la respuesta bloqueada predeterminada
  • --strict-calibrate
    • también compara el hash del cuerpo y cabeceras clave como Location, Content-Type y Server

Técnicas

La herramienta ejecuta todas las técnicas por defecto a menos que especifiques -k.

Mutaciones de método y verbo

  • verbs
    • métodos HTTP alternativos de payloads/httpmethods
  • verbs-case
    • mayúsculas/minúsculas aleatorias de métodos HTTP
  • method-override
    • patrones de sobreescritura de método basados en consulta, cabecera y cuerpo

Mutaciones basadas en cabeceras y confianza

  • headers
    • técnica paraguas que cubre:
      • cabeceras de confianza IP
      • cabeceras simples
      • variaciones de Host
  • hop-by-hop
    • trucos de eliminación hop-by-hop usando Connection
  • header-confusion
    • cabeceras de reescritura y sobreescritura de ruta como X-Original-URL
  • host-override
    • variantes de anulación de host y forwarded-host
  • forwarded-trust
    • Forwarded, Client-IP, Cluster-Client-IP y cadenas de confianza relacionadas
  • proto-confusion
    • X-Forwarded-Proto, e indicaciones de esquema relacionadas

Mutaciones de ruta y normalización

  • endpaths
    • mutaciones de sufijo y final de ruta desde payloads/endpaths
  • midpaths
    • mutaciones de inserción de ruta y traversal desde payloads/midpaths
  • double-encoding
    • variantes de ruta codificada, incluyendo formas de doble codificación agresivas
  • unicode
    • variantes de ruta %uXXXX y UTF-8 demasiado largos
  • path-case
    • cambio de mayúsculas/minúsculas en segmentos de ruta
  • path-normalization
    • variantes de normalización de puntos y punto y coma
  • suffix-tricks
    • trucos de sufijo y extensión como .json, .css, y alternancias de formato de consulta

Mutaciones de frontend y formato de red

  • http-versions
    • compara la misma solicitud en HTTP/1.0 y HTTP/2
  • http-parser
    • envía una solicitud curl deliberadamente mínima para exponer diferencias de analizador cliente/frontend por separado de http-versions
  • absolute-uri
    • usa objetivos de solicitud en forma absoluta a través de curl --request-target
  • raw-duplicates
    • duplicar cabeceras relevantes para seguridad con HTTP raw
  • raw-authority
    • señales de autoridad y host duplicadas o en conflicto
  • raw-desync
    • formas de solicitud dirigidas a diferencias de análisis frontend/backend, incluyendo semánticas de transferencia en conflicto

Comportamiento HTTP Raw

Algunas técnicas necesitan control a nivel de red que el cliente net/http de Go no proporciona. Esas técnicas usan el motor HTTP raw.

Las técnicas raw actualmente incluyen:

  • raw-duplicates
  • raw-authority
  • raw-desync
  • algunas solicitudes de ruta unicode %uXXXX

Notas:

  • las solicitudes raw se envían automáticamente cuando es necesario
  • las técnicas raw actualmente no soportan proxies upstream
  • el comportamiento raw es útil para:
    • cabeceras duplicadas
    • objetivos de solicitud exactos
    • casos extremos de transfer-encoding y content-length

Huella digital y orden de técnicas

La herramienta puede inferir indicios de frontend como:

  • AWS ELB / ALB
  • CloudFront
  • Cloudflare
  • Nginx
  • Envoy
  • Apache
  • IIS

Estos indicios se utilizan para mejorar el orden de las técnicas y el contexto de salida.

Importante:

  • la huella digital no deshabilita técnicas por defecto
  • a menos que uses -k, la herramienta aún ejecuta el conjunto completo de técnicas predeterminadas

Reproducibilidad y Replay

Los resultados de alto valor se reproducen automáticamente en el resumen final.

La salida de reproducción ayuda a responder:

  • ¿se repitió el comportamiento?
  • ¿mantuvo el mismo estado y forma de respuesta?
  • ¿es probablemente lo suficientemente estable para investigar o reportar?

El resumen final incluye:

  • conteos de reproducción como 1/1 o 2/2 coincidieron en la reproducción
  • un comando curl reproducible para resultados interesantes

Modos de entrada

Objetivo único

root@kitploit:~
./nomore403 -u https://target.tld/admin

Archivo con URLs

root@kitploit:~
./nomore403 -u targets.txt

Stdin

root@kitploit:~
cat targets.txt | ./nomore403

Archivo de solicitud

root@kitploit:~
./nomore403 --request-file request.txt

Los archivos de solicitud son útiles al reproducir tráfico capturado en Burp u otro proxy.

Posiciones de payload personalizadas

Usa --payload-position cuando quieras inyectar payloads en marcadores explícitos en lugar de depender solo de la lógica de mutación de endpath y midpath incorporada.

Ejemplo:

root@kitploit:~
./nomore403 -u 'https://target.tld/§100§/admin/§200§' -p §

Flujos de trabajo comunes

Triage rápido

root@kitploit:~
./nomore403 -u https://target.tld/admin

Investigar con un proxy interceptador

root@kitploit:~
./nomore403 -u https://target.tld/admin -x http://127.0.0.1:8080 -v

Ejecutar solo técnicas raw y centradas en frontend

root@kitploit:~
./nomore403 -u https://target.tld/admin -k absolute-uri,raw-duplicates,raw-authority,raw-desync

Probar una IP de confianza personalizada

root@kitploit:~
./nomore403 -u https://target.tld/admin -i 10.0.0.5

Guardar JSONL para análisis posterior

root@kitploit:~
./nomore403 -u https://target.tld/admin --jsonl -o findings.jsonl

Banderas

Ejecuta ./nomore403 --help para la CLI completa y actualizada.

Banderas clave:

  • -u, --uri
    • URL objetivo, archivo de URLs o ruta de entrada
  • -k, --technique
    • lista separada por comas de técnicas a ejecutar
  • -x, --proxy
    • proxy upstream
  • -H, --header
    • agregar cabeceras personalizadas
  • -i, --bypass-ip
    • IP o nombre de host utilizado en técnicas de cabecera de confianza
  • -v, --verbose
    • mostrar todos los resultados visibles, no solo los filtrados
  • --json
    • escribir JSON estructurado
  • --jsonl
    • escribir un objeto JSON por resultado
  • --no-calibrate
    • deshabilitar autocalibración
  • --strict-calibrate
    • comparar más campos de respuesta durante el filtrado

Formatos de salida

Salida de terminal legible

El modo predeterminado está optimizado para revisión interactiva y triage.

JSON

Usa --json para un único documento estructurado.

JSON Lines

Usa --jsonl cuando quieras:

  • procesar resultados incrementalmente
  • almacenar evidencia en pipelines
  • importar hallazgos en tus propias herramientas

Archivos de payload

El directorio payloads/ contiene listas utilizadas por varias técnicas.

Los archivos actuales incluyen:

  • httpmethods
  • headers
  • ips
  • simpleheaders
  • endpaths
  • midpaths
  • useragents

Puedes personalizar estos archivos para adaptarlos a tus objetivos o flujo de trabajo.

Limitaciones

  • las técnicas HTTP raw actualmente no soportan proxies upstream
  • la puntuación es heurística y puede producir falsos positivos o falsos negativos
  • la puntuación de redirecciones actualmente usa heurísticas sobre la respuesta de redirección inmediata, no una cadena de redirección completamente seguida
  • algunas técnicas dependen del comportamiento específico del objetivo y pueden parecer ruidosas en stacks muy normalizados
  • las técnicas basadas en curl requieren curl en PATH

Seguridad y uso responsable

Usa esta herramienta solo en sistemas que estés autorizado a probar.

Los autores y colaboradores no son responsables del mal uso. Eres responsable de cumplir con la ley aplicable, las reglas del programa y la política organizacional.

Contribuciones

Las contribuciones son bienvenidas.

Áreas útiles para contribuir incluyen:

  • corrección de errores
  • mejores payloads
  • nuevas técnicas de bypass
  • mejoras en HTTP raw
  • huella digital de frontend
  • documentación y ejemplos

Antes de contribuir con una técnica, prefiere:

  • un comportamiento de análisis o límite de confianza claramente distinto
  • evidencia reproducible
  • pruebas que verifiquen la forma de la solicitud o el comportamiento de reproducción

Licencia

Este proyecto se publica bajo la Licencia MIT. Ver LICENSE.

Descargar herramienta
X-Forwarded-Port
  • ip-encoding
    • variantes de localhost y direcciones de confianza en formas decimal, entero, hexadecimal e IPv6
  • ;index.html
  • payload-position
    • inserta payloads en posiciones marcadas explícitamente en la URL
  • --retry-count
    • número de reintentos para errores transitorios
  • --retry-backoff-ms
    • base de retroceso exponencial en milisegundos
  • --host-delay
    • demora entre objetivos por lotes en el mismo host
  • --top-score-min
    • puntuación mínima para LIKELY BYPASS
  • --variation-score-min
    • puntuación mínima para INTERESTING VARIATIONS
  • --top
    • número máximo de entradas por sección de resumen, o 0 para deshabilitar resúmenes