Puerto 21: FTP

FTP (File Transfer Protocol) es un protocolo de red estándar utilizado para la transferencia de archivos entre un cliente y un servidor en una red TCP/IP. Opera sobre los puertos 20 y 21, donde el puerto 21 se utiliza para establecer la conexión de control y el puerto 20 para la transferencia de datos.

Descripción de FTP

  • Protocolo: FTP funciona sobre el protocolo TCP, utilizando los puertos 20 y 21.

  • Transferencia de Archivos: Permite la transferencia de archivos entre computadoras, lo que incluye subir y descargar archivos.

  • Modos de Operación: Puede operar en modo activo o pasivo, determinando cómo se establecen las conexiones de datos.

  • Sin Cifrado: Por defecto, FTP no cifra los datos transmitidos, incluyendo nombres de usuario y contraseñas, lo que lo hace vulnerable a la interceptación.

Relevancia en Pentesting

Inseguridad de FTP:

  • Transmisión en Texto Plano: Debido a que FTP transmite credenciales y datos sin cifrar, un atacante que intercepte el tráfico de red puede capturar esta información sensible.

  • Autenticación Débil: Muchos servidores FTP están configurados con credenciales predeterminadas o débiles, lo que facilita el acceso no autorizado.

  • Acceso Anónimo: Algunos servidores FTP permiten acceso anónimo, donde cualquier usuario puede conectarse sin necesidad de autenticación. Esto puede exponer archivos sensibles públicamente.

  • Exposición de Archivos Sensibles: Si no está configurado correctamente, FTP puede permitir el acceso a archivos críticos y confidenciales.

Ejemplo de Escaneo de FTP con Nmap

Para identificar servidores FTP que pueden estar activos y verificar sus configuraciones, se puede utilizar Nmap. El siguiente comando escanea los puertos 21 y 20 (puertos predeterminados de FTP) y ejecuta scripts NSE para obtener más información sobre el servicio.

Comando Nmap

Explicación del Comando

  • nmap: Ejecuta el comando Nmap.

  • -p 21,20: Especifica que Nmap debe escanear los puertos 21 y 20, los puertos predeterminados para FTP.

  • --script ftp-anon,ftp-bounce,ftp-syst,ftp-brute: Utiliza scripts NSE para detectar configuraciones y vulnerabilidades en el servicio FTP.

    • ftp-anon: Verifica si el servidor FTP permite acceso anónimo.

    • ftp-bounce: Prueba si el servidor es vulnerable a ataques de rebote FTP.

    • ftp-syst: Recupera información del sistema desde el servidor FTP.

    • ftp-brute: Realiza un ataque de fuerza bruta para encontrar credenciales válidas.

  • target-ip-range: Especifica el rango de direcciones IP que se deben escanear.

Ejemplo de Salida de Nmap

Interpretación de la Salida

  • Host is up: Indica que el sistema objetivo está en línea y responde.

  • 20/tcp open ftp-data: El puerto 20 está abierto y se utiliza para la transferencia de datos FTP.

  • 21/tcp open ftp: El puerto 21 está abierto y se utiliza para la conexión de control FTP.

  • ftp-anon: Indica que el acceso anónimo está permitido, lo que puede permitir a cualquier usuario conectarse sin autenticación.

  • ftp-syst: Proporciona información sobre el sistema del servidor FTP, incluyendo el tipo de servidor y configuraciones.

  • ftp-bounce: Señala que el servidor es vulnerable a ataques de rebote FTP, lo que puede permitir a un atacante utilizar el servidor para escanear otros sistemas.

  • ftp-brute: Intenta encontrar credenciales válidas mediante un ataque de fuerza bruta; en este caso, no se encontraron credenciales válidas.

Última actualización

¿Te fue útil?