sábado, 23 de enero de 2010

FTP Bounce Attack

El comando PORT fue creado para especificar la dirección IP y el puerto del destinatario para establecer la transferencia de datos entre cliente y servidor (véase el RFC 959). Realizar este conexión malintencionada mediante este comando a una maquina arbitraria es lo que se conoce como FTP Bounce Attack.

A continuación se muestran algunos ejemplos de lo que se conseguiría hacer mediante este tipo de ataque:

1º ejemplo:

Supongamos que tenemos un firewall detrás del cual se encuentra un servidor FTP anónimo. Un intruso puede saltar este firewall en ciertas configuraciones de la red. Mediante la utilización de una técnica de escaneo de puertos, un atacante puede determinar que el servidor Web interno en este sitio está disponible en el puerto 8080, puerto que normalmente se encuentra bloqueado por el firewall.


Una vez establecida la conexión con el servidor publico FTP, el atacante inicia una conexión entre este servidor y un puerto arbitrario de una máquina, por ejemplo el puerto 8080 del servidor Web. De esta forma el atacante consigue establecer una conexión con la maquina dentro del área protegida por el firewall.


2º ejemplo:

En sitios protegidos por un firewall que realice un filtrado dinámico de paquetes el ataque puede realizarse mediante la utilización de un applet Java.

La victima de este ataque con solo solicitar una página Web, leer un mail o las noticias en un browser puede bajarse un applet Java fabricado por el atacante. De manera invisible, el ejecutable se ejecuta en la máquina del cliente dentro del área protegida por el firewall, pues este considera que puede confiar en este código que esta ejecutándose.

El applet lo que hace es enviar un comando PORT al servidor FTP del atacante, indicándole que abra una conexión al puerto telnet de la victima. El firewall con filtrado dinámico de paquetes como ve que el comando PORT fue generado por una maquina local permite la conexión que viene desde el servidor de la victima al puerto telnet, suponiendo que el cliente requiere la transferencia de un archivo. Por lo tanto, el atacante ha conseguido burlar el firewall.


Contramedidas

Control del software FTP

Una solución para evitar este tipo de ataques es asegurarse que el software del servidor FTP pueda realizar conexiones a maquinas arbitrarias. No obstante, aquellos sitios que basan su comportamiento en la compatibilidad con el RFC, se encuentran con que la aplicación de esta solución afecta a las aplicaciones que utilizan.

Correcta configuración del servidor FTP

Consiste en configurar el servidor de forma que ofrezca aplicaciones de cuenta anónima solo cuando sea absolutamente necesario y se debe tener mucho cuidado en la configuración del área de entrada.

Configuración adecuada de la red

Es importante siempre diseñar la topología de la red de forma que se limite el tráfico entre aquellos sistemas que ofrecen distintos servicios, mediante la utilización de zonas militarizadas, firewall, etc

Estricta autenticación de los usuarios

Aquellos servidores que requieren una fuerte autenticación de los usuarios que intenten generar una conexión hacia fuera del área protegida no caerían antes estos ataques, puesto que el applet sería detectado y el no sería capaz de identificarse como un usuario.


Referencias

A continuación se enumeran algunas páginas de interes que tratan sobre este tipo de ataque:

1 comentario:

  1. Puedes encontrar mas información sobre otros usos del ataque bounce attack en FTP servers en http://cursohacker.es/ftp-hacking-bounce-attack-tutorial

    ResponderEliminar