hacktricks/network-services-pentesting/137-138-139-pentesting-netbios.md

6.6 KiB

137,138,139 - Pentesting NetBios

Aprende hacking en AWS desde cero hasta experto con htARTE (HackTricks AWS Red Team Expert)!

Otras formas de apoyar a HackTricks:

Servicio de Nombres NetBios

El Servicio de Nombres NetBIOS juega un papel crucial, involucrando varios servicios como registro y resolución de nombres, distribución de datagramas y servicios de sesión, utilizando puertos específicos para cada servicio.

Desde Wikidepia:

  • Servicio de nombres para registro y resolución de nombres (puertos: 137/udp y 137/tcp).
  • Servicio de distribución de datagramas para comunicación sin conexión (puerto: 138/udp).
  • Servicio de sesión para comunicación orientada a la conexión (puerto: 139/tcp).

Servicio de Nombres

Para que un dispositivo participe en una red NetBIOS, debe tener un nombre único. Esto se logra a través de un proceso de difusión donde se envía un paquete de "Consulta de Nombre". Si no se reciben objeciones, se considera que el nombre está disponible. Alternativamente, se puede consultar directamente a un servidor de Servicio de Nombres para verificar la disponibilidad del nombre o resolver un nombre a una dirección IP. Herramientas como nmblookup, nbtscan y nmap se utilizan para enumerar servicios NetBIOS, revelando nombres de servidores y direcciones MAC.

PORT    STATE SERVICE    VERSION
137/udp open  netbios-ns Samba nmbd netbios-ns (workgroup: WORKGROUP)

Enumerar un servicio NetBIOS te permite obtener los nombres que el servidor está utilizando y la dirección MAC del servidor.

nmblookup -A <IP>
nbtscan <IP>/30
sudo nmap -sU -sV -T4 --script nbstat.nse -p137 -Pn -n <IP>

Servicio de Distribución de Datagramas

Los datagramas NetBIOS permiten la comunicación sin conexión a través de UDP, admitiendo mensajería directa o difusión a todos los nombres de red. Este servicio utiliza el puerto 138/udp.

PORT    STATE         SERVICE     VERSION
138/udp open|filtered netbios-dgm

Servicio de Sesión

Para interacciones orientadas a la conexión, el Servicio de Sesión facilita una conversación entre dos dispositivos, aprovechando conexiones TCP a través del puerto 139/tcp. Una sesión comienza con un paquete de "Solicitud de Sesión" y puede establecerse en función de la respuesta. El servicio admite mensajes más grandes, detección de errores y recuperación, con TCP manejando el control de flujo y la retransmisión de paquetes.

La transmisión de datos dentro de una sesión implica paquetes de Mensaje de Sesión, y las sesiones se terminan cerrando la conexión TCP.

Estos servicios son fundamentales para la funcionalidad de NetBIOS, permitiendo una comunicación eficiente y el intercambio de recursos en una red. Para obtener más información sobre los protocolos TCP e IP, consulte sus respectivas páginas de TCP Wikipedia e IP Wikipedia.

PORT      STATE SERVICE      VERSION
139/tcp   open  netbios-ssn  Microsoft Windows netbios-ssn

Lee la siguiente página para aprender cómo enumerar este servicio:

{% content-ref url="137-138-139-pentesting-netbios.md" %} 137-138-139-pentesting-netbios.md {% endcontent-ref %}

Comandos Automáticos de HackTricks

Protocol_Name: Netbios    #Protocol Abbreviation if there is one.
Port_Number:  137,138,139     #Comma separated if there is more than one.
Protocol_Description: Netbios         #Protocol Abbreviation Spelled out

Entry_1:
Name: Notes
Description: Notes for NetBios
Note: |
Name service for name registration and resolution (ports: 137/udp and 137/tcp).
Datagram distribution service for connectionless communication (port: 138/udp).
Session service for connection-oriented communication (port: 139/tcp).

For a device to participate in a NetBIOS network, it must have a unique name. This is achieved through a broadcast process where a "Name Query" packet is sent. If no objections are received, the name is considered available. Alternatively, a Name Service server can be queried directly to check for name availability or to resolve a name to an IP address.

https://book.hacktricks.xyz/pentesting/137-138-139-pentesting-netbios

Entry_2:
Name: Find Names
Description: Three scans to find the names of the server
Command: nmblookup -A {IP} &&&& nbtscan {IP}/30 &&&& nmap -sU -sV -T4 --script nbstat.nse -p 137 -Pn -n {IP}
Aprende hacking en AWS de cero a héroe con htARTE (Experto en Red Team de AWS de HackTricks)!

Otras formas de apoyar a HackTricks: