SMB 与 445 端口
445 是 SMB 协议在 TCP 上的直连承载端口(服务名 microsoft-ds)。Windows 的文件与打印共享、域内 SYSVOL 与组策略分发、AD 复制、远程注册表与管理共享都经过它。NetBIOS 时代的 139 在少数老场景仍在使用,现代 Windows 默认走 445。它也是勒索软件横向移动的头号通道,在公网扫描榜长期靠前,边界防火墙应当显式丢弃。
基本信息
| 服务 | microsoft-ds(SMB over TCP) |
|---|---|
| 协议 | TCP(NetBIOS 时代的 139 为并行通道) |
| 用途 | 文件与打印共享、SYSVOL 与组策略、AD 复制、远程管理共享 |
| 安全等级 | 严禁暴露公网,内网按业务最小化放行 |
| 关键加固 | 禁用 SMBv1、强制 SMB 签名、按需启用 SMB 加密 |
| 常用工具 | smbclient、net use、Get-SmbSession |
典型使用场景
- 部门文件共享与文件服务器访问,替代每人本地存一份
- 域内 SYSVOL 与组策略分发:域成员登录时从这里读取策略与脚本
- 漫游配置与用户主目录,用户换机后环境保持一致
- 运维通过管理共享(C$、ADMIN$)远程取放文件与安装软件
- 备份软件通过 SMB 读取共享盘数据,完成集中备份
服务端配置核对(PowerShell)
服务端配置核对(PowerShell)
Get-SmbServerConfiguration | Select-Object EnableSMB1Protocol,RequireSecuritySignature,EncryptData # 三个关键开关一次看全
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force # 关闭 SMBv1,先确认没有老设备依赖
Get-SmbSession | Select-Object ClientComputerName,ClientUserName,NumOpens # 谁在连、开了多少个文件
Get-SmbOpenFile | Select-Object ClientComputerName,ClientUserName,Path # 具体打开了哪些路径
Get-SmbShare | Select-Object Name,Path,EncryptData # 共享清单与加密状态典型攻击与处置
| 风险 | 说明 | 处置 |
|---|---|---|
| MS17-010(EternalBlue) | SMBv1 远程代码执行,是 WannaCry 的蔓延入口 | 禁用 SMBv1 并补齐历史补丁 |
| NTLM 中继 | 未强制签名的 SMB 可被转发凭据 | 启用 SMB 签名,确有兼容问题再单独例外并隔离 |
| 共享目录弱权限 | 任何域用户可写且可执行 | 按组授权,禁止共享根目录直接可写 |
| 管理共享滥用 | C$ 与 ADMIN$ 被用于横向拷贝与投放 | 限制访问来源并开启访问审计 |
Linux 侧验证与加密挂载
Linux 侧验证与加密挂载
smbclient -L //192.0.2.10 -N -p 445 # 匿名列举,被拒说明匿名已被关闭
smbclient //192.0.2.10/share -U 'DOMAIN/user' # 认证访问,验证共享权限
mount -t cifs //192.0.2.10/share /mnt/smb -o vers=3.1.1,seal,credentials=/etc/smb.cred # seal 表示要求 SMB 加密
smbstatus -b # 在文件服务器上看当前连接与锁输出逐列读法
| 输出项 | 含义 | 正常/异常 |
|---|---|---|
| ClientComputerName | 客户端计算机名 | 出现陌生主机或非域内主机需要追溯 |
| ClientUserName | 认证使用的账户 | 服务账号被人工登录使用往往意味着凭据外借 |
| NumOpens | 该会话打开的文件数 | 异常高的打开数常见于批量遍历或搬迁 |
| Path | 被打开的具体路径 | 出现配置文件与密钥目录要重点关注 |
| EncryptData | 该共享是否强制加密 | 跨网段共享建议为 True |
SMB 版本与取舍
| 版本 | 引入平台 | 要点 |
|---|---|---|
| SMB 1.0 | Windows 2003 及更早、部分老设备 | 漏洞最多,能禁用就禁用 |
| SMB 2.x | Vista 与 Server 2008 引入 | 性能显著提升,但仍无加密 |
| SMB 3.x | Windows 8 与 Server 2012 起 | 支持加密与多通道,加密仅在 3.0 及以上可用 |
公网扫描中 445 常年居前,边界防火墙应显式丢弃该端口;内网也要按业务最小化放行,否则一台失陷主机即可遍历整个网段。
只在文件服务器上禁用 SMBv1 意义有限:客户端与老设备仍可能发起 SMBv1 协商,需要先盘点依赖再逐段关闭,同时把无法升级的设备隔离到独立网段。
端口通不等于能访问:SMB 的失败常常出在权限与认证策略上,依次检查共享权限、NTFS 权限、签名与加密要求、Kerberos 时间偏差,比反复试账号更快定位。
审计与取证起点:Windows 上的 5140 与 5145 事件分别记录共享访问与详细文件访问,启用对象访问审核后即可回溯谁在什么时间访问了哪个路径,是勒索事件里定损与追责的主要依据。