🔓 Desactiva NetBIOS en Windows y cierra 3 puertos peligrosos
hace 4 meses

NetBIOS en Windows: 5 ataques reales y cómo bloquearlo
NetBIOS es uno de esos protocolos de red que llevan décadas activos en Windows sin que la mayoría de usuarios sepan que existen, y mucho menos que pueden representar una puerta de entrada para los atacantes.
En este núcleo editorial de ciberseguridad de la web documentamos cómo este protocolo heredado, activo por defecto en Windows 10 y Windows 11, es uno de los primeros vectores que un auditor de seguridad explota en redes corporativas mal protegidas. Profundiza en cada medida desde el hub técnico de hardening de Windows: guías paso a paso para blindar el sistema en 2026.
SetTcpipNetbios(2)), deshabilitar también LLMNR y bloquear los tres puertos en el firewall de Windows.💡 Resumen rápido
🔐 NetBIOS: qué es, por qué es peligroso y cómo deshabilitarlo en Windows
- ✅ Puertos que usa: UDP 137, UDP 138 y TCP 139 y cómo bloquearlos
- ✅ 5 tipos de ataques: enumeración, suplantación, MitM, LLMNR poisoning y fuerza bruta
- ✅ Cómo deshabilitarlo: método gráfico y PowerShell en todos los adaptadores
- ✅ Script con 3 tareas programadas que verifican y reaplican el hardening automáticamente
- ✅ Comandos para comprobar que el hardening está activo
📅 2026 · 🕐 8 minutos de lectura
📌 ¿Qué es NetBIOS?
NetBIOS (Network Basic Input/Output System) es un protocolo heredado que permite a los dispositivos de una red local identificarse y compartir recursos. Sus características clave en Windows:
- Nombre técnico moderno: NetBT (NetBIOS sobre TCP/IP), configurable mediante
TcpipNetbiosOptions - Estado por defecto: activo en Windows 10 y Windows 11 pese a estar obsoleto
- Puertos que usa: UDP 137 (resolución de nombres), UDP 138 (datagramas), TCP 139 (sesiones y archivos)
- Cuándo es necesario: solo si hay dispositivos legacy (Windows XP, impresoras antiguas, NAS sin SMB2)
- Acción recomendada: deshabilitar (
TcpipNetbiosOptions = 2) en todos los equipos sin dispositivos legacy
NetBIOS es un sistema que permite a los dispositivos de una red local identificarse y compartir recursos. La implementación moderna se conoce como NetBT (NetBIOS sobre TCP/IP), configurable mediante el valor TcpipNetbiosOptions de cada adaptador. Sigue activo por defecto en Windows 10 y 11 pese a estar obsoleto desde la adopción de DNS y SMB2/3.
| Valor | Estado | Significado | Recomendado |
|---|---|---|---|
| 0 | Default | Hereda config DHCP | No para redes domésticas |
| 1 | Enabled | NetBT activo en UDP 137/138 y TCP 139 | Solo si hay dispositivos legacy |
| 2 | Disabled | NetBT deshabilitado | ✅ Hardening recomendado |
Tres métodos para verificar el estado de NetBIOS en Windows:
- Símbolo del sistema: ejecuta
nbtstat -n— si devuelve nombres de equipo, NetBIOS está activo - PowerShell:
Get-WmiObject Win32_NetworkAdapterConfiguration | Where-Object { $_.IPEnabled } | Select-Object Description, TcpipNetbiosOptions— valor 1 = activo, valor 2 = deshabilitado - Interfaz gráfica: Panel de control → Centro de redes → Propiedades del adaptador → IPv4 → Propiedades → Opciones avanzadas → pestaña WINS
⚙️ ¿Cómo funciona NetBIOS? Puertos y servicios
| Servicio | Puerto | Función | Riesgo si expuesto |
|---|---|---|---|
| Name Service (NBNS) | UDP 137 | Resolución de nombres de equipo | 🔴 Enumeración + LLMNR poisoning |
| Datagram Service | UDP 138 | Comunicación sin conexión | 🟠 Captura de tráfico |
| Session Service | TCP 139 | Transferencia de archivos e impresión | 🔴 Fuerza bruta SMB + MitM |
🎯 5 tipos de ataques que explotan NetBIOS
Los 5 ataques reales que explotan NetBIOS ordenados por impacto:
- LLMNR/NBT-NS Poisoning (crítico): Responder intercepta consultas de nombres fallidas y captura hashes NTLMv2 — el ataque más explotado en pentests de red interna
- Man-in-the-Middle (crítico): Ettercap o mitm6 interceptan el tráfico entre equipos y capturan credenciales en claro
- Suplantación de identidad (crítico): Responder o Inveigh responden a consultas NBNS haciéndose pasar por servidores legítimos
- Enumeración de red (alto): nbtscan o enum4linux mapean todos los equipos, usuarios y recursos compartidos de la red
- Fuerza bruta sobre SMB (alto): CrackMapExec o Hydra prueban credenciales contra el puerto TCP 139 / 445
| Ataque | Herramienta | MITRE ATT&CK | Impacto |
|---|---|---|---|
| Enumeración de red | nbtscan, enum4linux | T1018 / T1046 | 🔴 Alto |
| Suplantación de identidad | Responder, Inveigh | T1557.001 | 🔴 Crítico |
| Man-in-the-Middle | Ettercap, mitm6 | T1557 | 🔴 Crítico |
| LLMNR/NBT-NS Poisoning | Responder | T1557.001 | 🔴 Crítico |
| Fuerza bruta sobre SMB | CrackMapExec, Hydra | T1110 / T1021.002 | 🔴 Alto |
🔐 Cómo deshabilitar NetBIOS en Windows
Dos métodos para deshabilitar NetBIOS en Windows:
- Método gráfico: Panel de control → Centro de redes → Propiedades del adaptador → IPv4 → Propiedades → Opciones avanzadas → pestaña WINS → "Deshabilitar NetBIOS sobre TCP/IP" → Aceptar
- PowerShell (todos los adaptadores a la vez):
Get-WmiObject Win32_NetworkAdapterConfiguration | Where-Object { $_.IPEnabled } | ForEach-Object { $_.SetTcpipNetbios(2) }
Después de deshabilitar, bloquea también los puertos UDP 137, UDP 138 y TCP 139 en el firewall de Windows y deshabilita LLMNR para cerrar completamente este vector.
Método 1: Interfaz gráfica
- Panel de control → Centro de redes → Propiedades del adaptador.
- IPv4 → Propiedades → Opciones avanzadas → pestaña WINS.
- Selecciona "Deshabilitar NetBIOS sobre TCP/IP" → Aceptar.
Método 2: PowerShell (todos los adaptadores)
# Deshabilitar NetBIOS en todos los adaptadores activos
$adaptadores = Get-WmiObject Win32_NetworkAdapterConfiguration |
Where-Object { $_.IPEnabled -eq $true }
foreach ($adaptador in $adaptadores) {
$adaptador.SetTcpipNetbios(2) | Out-Null
Write-Host "[OK] NetBIOS deshabilitado en: $($adaptador.Description)" -ForegroundColor Green
}
# Verificar resultado (debe mostrar TcpipNetbiosOptions = 2)
Get-WmiObject Win32_NetworkAdapterConfiguration |
Where-Object { $_.IPEnabled } |
Select-Object Description, TcpipNetbiosOptionsEsta metodología de hardening por script con verificación automática es la misma que aplicamos en la guía técnica del archivo HOSTS Windows con script de protección y 7 tareas programadas para mantener el sistema blindado de forma permanente frente a modificaciones maliciosas.
🛠️ Script completo: Deshabilitar, bloquear y automatizar el hardening
El script de hardening NetBIOS ejecuta estas acciones en un solo paso:
- Deshabilita NetBIOS en todos los adaptadores de red activos (
SetTcpipNetbios(2)) - Deshabilita LLMNR (EnableMulticast = 0) para cerrar el vector de LLMNR poisoning
- Bloquea en el firewall los puertos UDP 137, UDP 138 y TCP 139
- Crea 3 tareas programadas que verifican y reaplican el hardening en cada arranque, logon y cada 24 horas
- Genera log en
C:\Logs\netbios-hardening.logcon cada verificación
El script es idempotente y reversible. Instálalo con un solo comando desde PowerShell como administrador.
C:\Logs\netbios-hardening.log con cada ejecución. Requiere PowerShell como administrador.📥 Cómo instalar el script — un solo comando
Abre PowerShell como administrador y pega este comando. El script se descarga, instala y ejecuta automáticamente:
⚙️ Pega este comando en PowerShell como administrador:
👉 Pulsa Windows → escribe PowerShell → clic derecho → Ejecutar como administrador
Invoke-WebRequest -Uri "https://seguridadenmipc.com/wp-content/uploads/2026/06/Deshabilitar-Protocolo-1.txt" -OutFile "$HOME\netbios.ps1" -UseBasicParsing; Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass -Force; & "$HOME\netbios.ps1"
↩️ Script de reversión
# ============================================================
# Revertir hardening NetBIOS
# ============================================================
# 1. Eliminar las 3 tareas programadas
$carpetaTareas = "\SeguridadEnMiPC\NetBIOS-Hardening"
foreach ($t in @("NetBIOS-Verificacion-Diaria","NetBIOS-Reaplicar-Hardening","NetBIOS-Refuerzo-Arranque")) {
if (Get-ScheduledTask -TaskName $t -TaskPath $carpetaTareas -ErrorAction SilentlyContinue) {
Unregister-ScheduledTask -TaskName $t -TaskPath $carpetaTareas -Confirm:$false
Write-Host "[OK] Tarea $t eliminada." -ForegroundColor Green
}
}
# 2. Reactivar NetBIOS
Get-WmiObject Win32_NetworkAdapterConfiguration | Where-Object { $_.IPEnabled } | ForEach-Object {
$_.SetTcpipNetbios(0) | Out-Null
Write-Host "[OK] NetBIOS restaurado en: $($_.Description)" -ForegroundColor Green
}
# 3. Reactivar LLMNR
$regPath = "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient"
if (Test-Path $regPath) {
Remove-ItemProperty -Path $regPath -Name "EnableMulticast" -Force -ErrorAction SilentlyContinue
Write-Host "[OK] LLMNR restaurado." -ForegroundColor Green
}
# 4. Eliminar reglas de firewall
foreach ($r in @("BLOQUEO NetBIOS UDP 137","BLOQUEO NetBIOS UDP 138","BLOQUEO NetBIOS TCP 139")) {
Remove-NetFirewallRule -DisplayName $r -ErrorAction SilentlyContinue
Write-Host "[OK] Regla eliminada: $r" -ForegroundColor Green
}
# 5. Eliminar scripts auxiliares
$scriptsDir = "C:\ProgramData\SeguridadEnMiPC\NetBIOS"
if (Test-Path $scriptsDir) {
Remove-Item -Path $scriptsDir -Recurse -Force -ErrorAction SilentlyContinue
Write-Host "[OK] Scripts auxiliares eliminados." -ForegroundColor Green
}
Write-Host ""
Write-Host "[OK] Hardening revertido. Reinicia el equipo." -ForegroundColor Green✅ Checklist post-instalación
Verifica estos 7 puntos para confirmar que el hardening está activo:
- ☑ 3 tareas en estado Ready en taskschd.msc → SeguridadEnMiPC → NetBIOS-Hardening
- ☑ TcpipNetbiosOptions = 2 en todos los adaptadores
- ☑ EnableMulticast = 0 (LLMNR deshabilitado)
- ☑ 3 reglas de firewall activas con Action = Block para UDP 137, UDP 138 y TCP 139
- ☑ nbtstat -n devuelve "No names in cache"
- ☑ Log en C:\Logs\netbios-hardening.log sin errores
- ☑ Navegación y DNS funcionando con normalidad
✔ 7/7 = hardening completo · ✘ menos de 5 = revisar instalación del script
🆚 NetBIOS activo vs NetBIOS deshabilitado
| Aspecto | NetBIOS activo (por defecto) | NetBIOS deshabilitado (hardening) |
|---|---|---|
| Enumeración de red | 🔴 Cualquier equipo de la red puede mapear todos los equipos | 🟢 Sin respuesta a consultas NBNS |
| LLMNR/NBT-NS Poisoning | 🔴 Hashes NTLMv2 capturables con Responder | 🟢 Sin vectores de respuesta fallida |
| Man-in-the-Middle en red local | 🔴 Vulnerable a Ettercap, mitm6 | 🟢 Sin tráfico NetBIOS interceptable |
| Fuerza bruta SMB vía TCP 139 | 🔴 Puerto abierto y explotable | 🟢 Puerto bloqueado en firewall |
| Compatibilidad con dispositivos modernos | 🟢 Máxima (incluyendo legacy) | 🟡 Sin soporte a Windows XP/NAS legacy |
| Impacto en navegación y DNS | 🟢 Ninguno | 🟢 Ninguno (DNS moderno no depende de NetBIOS) |
❓ Preguntas frecuentes sobre NetBIOS en Windows
¿Es peligroso tener NetBIOS activo en casa?
👉 En redes domésticas el riesgo es menor que en redes corporativas, pero sigue existiendo: cualquier equipo conectado a la misma red WiFi puede realizar enumeración y ataques LLMNR poisoning. Si no tienes dispositivos legacy que lo requieran, deshabilitarlo es la práctica recomendada.
¿Deshabilitar NetBIOS puede romper algo en mi red?
👉 Solo si tienes dispositivos que dependen de él: impresoras antiguas de red, NAS con firmware desactualizado o equipos con Windows XP. En redes modernas con Windows 10/11 y SMB2/3, deshabilitar NetBIOS no afecta a la navegación, DNS ni al uso compartido de archivos.
¿Qué es LLMNR y por qué hay que deshabilitarlo junto con NetBIOS?
👉 LLMNR (Link-Local Multicast Name Resolution) es otro protocolo de resolución de nombres en red local, también activo por defecto en Windows. Junto con NBT-NS (parte de NetBIOS), es el vector que explota Responder para el LLMNR poisoning. Deshabilitar solo NetBIOS sin LLMNR deja abierto el mismo vector de ataque: hay que deshabilitar ambos.
¿Las 3 tareas programadas consumen muchos recursos?
👉 No. Cada verificación se reduce a leer el valor del registro y comprobar las reglas del firewall: menos de 1 segundo de CPU por ejecución. Las tres tareas suman menos de 5 minutos de CPU al día.
¿El script funciona también en Windows Server?
👉 Sí, es compatible con Windows Server 2019 y 2022. En servidores es incluso más crítico deshabilitarlo: una estación de trabajo con NetBIOS activo en un dominio corporativo expone los hashes de todos los usuarios del dominio a cualquier atacante con acceso a la red interna.
🏁 Conclusión
NetBIOS es uno de los protocolos heredados más explotados en redes Windows mal protegidas. Deshabilitarlo junto con LLMNR, bloquear los puertos y ejecutar el script con sus tres tareas programadas son medidas que cualquier usuario puede implementar en menos de 10 minutos.
Para completar el hardening de red en Windows, complementa esta guía con la guía técnica de acceso remoto seguro en Windows: RDP, VPN y autenticación en 2026 y el manual técnico de endurecimiento de Windows 11: 7 pasos para blindar tu PC en 2026.
🔐 Resumen de acciones recomendadas
- ✅ Verifica con
nbtstat -nsi el servicio está activo - ✅ Deshabilítalo en todos los adaptadores con PowerShell (
SetTcpipNetbios(2)) - ✅ Deshabilita también LLMNR (EnableMulticast = 0) para cerrar el vector de poisoning
- ✅ Bloquea los puertos UDP 137, UDP 138 y TCP 139 en el firewall de Windows
- ✅ Instala el script con sus 3 tareas programadas para hardening permanente
- ✅ Revisa
C:\Logs\netbios-hardening.logperiódicamente - ✅ Complementa deshabilitando SMB1 y forzando SMB Signing en equipos de dominio
Deja una respuesta