Escaneo de Puertos a un Servidor Web

  • Posted on: 27 August 2018
  • By: ReYDeS

Es escaneo de puertos es simplemente el proceso de identificar cuales puertos están abiertos sobre la computadora objetivo. Además, encontrar cuales servicios están ejecutándose en estos puertos. Los puertos en una computadora son como cualquier abertura la cual permite entrar dentro de una casa, puede ser la puerta principal, la puerta secundaria, o la puerta del estacionamiento. Continuando con la analogía de la casa, los servicios son el tráfico utilizado por un punto de entrada dentro de una casa. Por ejemplo, un vendedor utilizará la puerta principal, los propietarios utilizarán la puerta del estacionamiento, y los amigos utilizarán la puerta secundaria. Así como un vendedor utiliza la puerta principal, también los servicios utilizan ciertos puertos en una computadora. Es un estándar el tráfico HTTP utilice el puerto TCP 80, y el tráfico HTTPS utilice el puerto TCP 443. Entonces si se encuentran los puertos TCP 80 y TCP 443 abiertos, se puede estar casi seguro de los servicios HTTP y HTTPS están ejecutándose en la máquina, y esta máquina es probablemente un servidor web. El objetivo al escanear puertos es responder a las siguiente tres preguntas relacionadas con el servidor web.

  • ¿Cuales son los puertos abiertos?
  • ¿Cuales servicios están ejecutándose en estos puertos?
  • ¿Cuales versiones de estos servicios están ejecutando?

Si se pueden obtener respuestas precisas a estas pregunta, se tendrá un sólido fundamento para el ataque.

Existen muchos tipos de escaneo a ser realizados con Nmap, y adicionalmente existen diversas opciones y configuraciones. Conociendo la dirección IP del servidor web, se puede realizar un escaneo para recolectar información sobre los puertos, servicios, versiones y tipo de sistema operativo del servidor.

Para los dos escaneos realizados se utilizan las siguientes opciones de Nmap. “-n” para no realizar una resolución al servidor de nombres por la dirección IP. “-p-” para escanear los 65,535 puertos TCP. “-sV” para realizar un escaneo de versiones, y conocer las versiones específicas de los servicios descubiertos en ejecución. Y “-O” realiza un escaneo para conocer cual sistema operativo, incluyendo tipo y versión ejecuta el servidor.

# nmap -n -p- -sV -O 192.168. 0.66

Una de las funcionalidades útiles de Nmap es el tratar de obtener la huella del sistema operativo. Nmap envía una serie de paquetes hacia el host remoto, y lo compara las respuestas con una base de datos propia de huellas.

Los resultados del primer escaneo indican lo siguiente:

Existe un servidor Apache httpd 2.2.14 ((Ubuntu) ejecutándose en el puerto TCP 80
Existe un servidor Apache httpd 2.2.14 ((Ubuntu) ejecutándose en el puerto TCP 443
Existe un servidor Apache Tomcat/Coyote JSP engine 1.1 ejecutándose en el puerto TCP 8080
Existe un servidor Jetty 6.1.25 ejecutándose en el puerto TCP 8081

Se procede a realizar un segundo escaneo:

# nmap -n -p- -sV -O 192.168. 0.70

Los resultados del segundo escaneo indican lo siguiente:

Existe un servidor Microsoft IIS httpd 7.5 ejecutándose en el puerto TCP 80
Existe un servidor de base de datos MySQL 5.5.20-log ejecutándose en el puerto TCP 3306
Existe un servidor Oracle Glassfish Application Server ejecutándose en el puerto 4848
Existe un servidor Apache Tomcat/Coyote JSP engine 1.1 ejecutándose en el puerto TCP 8022
Existe un servidor de base de datos PostgreSQL DB ejecutándose en el puerto 8028
Existe un servidor Apache Tomcat/Coyote JSP engine 1.1 ejecutándose en el puerto 8282
Existe un servidor Jetty winstone-2.8 ejecutándose en el puerto 8484
Existe un servidor Apache httpd 2.2.21 ejecutándose en el puerto 8585
Existe un servidor Elasticsearch REST API 1.1.1 ejecutándose en el puerto 9200

El conocer los servicios y versiones exactas son una pieza de información excelente para las siguientes fases de escaneo de vulnerabilidades y explotación.

También existen anotaciones adicionales sobre la tipo y versión del sistema operativo, para el primer escaneo, el sistema operativo del servidor es un Linux 2.6.X. Para el segundo escaneo, el sistema operativo del servidor es Microsoft Windows. Adicionalmente es factible obtener, la versión del kernel, detalles sobre la construcción del sistema operativo y número de saltos.

Fuentes:

https://nmap.org/

Sobre el Autor


Alonso Eduardo Caballero Quezada - ReYDeS
Instructor y Consultor Independiente en Ciberseguridad
Correo Electrónico: ReYDeS@gmail.com
Twitter: https://twitter.com/Alonso_ReYDeS
LinkedIn: https://pe.linkedin.com/in/alonsocaballeroquezada/
Facebook: https://www.facebook.com/alonsoreydes
Youtube: https://www.youtube.com/c/AlonsoCaballero


Suscribete