Listado de recursos compartidos de NetBIOS con NBTScan y Nmap Script Engine

NBTScan
Iskorkasecurity
Estimado de lectura : 6 minutes

NetBIOS es un servicio que proporciona conectividad de red y a menudo se usa para unir aplicaciones de dominio y heredadas.聽Esta es una tecnolog铆a bastante antigua, pero todav铆a se usa en algunos entornos de software.聽Y dado que es un protocolo inseguro, a menudo puede ser un punto de partida para un ataque en una red.聽Un buen comienzo es escanear recursos compartidos de NetBIOS con NBTScan y Nmap Script Engine.

Para llevar a cabo esta tarea, utilizaremos聽Metasploitable 2聽, una m谩quina virtual con vulnerabilidades creadas intencionalmente en ella聽, como nuestra m谩quina de destino聽.聽Lo atacaremos con Kali Linux, el kit de distribuci贸n para hackers y pentesters.

Descripci贸n general de NetBIOS

NetBIOS significa literalmente “Sistema b谩sico de entrada / salida de red”.聽Es un servicio que permite que las computadoras se comuniquen entre s铆 a trav茅s de una red.聽Sin embargo, NetBIOS no es un protocolo de red, sino una API.聽Funciona por encima de los protocolos TCP / IP utilizando NBT, lo que le permite trabajar en redes modernas.

NetBIOS proporciona dos m茅todos de comunicaci贸n principales.聽El servicio de datagramas le permite comunicarse a trav茅s de la red sin establecer una conexi贸n, lo cual es ideal para situaciones donde la transferencia r谩pida de datos es importante, por ejemplo, al generar errores.聽El servicio de sesi贸n, por otro lado, permite que dos computadoras establezcan una conexi贸n para proporcionar una conexi贸n m谩s confiable.聽NetBIOS tambi茅n proporciona servicios de nombres que se ocupan de la resoluci贸n de nombres y el registro en la red.

La principal forma en que los hackers de NetBIOS explotan es con ataques de veneno.聽Su esencia radica en el hecho de que el atacante, que est谩 en la red, se hace pasar por otra m谩quina para controlar y redirigir el tr谩fico.聽En este punto, el pirata inform谩tico tambi茅n puede obtener credenciales de usuario hash para que posteriormente puedan ser descifradas.

Escanear con NBTScan

NBTScan es una herramienta de l铆nea de comandos utilizada para escanear redes en busca de recursos compartidos de NetBIOS e informaci贸n de nombres.聽Puede funcionar tanto en Unix como en Windows y est谩 incluido en la distribuci贸n est谩ndar de Kali Linux de forma predeterminada.

Lo primero que podemos hacer es imprimir un certificado que nos dar谩 una idea de todas las opciones para usarlo y algunos ejemplos para escanear redes.聽Simplemente escriba nbtscan en la terminal.

nbtscan
NBTscan version 1.5.1. Copyright (C) 1999-2003 Alla Bezroutchko.
This is a free software and it comes with absolutely no warranty.
You can use, distribute and modify it under terms of GNU GPL.

Usage:
nbtscan [-v] [-d] [-e] [-l] [-t timeout] [-b bandwidth] [-r] [-q] [-s separator] [-m retransmits] (-f filename)|(<scan_range>)
    -v      verbose output. Print all names received
            from each host
    -d      dump packets. Print whole packet contents.
    -e      Format output in /etc/hosts format.
    -l      Format output in lmhosts format.
            Cannot be used with -v, -s or -h options.
    -t timeout  wait timeout milliseconds for response.
            Default 1000.
    -b bandwidth    Output throttling. Slow down output
            so that it uses no more that bandwidth bps.
            Useful on slow links, so that ougoing queries
            don't get dropped.
    -r      use local port 137 for scans. Win95 boxes
            respond to this only.
            You need to be root to use this option on Unix.
    -q      Suppress banners and error messages,
    -s separator    Script-friendly output. Don't print
            column and record headers, separate fields with separator.
    -h      Print human-readable names for services.
            Can only be used with -v option.
    -m retransmits  Number of retransmits. Default 0.
    -f filename Take IP addresses to scan from file filename.
            -f - makes nbtscan take IP addresses from stdin.
    <scan_range>  what to scan. Can either be single IP
            like 192.168.1.1 or
            range of addresses in one of two forms:
            xxx.xxx.xxx.xxx/xx or xxx.xxx.xxx.xxx-xxx.
Examples:
    nbtscan -r 192.168.1.0/24
        Scans the whole C-class network.
    nbtscan 192.168.1.25-137
        Scans a range from 192.168.1.25 to 192.168.1.137
    nbtscan -v -s : 192.168.1.0/24
        Scans C-class network. Prints results in script-friendly
        format using colon as field separator.
        Produces output like that:
        192.168.0.1:NT_SERVER:00U
        192.168.0.1:MY_DOMAIN:00G
        192.168.0.1:ADMINISTRATOR:03U
        192.168.0.2:OTHER_BOX:00U
        ...
    nbtscan -f iplist
        Scans IP addresses specified in file iplist.

