- SMB是一个协议名,全称是Server Message Block(服务器消息快协议),用于在计算机间共享文件、打印机、串口等,电脑上的网上邻居由它实现。
- 是应用层(和表示层)协议,使用C/S架构,其工作的端口与其使用的协议有关。
- 当远程连接计算机访问共享资源时有两种方式:
- \\共享计算机地址\共IP享资源路径
- \\共享计算机名\共享资源路径
其中,使用计算机名访问时,SMB服务工作在NetBIOS协议之上,用的是TCP的139端口;使用IP地址访问时,用的是TCP的445端口。
- SMB工作过程:版本协商--->会话请求凭据--->文件路径凭据--->对共享资源进行操作
- 配置SMB服务就是启用网络发现和打印机共享(如果网络配置为公用默认不开启,需要手工开启)
接下来通过一个简单的实验来分析SMB服务的具体过程。
实验环境:Windows7虚拟机一台,Windows10计算机一台,wireshark
说明:windows7的IP:192.168.56.102;Windows10的IP:192.168.56.1
实验过程:Windows7文件夹共享给everyone,Windows10打开网络发现功能,输入共享路径:\\WIN7\,同时wireshark开启抓包,抓包分析如下:
可以看到前三个分组是TCP连接三次握手的过程,第三,第四个分组是SMB建立会话请求和会话响应,第三个包与TCP连接的第三次握手合并,第五,六个包是版本协商的过程,7,8,9,10个包是在处理远程登陆的凭据,其中第一次连接错误,第二次正确,11,12个包是在处理远程文件路径的凭据,之后的包就是在处理对共享文件的操作。