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
Herramientas/GitHubGitHub/mrash/fwknop
Autenticación y AutorizaciónHerramientas DefensivasHerramientas de Cifrado/DescifradoSeguridad de RedesCriptografíaAutenticación
GitHubmrash/fwknop

fwknop

Autorización de un solo paquete > Golpeo de puertos

Ver Repositorio
1.4k25333hace 4 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
Sitio web

fwknop - Autorización de Paquete Único

Introducción

fwknop implementa un esquema de autorización conocido como Autorización de Paquete Único (SPA, por sus siglas en inglés) para un fuerte ocultamiento de servicios. SPA requiere solo un único paquete que está cifrado, no reproducible y autenticado mediante un HMAC para comunicar el acceso deseado a un servicio que está oculto detrás de un cortafuegos en una postura de filtrado por defecto de denegar. La aplicación principal de SPA es utilizar un cortafuegos para denegar todos los intentos de conexión a servicios como SSH con el fin de dificultar la explotación de vulnerabilidades (tanto de día cero como código sin parchear). Debido a que no hay puertos abiertos, cualquier servicio oculto por SPA naturalmente no puede ser escaneado con Nmap. El proyecto fwknop es compatible con cuatro cortafuegos diferentes: iptables, firewalld, PF e ipfw en Linux, OpenBSD, FreeBSD y Mac OS X. También hay soporte para scripts personalizados para que fwknop pueda adaptarse a otras infraestructuras como ipset o nftables.

SPA es esencialmente la siguiente generación de Port Knocking (PK), pero resuelve muchas de las limitaciones mostradas por PK mientras conserva sus beneficios principales. Las limitaciones de PK incluyen una dificultad general para protegerse contra ataques de repetición, los cifrados asimétricos y esquemas HMAC generalmente no son posibles de soportar de manera confiable, y es trivialmente fácil montar un ataque DoS contra un servidor PK simplemente falsificando un paquete adicional en una secuencia PK mientras atraviesa la red (convenciendo así al servidor PK de que el cliente no conoce la secuencia adecuada). Todas estas deficiencias son resueltas por SPA. Al mismo tiempo, SPA oculta servicios detrás de una política de cortafuegos de denegar por defecto, adquiere datos SPA de forma pasiva (generalmente a través de libpcap u otros medios) e implementa operaciones criptográficas estándar para la autenticación y el cifrado/descifrado de paquetes SPA.

Los paquetes SPA generados por fwknop aprovechan HMAC para el cifrado autenticado en el modelo de cifrar-luego-autenticar. Aunque el uso de HMAC es actualmente opcional (habilitado mediante la opción de línea de comandos --use-hmac), es altamente recomendado por tres razones:

  1. Sin HMAC, no es posible una autenticación criptográficamente fuerte con fwknop a menos que se use GnuPG, pero incluso entonces se debería aplicar un HMAC.
  2. Un HMAC aplicado después del cifrado protege contra ataques de oráculo de relleno CBC, como el ataque Vaudenay y trucos relacionados (como el ataque "Lucky 13" más reciente contra SSL).
  3. El código requerido por el demonio fwknopd para verificar un HMAC es mucho más simple que el código requerido para descifrar un paquete SPA, por lo que un paquete SPA sin un HMAC adecuado ni siquiera se envía a través de las rutinas de descifrado.

La razón final anterior es por qué se debería seguir usando HMAC incluso cuando los paquetes SPA se cifran con GnuPG, debido a que los datos SPA no se envían a través de las funciones de libgpgme a menos que el HMAC se verifique primero. GnuPG y libgpgme son cuerpos de código relativamente complejos, y por lo tanto limitar la capacidad de un posible atacante para interactuar con este código a través de una operación HMAC ayuda a mantener una postura de seguridad más sólida. Generar un HMAC para comunicaciones SPA requiere una clave dedicada además de la clave de cifrado normal, y ambas pueden generarse con la opción --key-gen.

fwknop cifra los paquetes SPA ya sea con el cifrado de bloque Rijndael o mediante GnuPG y su cifrado asimétrico asociado. Si se elige el método de cifrado simétrico, como es habitual, la clave de cifrado se comparte entre el cliente y el servidor (consulte el archivo /etc/fwknop/access.conf para más detalles). La clave de cifrado real utilizada para el cifrado Rijndael se genera mediante el algoritmo estándar de derivación de claves PBKDF1, y se establece el modo CBC. Si se elige el método GnuPG, las claves de cifrado se derivan de los anillos de claves de GnuPG.

Casos de Uso

Las personas que utilizan Autorización de Paquete Único (SPA) o su primo con problemas de seguridad Port Knocking (PK) suelen acceder a SSHD ejecutándose en el mismo sistema donde está desplegado el software SPA/PK. Es decir, un cortafuegos en un host tiene una política de denegar por defecto contra todas las conexiones SSH entrantes para que SSHD no pueda ser escaneado, pero un demonio SPA reconfigura el cortafuegos para otorgar acceso temporal a un cliente SPA autenticado pasivamente:

SPA-basic-access-SSHD "Uso básico de SPA para acceder a SSHD"

fwknop soporta lo anterior, pero también va mucho más allá y hace un uso robusto de NAT (para cortafuegos iptables/firewalld). Después de todo, los cortafuegos importantes suelen ser pasarelas entre redes, en lugar de estar simplemente desplegados en hosts independientes. NAT se usa comúnmente en tales cortafuegos (al menos para comunicaciones IPv4) para proporcionar acceso a Internet a redes internas que están en el espacio de direcciones RFC 1918, y también para permitir que hosts externos accedan a servicios alojados en sistemas internos.

Debido a que fwknop se integra con NAT, SPA puede aprovecharse para acceder a servicios internos a través del cortafuegos por parte de usuarios en Internet externo. Aunque esto tiene muchas aplicaciones en redes tradicionales modernas, también permite que fwknop soporte entornos de computación en la nube como Amazon AWS:

SPA-Amazon-AWS-cloud "Uso de SPA en entornos de nube Amazon AWS"

Interfaz de Usuario

La interfaz de usuario oficial multiplataforma del cliente fwknop fwknop-gui (descarga, github) es desarrollada por Jonathan Bennett. Se soportan la mayoría de los modos SPA del lado del cliente, incluyendo solicitudes NAT, claves HMAC y Rijndael (GnuPG aún no es compatible), guardado de estrofas fwknoprc y más. Actualmente fwknop-gui funciona en Linux, Mac OS X y Windows. Aquí hay una captura de pantalla desde OS X: fwknop-gui-OS-X-screenshot "fwknop-gui en Mac OS X" De manera similar, un cliente Android actualizado también está disponible.

Tutorial

Se puede encontrar un tutorial completo sobre fwknop aquí:

http://www.cipherdyne.org/fwknop/docs/fwknop-tutorial.html

Características

La siguiente es una lista completa de características compatibles con el proyecto fwknop:

Descargar herramienta