La opci贸n m谩s f谩cil (y principal) para ejecutar esta gran herramienta es proporcionarle un rango de direcciones IP.聽En nuestro caso, solo hay una computadora en la red, por lo que, como ejemplo, le daremos su direcci贸n IP.

nbtscan 172.16.1.102
IP address       NetBIOS Name     Server    User             MAC address
------------------------------------------------------------------------------
172.16.1.102     METASPLOITABLE   <server>  METASPLOITABLE   00:00:00:00:00:00

Aqu铆 vemos la direcci贸n IP, el nombre para mostrar de NetBIOS, el servidor (si corresponde), el usuario y la direcci贸n MAC de destino.聽Tenga en cuenta que las m谩quinas que ejecutan Samba a veces devuelven ceros como direcciones MAC en respuesta a dicha solicitud.

Podemos obtener un poco m谩s de informaci贸n si establecemos el indicador de salida detallado -v.

nbtscan 172.16.1.102 -v
Doing NBT name scan for addresses from 172.16.1.102

NetBIOS Name Table for Host 172.16.1.102:

Incomplete packet, 335 bytes long.
Name             Service          Type
----------------------------------------
METASPLOITABLE   <00>             UNIQUE
METASPLOITABLE   <03>             UNIQUE
METASPLOITABLE   <20>             UNIQUE
METASPLOITABLE   <00>             UNIQUE
METASPLOITABLE   <03>             UNIQUE
METASPLOITABLE   <20>             UNIQUE
__MSBROWSE__  <01>              GROUP
WORKGROUP        <00>              GROUP
WORKGROUP        <1d>             UNIQUE
WORKGROUP        <1e>              GROUP
WORKGROUP        <00>              GROUP
WORKGROUP        <1d>             UNIQUE
WORKGROUP        <1e>              GROUP

Adapter address: 00:00:00:00:00:00
----------------------------------------

En este caso, vemos algunos servicios y una indicaci贸n de su tipo.聽Este hash nos lleva al siguiente caso de uso, que mostrar谩 los servicios de forma legible.聽Para hacer esto, use la bandera -h junto con la bandera -v.

nbtscan 172.16.1.102 -vh

Doing NBT name scan for addresses from 172.16.1.102

NetBIOS Name Table for Host 172.16.1.102:

Incomplete packet, 335 bytes long.
Name             Service          Type
----------------------------------------
METASPLOITABLE   Workstation Service
METASPLOITABLE   Messenger Service
METASPLOITABLE   File Server Service
METASPLOITABLE   Workstation Service
METASPLOITABLE   Messenger Service
METASPLOITABLE   File Server Service
__MSBROWSE__  Master Browser
WORKGROUP        Domain Name
WORKGROUP        Master Browser
WORKGROUP        Browser Service Elections
WORKGROUP        Domain Name
WORKGROUP        Master Browser
WORKGROUP        Browser Service Elections

Adapter address: 00:00:00:00:00:00
----------------------------------------

Ahora vemos un poco m谩s de informaci贸n que nos puede ser 煤til.聽Tambi茅n podemos configurar el indicador -d para volcar (guardar) el contenido de todo el paquete.

nbtscan 172.16.1.102 -d
Doing NBT name scan for addresses from 172.16.1.102

Packet dump for Host 172.16.1.102:

Incomplete packet, 335 bytes long.
Transaction ID: 0x00a0 (160)
Flags: 0x8400 (33792)
Question count: 0x0000 (0)
Answer count: 0x0001 (1)
Name service count: 0x0000 (0)
Additional record count: 0x0000 (0)
Question name:  CKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Question type: 0x0021 (33)
Question class: 0x0001 (1)
Time to live: 0x00000000 (0)
Rdata length: 0x0119 (281)
Number of names: 0x0d (13)
Names received:
METASPLOITABLE    Service: 0x00 Flags: 0x0004
METASPLOITABLE    Service: 0x03 Flags: 0x0004
METASPLOITABLE    Service: 0x20 Flags: 0x0004
METASPLOITABLE    Service: 0x00 Flags: 0x0004
METASPLOITABLE    Service: 0x03 Flags: 0x0004
METASPLOITABLE    Service: 0x20 Flags: 0x0004
__MSBROWSE__   Service: 0x01 Flags: 0x0084
WORKGROUP         Service: 0x00 Flags: 0x0084
WORKGROUP         Service: 0x1d Flags: 0x0004
WORKGROUP         Service: 0x1e Flags: 0x0084
WORKGROUP         Service: 0x00 Flags: 0x0084
WORKGROUP         Service: 0x1d Flags: 0x0004
WORKGROUP         Service: 0x1e Flags: 0x0084

...

Este comando nos proporciona los datos por lotes que se utilizaron en esta solicitud.聽Tenga en cuenta que esta opci贸n no se puede usar con las opciones -v o -h.

