23 ene. 2014

Port Knocking con un sólo paquete cifrado (SPA)

Tradicionalmente hablamos de port knocking o golpeo de puertos como un mecanismo para abrir puertos mediante una secuencia de conexiones preestablecida a otros cerrados. Por ejemplo, para abrir el puerto TCP 22 de SSH tendremos que intentar conectarnos primero al 7000, luego al 8000 y finalmente al 9000. Esto lo hemos visto recientemente con Knockd para securizar openssh en modo paranoico y hace tiempo en nuestra pequeña Raspberry Pi.

Pero "aporrear" varias veces la puerta para entrar es muy escandaloso y poco caballeroso ¿verdad?. Existe una forma más fina y elegante mediante Single Packet Authorization (en adelante SPA), una variante de port knocking con la cual sólo será necesario un sólo 'knock' mediante el envío de un único paquete cifrado.

Para ello utilizaremos fwknop (FireWall KNock OPerator), la herramienta de facto que implementa este esquema de autenticación y que por tanto nos permitirá, con un sólo paquete, abrir un servicio oculto detrás de un firewall que por defecto deniega su acceso (INPUT a DROP).
Básicamente por defecto el cliente mandará al puerto UDP 62201 un paquete cifrado con Rjindael (simétrico) o GnuPG (asimétrico), no reproducible y autenticado por medio de HMAC. Mientras, el servidor fwknopd estará esnifando el tráfico de forma pasiva mediante libpcap y, si el paquete es válido, ejecutará el iptables, PF o ipfw de turno para permitir el acceso al puerto durante el tiempo especificado.

Contenido completo en fuente original HackPlayers

0 comentarios:

Publicar un comentario

Gracias por dejar un comentario en Segu-Info
Si vas a dejar una consulta, procura tener habilitado tu perfil en Blogger o deja una forma de contacto.

Gracias por comentar!