Mi Blog

No te olvides seguirme en Facebook.

Tan solo tienes que hacer click en Me Gusta

 

 

x

⋆ Por qué el protocolo FTP no es seguro

⋆ Por qué el protocolo FTP no es seguro

(Tiempo estimado: 6 - 11 minutos)

Cada vez es mas importante dejar atrás los protocolos no seguros de Internet y comenzar a utilizar los protocolos seguros que cifren nuestras conexiones y nuestros datos de acceso a los sistemas. El protocolo FTP, lleva muchas décadas entre nosotros y aunque se sigue utilizando en sistemas donde la privacidad no importa, si que se recomienda en sistemas donde los datos son sensibles y donde queremos proteger los datos de acceso de los usuarios.

Seguid leyendo y os enseñaré cómo podéis obtener el usuario y la contraseña de los usuarios FTPs que viajan por vuestra red...

 

 

¿QUÉ ES FTP?

El Protocolo de transferencia de archivos (en inglés File Transfer Protocol o FTP) es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP (Transmission Control Protocol), basado en la arquitectura cliente-servidor. Desde un equipo cliente se puede conectar a un servidor para descargar archivos desde él o para enviarle archivos, independientemente del sistema operativo utilizado en cada equipo.

El servicio FTP es ofrecido por la capa de aplicación del modelo de capas de red TCP/IP al usuario, utilizando normalmente el puerto de red 20 y el 21. Un problema básico de FTP es que está pensado para ofrecer la máxima velocidad en la conexión, pero no la máxima seguridad, ya que todo el intercambio de información, desde el login y password del usuario en el servidor hasta la transferencia de cualquier archivo, se realiza en texto plano sin ningún tipo de cifrado, con lo que un posible atacante puede capturar este tráfico, acceder al servidor y/o apropiarse de los archivos transferidos.

 

 

Con FTP, las credenciales viajan en texto plano

 

 

1.- ELEMENTOS NECESARIOS PARA ESTE TUTORIAL

  • Un equipo con Wireshark (En este tutorial Windows 10)
  • Otro PC (En este tutorial GNU/Linux Debian, pero vale cualquier otro)
  • Conexión de ambos equipos en la misma red

 

 

2.- ESQUEMA DE RED

Para seguir este tutorial, es necesario tener montada una red similar a la que se ve en la siguiente imagen. Todas las conexiones web deberán pasar por nuestro equipo Mikrotik para poder realizar el filtrado de las páginas webs. Básicamente los PCs clientes deben salir a través de un equipo Mikrotik o cualquier otro equipo corriendo RouterOS y hacer NAT de las conexiones. Seguid el siguiente tutorial si necesitáis realizar una configuración desde cero: Cómo compartir Internet con Mikrotik y RouterOS:

FTP no es seguroEsquema de Red

 

 

 

 

3.- DESCARGA E INSTALACIÓN DE WIRESHARK

Lo primero que tenemos que hacer es descargar Wireshark en el equipo donde queremos sniffar el tráfico de la red. En este tutorial, instalaremos Wireshark en un Windows 10 64bits. Para ello, abriremos la página Web Oficial de Wireshark y en Downloads/Descargas seleccionaremos nuestra plataforma https://www.wireshark.org/#download:

FTP no es seguroDescarga de Wireshark

 

 

Una vez descargado el instalador, haremos doble Click en el fichero para comenzar la instalación:

FTP no es seguroBienvenid@ a Wireshark

 

 

El siguiente paso será aceptar la licencia del programa:

FTP no es seguroLicencia Wireshark

 

 

En el listado de componentes, seleccionaremos todos ellos y haremos click en "Next":

FTP no es seguroComponentes de Wireshark

 

 

Si queremos añadir accesos directos al menú de inicio, escritorio etc... seleccionaremos los que queramos en a siguiente pantalla:

FTP no es seguroAccesos directos en Wireshark

 

 