Si desea escanear la lista de direcciones IP que est谩n escritas en alg煤n archivo, puede usar el indicador -f para especificar dicho archivo como entrada y leer estas direcciones IP.聽En nuestro caso, solo hay una computadora en la red, por lo que en el proceso de escaneo solo vemos una.

nbtscan -f addresses.txt

Doing NBT name scan for addresses from addresses.txt

IP address       NetBIOS Name     Server    User             MAC address
------------------------------------------------------------------------------
172.16.1.102     METASPLOITABLE   <server>  METASPLOITABLE   00:00:00:00:00:00

Por el contrario, si desea guardar los resultados de cualquier an谩lisis, solo necesita agregar el nombre del archivo en el que desea escribir estos datos al final del comando.

nbtscan 172.16.1.102 > scan.txt

Escanear con el motor de scripts Nmap

Nmap como parte del motor de secuencias de comandos de Nmap tiene una peque帽a secuencia de comandos muy conveniente, que tambi茅n podemos usar para descubrir los recursos compartidos de NetBIOS.聽Este m茅todo tiene una ligera ventaja sobre el anterior: se puede ejecutar con otros scripts NSE (Nmap Scripting Engine), lo que en 煤ltima instancia ahorra tiempo al mostrar muchas cosas diferentes en la red.

Iniciaremos Nmap de la manera habitual, y el script nbstat saldr谩 al final.聽Aqu铆 usamos la opci贸n -sV para verificar puertos, servicios en ejecuci贸n y sus versiones, as铆 como el indicador -v para resultados detallados.聽Indique el script que desea usar y estamos listos para trabajar.

nmap -sV 172.16.1.102 --script nbstat.nse -v
Starting Nmap 7.70 ( https://nmap.org ) at 2019-02-14 14:12 CST
NSE: Loaded 44 scripts for scanning.
NSE: Script Pre-scanning.
Initiating NSE at 14:12
Completed NSE at 14:12, 0.00s elapsed
Initiating NSE at 14:12
Completed NSE at 14:12, 0.00s elapsed
Initiating ARP Ping Scan at 14:12
Scanning 172.16.1.102 [1 port]
Completed ARP Ping Scan at 14:12, 0.05s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 14:12
Completed Parallel DNS resolution of 1 host. at 14:12, 13.00s elapsed
Initiating SYN Stealth Scan at 14:12
Scanning 172.16.1.102 [1000 ports]

...

Host script results:
| nbstat: NetBIOS name: METASPLOITABLE, NetBIOS user: <unknown>, NetBIOS MAC: <unknown> (unknown)
| Names:
|   METASPLOITABLE<00>   Flags: <unique><active>
|   METASPLOITABLE<03>   Flags: <unique><active>
|   METASPLOITABLE<20>   Flags: <unique><active>
|   \x01\x02__MSBROWSE__\x02<01>  Flags: <group><active>
|   WORKGROUP<00>        Flags: <group><active>
|   WORKGROUP<1d>        Flags: <unique><active>
|_  WORKGROUP<1e>        Flags: <group><active>

Nmap comienza y comienza un escaneo regular, y luego hacia el final finalmente vemos los resultados del script.聽Esto es similar a los resultados de la exploraci贸n que realizamos anteriormente, pero de hecho nunca est谩 de m谩s saber que hay diferentes formas de realizar la misma tarea.

C贸mo evitar el escaneo compartido de NetBIOS

Afortunadamente para todos los administradores, existe una soluci贸n bastante simple para proteger contra el escaneo no autorizado de los recursos compartidos de NetBIOS, a saber, un cierre simple del propio NetBIOS.聽Hay situaciones en las que deshabilitarlo puede provocar un mal funcionamiento en el sistema, por ejemplo, cuando algunas aplicaciones desactualizadas dependen completamente de 茅l, pero en la mayor铆a de los casos, en lugar de estas aplicaciones desactualizadas, ya existen soluciones m谩s avanzadas y deshabilitar NetBIOS no causar谩 da帽os.

Si debe tener NetBIOS, tenga cuidado con el uso de nombres predeterminados.聽En algunas versiones de Windows, C $ o ADMIN $ son nombres conocidos y deben evitarse siempre que sea posible.

Conclusi贸n

En este tutorial, aprendimos sobre NetBIOS y c贸mo se puede usar para atacar.聽Usando NBTScan, una herramienta simple basada en consola, escaneamos y enumeramos recursos compartidos, y luego descubrimos c贸mo usar el script Nmap para el mismo prop贸sito.聽NetBIOS puede ser una tecnolog铆a desactualizada, pero a煤n se encuentra en entornos empresariales.聽Y a menudo, despu茅s del reconocimiento, su operaci贸n puede ser un buen punto de partida para comenzar, por lo que es 煤til saber c贸mo se puede identificar.

S茅 el primero en comentar

Deja un comentario o una pregunta, gracias por visitarme.

Este sitio usa Akismet para reducir el spam. Aprende c贸mo se procesan los datos de tus comentarios.