137,138,139 - Pentesting NetBios

tip

Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support 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.

From 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 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, el nombre se considera disponible. Alternativamente, se puede consultar directamente a un servidor de Servicio de Nombres para verificar la disponibilidad del nombre o para 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.

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

Enumerando un servicio NetBIOS, puedes obtener los nombres que est谩 utilizando el servidor y la direcci贸n MAC del servidor.

bash
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 de NetBIOS permiten la comunicaci贸n sin conexi贸n a trav茅s de UDP, soportando mensajer铆a directa o difusi贸n a todos los nombres de la red. Este servicio utiliza el puerto 138/udp.

bash
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 a trav茅s de una red. Para m谩s informaci贸n sobre los protocolos TCP e IP, consulte sus respectivas p谩ginas de TCP Wikipedia y IP Wikipedia.

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

Lee la siguiente p谩gina para aprender a enumerar este servicio:

137,138,139 - Pentesting NetBios

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}

tip

Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks