Un error de implementación del cortafuegos FireWall-1, de la empresa
Check Point, permite que una máquina con servidor FTP, protegida tras
este cortafuegos, sea vulnerable a todo tipo de accesos.
FireWall-1 es lo que se denomina un «stateful packet firewall»
(cortafuegos de paquetes, con estado). Este tipo de cortafuegos abren y
cierran ventanas de comunicación observando el tráfico en tiempo real,
de forma dinámica.
Dadas las complejidades del protocolo FTP, un servidor FTP protegido
tras un cortafuegos FW-1 aceptará comandos «PASV» por parte de sus
usuarios, para permitir que estos atraviesen su propio cortafuegos, de
existir. El comando «PASV» tiene como respuesta que el servidor FTP
abra un puerto local libre y acepte conexiones del cliente en él. Ya
que existe al menos un cortafuegos intermedio que puede bloquear esa
conexión a un puerto «arbitrario», es necesario que los cortafuegos que
lo permitan «rastreen» la comunicación y admitan conexiones al puerto
especificado por el servidor FTP.
Hasta aquí todo correcto.
El problema con FW-1 es la forma que tiene de detectar la apertura de
puertos en el servidor FTP que protege: sencillamente busca la cadena
«227 » al principio de cada paquete que envía el servidor FTP, ya que
«227 » es la respuesta al comando «PASV». Lamentablemente, existen
circunstancias en las que se puede encontrar un «227 » al principio de
un paquete; por ejemplo forzando la fragmentación de una respuesta del
servidor FTP empleando técnicas de modulación de MTU (Maximun Transfer
Unit – Unidad Máxima de Transferencia) y MSS (Maximum Segment Size –
Tamaño Máximo de Segmento).
A efectos prácticos, ello supone que un atacante con las herramientas
adecuadas (que no dudamos que estén disponibles para la comunidad
UnderGround de forma inminente) puede acceder a casi cualquier puerto
de un servidor FTP protegido con FW-1.
El problema afecta tanto a la versión 3.0 como a la versión 4.0, aunque
en éste último caso las posibilidades para el ataque están más
constreñidas. En el caso de la versión 3.0, un servidor FTP tras FW-1
está absolutamente desprotegido, a todos los efectos.
Check Point ha publicado un «parche» para la última versión de su
cortafuegos. El parche, no obstante, parece no cubrir todas las
ramificaciones del ataque original, por lo que los usuarios siguen
siendo vulnerables. El problema para Check Point se complica aún más
por el hecho de que algunos de los servidores FTP más empleados no
cumplen el estándar FTP en todos sus términos.
Más Información:
Checkpoint FireWall-1 FTP Server Vulnerability
Check Point Software
Passive FTP Vulnerability
File Transfer Protocol
FTP Security Extensions
Internationalization of the File Transfer Protocol
jcea@hispasec.com
Deja una respuesta