Reconocimiento del sistema operativo
recon & enum
reconocer el sistema operativo + enumerar su versión nos ayuda a descubrir vulnerabilidades y hacer una mejor metodología. Vamos a ver algunos métodos para enumerar de forma exacta que OS utiliza el objetivo
TTL
El TTL (Time To Live o Tiempo de Vida) es un valor que determina cuántos saltos puede realizar un paquete dentro de una red antes de ser descartado por los dispositivos de enrutamiento. Este concepto también se aplica en otros entornos como el almacenamiento en caché de DNS o redes de distribución de contenido (CDN).
Al enviarse un paquete a través de Internet, existe la posibilidad de que quede atrapado en un bucle interminable entre Routers. Para evitar esto, se implementa el TTL, que actúa como una especie de temporizador o contador de saltos. Este valor numérico, que se incluye en el encabezado del paquete, va disminuyendo en uno cada vez que pasa por un enrutador. Si el TTL llega a cero, el paquete es descartado y se envía un mensaje ICMP al origen, notificando que no pudo ser entregado.
Además de su función de control, el TTL también puede ayudar a estimar cuánto tiempo ha estado en circulación un paquete o a rastrear el camino que ha seguido por la red.
Una curiosidad interesante es que diferentes sistemas operativos asignan valores predeterminados distintos al campo TTL. Por ejemplo, en sistemas Windows el valor por defecto suele ser 128, mientras que en sistemas Linux suele ser 64.
Esto nos permite, de forma orientativa, inferir el sistema operativo que está utilizando una máquina al analizar la respuesta TTL de un paquete. Si recibimos una respuesta con TTL de 128, probablemente el equipo esté ejecutando Windows; si es 64, es más probable que se trate de un sistema Linux.
Cabe aclarar que este método no es completamente fiable, ya que un administrador de red podría modificar manualmente estos valores para ocultar el sistema operativo real. Sin embargo, en ciertas circunstancias puede ser útil como técnica de reconocimiento para identificar el entorno del objetivo.
ping -c 1 ip.objetivo.por.aqui
# hacemos una traza para identificar el TTL
Da click para la Lista avanzada de TTLs
utilizamos launchpad al identificar en el reconocimiento que versión del sistema nos estamos enfrentando, no sirve de mucho para la explotación pero es para hacer un buen reconocimiento y enumeración
O simplemente pegamos en nuestro buscador versiones que hayamos encontrado en los escaneos de nmap como por ejemplo, en nuestro escaneo de nmap hemos encontrado un SSH : open ssh1:7.2p2-4ubuntu2.2
y también gracias a nmap sabemos que es un Ubuntu, por lo que buscamos :
open ssh1:7.2p2-4ubuntu2.2 launchpad

vamos al primer link

Ahora sabemos que es un Ubuntu Xenial (Uploaded to).
Con estas tecnicas ya tendriamos bien identificado el sistema.
Last updated