Seleccionaremos el directorio de instalación. Lo normal es dejarlo por defecto pero se pude cambiar si es necesario:

FTP no es seguroDirectorio de instalación

 

 

Instalaremos Npcap ya que es necesario para Wireshark:

FTP no es seguroInstall Npcap

 

 

Si queremos capturar trafico a través de una interfaz de red con adaptador USB, marcaremos la casilla siguiente. En caso contrario, la dejaremos desmarcada y haremos click en "Install":

FTP no es seguroInstall USBPcap

 

 

Una vez finalizados los pasos anteriores, comenzará la instalación de Wireshark:

FTP no es seguroInstalando Wireshark

 

 

Instalando Npcap, haremos click en "I Agree":

FTP no es seguroInstalar Npcap

 

 

Marcaremos las casillas que queramos instalar. Por defecto no marcaremos ninguna y continuaremos la instalación:

FTP no es seguroInstalando Npcap

 

 

Una vez terminada la instalación de Npcap y Wireshark veremos un mensaje de Instalación Completa:

FTP no es seguroInstalación completa

 

 

Ahora es momento de reiniciar el equipo. No es obligatorio pero si se recomienda:

FTP no es seguroReiniciar PC

 

 

4.- SNIFFAR TRÁFICO DE RED

Ahora necesitamos abrir Wireshark e ir al menú de "Capture->Options":

FTP no es seguroOpciones Wireshark

 

 

Seleccionaremos la interfaz de red por la que queremos sniffar el tráfico. En este ejemplo, al estar conectado por Wi-Fi a la red, selecionaremos y activaremos el modo Promiscuo solo en la interfaz Wi-Fi:

FTP no es seguroActivar modo promiscuo

 

 

El protocolo FTP envía los datos de conexión a través de TCP y utilizando el puerto 21. Para evitar que nos salga todo el tráfico de la red, añadiremos un filtro "tcp.port == 21" y haremos click en el icono azul para comenzar a capturar tráfico:

FTP no es seguroFiltro Wireshark

 

 

Ahora, desde el otro equipo de la red, abriremos un cliente de FTP y probaremos a conectar a cualquier servidor de Internet. En este ejemplo, se ve un intento de acceso a un servidor llamado ftp.ctv.es, aunque la conexión da error es suficiente para capturar el usuario y contraseña:

raul@debian:~$ ftp ftp.ctv.es
Connected to web.comtenidos.com.
220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 1 of 50 allowed.
220-Local time is now 19:38. Server port: 21.
220-This is a private system - No anonymous login
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 15 minutes of inactivity.
Name (ftp.ctv.es:raul): Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.
331 User Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. OK. Password required
Password:
530 Login authentication failed
Login failed.

 

 

En la siguiente imagen, se puede ver perfectamente como capturamos satisfactoriamente el usuario y contraseña del equipo remoto:

FTP no es seguroTiempo real Wireshark

 

 

Si queremos ver toda la trama TCP de la conexión, iremos a una parte de la trama, por ejemplo, donde se ve el nombre de usuario, botón derecho "Follow->TCP Stream":

FTP no es seguroSeguir trama TCP

 

 

En la siguiente imagen se puede ver toda la trama TCP con la conexión FTP del usuario:

FTP no es seguroTrama TCP

 

 

5.- ¿CÓMO PODEMOS EVITAR QUE VEAN NUESTRO USUARIO Y CONTRASEÑA ?

La solución es fácil, tan solo tenemos que usan la "S" ( FTP + SSL/TLS) ó mejor aún SFTP (FTP sobre SSH). La mayoría de los clientes gráficos ya tienen estas opciones disponibles.

 

 

ENJOY!


Raúl Prieto Fernández

Sitio Web: raulprietofernandez.net

Si quieres ir rápido, ve solo. Si quieres llegar lejos, ve acompañado.

Escribir un comentario

Código de seguridad
Refescar