INB COMPUTERS "Honestidad, calidad y profesionalismo"
POST ED: 23 mayo, 2020. ACTUALIZADO EN: 14 febrero, 2024.
Server Message Block es un protocolo de red que permite compartir archivos, impresoras, etcétera, entre nodos de una red de computadoras que usan el sistema operativo Microsoft Windows. Este protocolo pertenece a la capa de aplicación en el modelo OSI.
Un puerto SMB es un puerto de red que se utiliza habitualmente para compartir archivos. El programador de IBM Barry Feigenbaum desarrolló el protocolo Server Message Blocks (SMB) en la década de 1980 para IBM DOS. SMB sigue siendo el protocolo estándar de facto para compartir archivos en red que se utiliza en la actualidad.
Hace más de 30 años fue creado por IBM y posteriormente combinado por Microsoft. SMB permite acceder y modificar archivos en un equipo remoto, así como acceder a otros recueros como impresoras a través de una aplicación. El protocolo pese a sus actualizaciones para mejorar aspectos de seguridad fue hackeado en 2016 en su última actualización. A continuación, podemos ver cuando fue introducidas las diferentes versiones de SMB con los diferentes sistemas operativos de Microsoft.
SMB 1.0 (o SMB1): Esta es la versión que se usa en Windows 2000, Windows XP, Windows Server 2003 y Windows Server 2003 R2
SMB 2.0 (o SMB2): Esta versión fue introducida en Windows Vista (SP1 o superior) y Windows Server 2008
SMB 2.1 (o SMB2.1): Esta es la versión empleada en Windows 7 y Windows Server 2008 R2
SMB 3.0 (o SMB3): La nueva versión introducida en Windows 8 y Windows Server 2012
Las principales mejoras de SMB3 frente a SMB2 son:
Conmutación transparente: Permite a los administradores realizar tareas de mantenimiento o cambios sin interferir en las operaciones de acceso de lectura y escritura.
Escalabilidad, rapidez y eficiencia: Se pueden crear volúmenes compartidos que proporciones acceso simultaneo.
Cifrado SMB: Sin duda la novedad más importante es el cifrado de extremo a extremo de los datos SMB.
El cifrado de SMB3 evita que un atacante altere y escuche cualquier paquete de datos. En SMB 3.1.1 permite que los equipos conectados negocien que tipo de cifrado usar durante el establecimiento de la conexión. En SMB 3.0.X se usaba AES-128-CCM, con SMB 3.1.1 se agregó también AES-128-GCM. La diferencia entre ambos es que el modo GCM ofrece un mayor rendimiento, y además, nos permite comprobar la integridad de los datos directamente sin necesidad de usar ninguna función hash adicional, ya que incorpora AEAD.
Se encuentra vulnerabilidades en SMBv1 las cuales deberíamos revisar si nuestro equipo es vulnerable.
En este artículo se describe cómo habilitar y deshabilitar el bloque de mensajes del servidor (SMB) versión 1 (SMBv1), SMB versión 2 (SMBv2) y SMB versión 3 (SMBv3) en los componentes de servidor y cliente SMB.
Se recomienda no deshabilitar SMBv2 o SMBv3. Deshabilite SMBv2 o SMBv3 solo como medida de solución de problemas temporal. No deje la deshabilitación de SMBv2 o SMBv3.
Windows 11
Cómo quitar SMBv1 mediante PowerShell
Estos son los pasos para detectar, deshabilitar y habilitar el cliente y el servidor SMBv1 mediante comandos de PowerShell con privilegios de administrador tambien llamados privilegios elevados.
Detección:
Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Deshabilitar:
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Habilitar:
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Windows 8, Server 2012
Estos son los pasos para detectar, deshabilitar y habilitar el cliente y el servidor SMBv1 mediante comandos de PowerShell con privilegios de administrador tambien llamados privilegios elevados.
Detección Server:
Get-SmbServerConfiguration | Select EnableSMB1Protocol
Deshabilitar Server:
Set-SmbServerConfiguration -EnableSMB1Protocol $false
Habilitar Server:
Set-SmbServerConfiguration -EnableSMB1Protocol $true
Windows 8, Server 2012
Cómo quitar SMBv2 y SMBv3 mediante PowerShell
Estos son los pasos para detectar, deshabilitar y habilitar el cliente y el servidor SMBv2 mediante comandos de PowerShell con privilegios de administrador tambien llamados privilegios elevados.
Detección Server:
Get-SmbServerConfiguration | Select EnableSMB2Protocol
Deshabilitar Server:
Set-SmbServerConfiguration -EnableSMB2Protocol $false
Habilitar Server:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
En los temas siguientes se describen algunos problemas comunes de solución de problemas que pueden producirse al usar el bloque de mensajes del servidor (SMB). En estos temas también se proporcionan posibles soluciones a dichos problemas.
Universidad técnica Federico Santa Maria (2018). Protocolo SMB, Redes de computadora. [Archivo documento]. Recuperado el 23 de mayo de 2020 de http://profesores.elo.utfsm.cl/~agv/elo322/1s18/projects/reports/Protocolo%20SMB.pdf
Samba es una implementación libre del protocolo SMB/CIFS que se usa en sistemas GNU/Linux y Unix en general.
Consta de dos partes diferenciadas: el cliente, con el que se accede a máquinas que están compartiendo recursos; y el servidor que se ocupa de poner recursos de la máquina a disposición de otros.
Samba usa un fichero de configuración que en los sistemas Linux estándar, debería estar en /etc/samba/smb.conf. En este fichero, entre todas las opciones que podemos configurar, podemos definir las versiones mínimas y máximas del protocolo SMB que se usará en las conexiones, tanto para el cliente, como para el servidor. Por ejemplo:
[Global]
min protocol = SMB2
client min protocol = SMB2
max protocol = SMB3
client max protocol = SMB3
Carlos Alberto Sobrino Lusquiños (3 de mayo de 2020). Versiones de SMB en Windows y Samba. Recuperado el 15 de octubre de 2020 de https://www.soyunignorante.es/versiones-de-smb-en-windows-y-samba/
Este comportamiento es una característica del diseño de la aplicación.
Use la dirección IP del servidor remoto cuando intente conectar con el recurso compartido de red.
Cree un alias de sistema de nombres de dominio (DNS) diferente para el servidor remoto y, a continuación, use este alias para conectarse al recurso compartido de red.
Después de usar uno de estos métodos, puede usar diferentes credenciales de usuario para conectarse al recurso compartido de red. En esta situación, el equipo se comporta como si se estuviera conectando a un servidor diferente.
Deland-Han (2020, 9 agosto). La carpeta de red especificada está actualmente asignada con un nombre de usuario y una contraseña diferentes. Microsoft. https://docs.microsoft.com/es-es/troubleshoot/windows-server/networking/cannot-connect-to-network-shareDialectos del protocolo SMB
Al igual que cualquier lenguaje, los programadores informáticos han creado diferentes dialectos SMB que se utilizan para distintos fines. Por ejemplo, el Common Internet File System (CIFS) es una implementación específica de SMB que permite compartir archivos. Muchas personas confunden CIFS con un protocolo diferente de SMB , cuando en realidad utilizan la misma arquitectura básica.
Las implementaciones importantes de SMB incluyen:
CIFS : CIFS es un protocolo común para compartir archivos utilizado por servidores Windows y dispositivos NAS compatibles.
Samba : Samba es una implementación de código abierto de Microsoft Active Directory que permite que las máquinas que no son Windows se comuniquen con una red Windows.
NQ : NQ es otra implementación SMB de intercambio de archivos portátil desarrollada por Visuality Systems .
MoSMB : MoSMB es una implementación SMB patentada por Ryussi Technologies .
Tuxera SMB : Tuxera también es una implementación SMB propietaria que se ejecuta en el kernel o en el espacio de usuario.
Likewise: Likewise es un protocolo de intercambio de archivos en red con reconocimiento de identidad y múltiples protocolos que fue adquirido por EMC en 2012.
¿Qué son los puertos 139 y 445?
SMB SMB siempre ha sido un protocolo de intercambio de archivos en red. Como tal, SMB requiere puertos de red en una computadora o servidor para permitir la comunicación con otros sistemas. SMB utiliza el puerto IP 139 o 445.
Puerto 139 : SMB originalmente se ejecutaba sobre NetBIOS utilizando el puerto 139. NetBIOS es una capa de transporte más antigua que permite que las computadoras Windows se comuniquen entre sí en la misma red.
Puerto 445: Las versiones posteriores de SMB (después de Windows 2000) comenzaron a utilizar el puerto 445 sobre una pila TCP. El uso de TCP permite que SMB funcione a través de Internet.