网上邻居背后的秘密——NetBIOS与SMB协议概览



网上邻居背后的秘密——NetBIOS与SMB协议概览

  Windows局域网络有两种管理方式对等网工作组模式和主从域管理模式。对等网(Peer to Peer),所谓对等是指,在LAN中所有的PC机都是平等关系,没有隶属、管理与被管理的关系,它们的地位是平等的。我们的计算机机房就是一个简单的对等网,网络中的所有PC都平等关系。与对等网相对的是基于目录服务进行集中认证、授权管理共享资源的网络——Windows域管理模式。Windows域管理模式,在Window域中由活动目录对域中的软、硬件资源进行管理。
  在对等网中,网上邻居是共享资源的方式。通过网上领居,本地计算机可以访问网络中其它计算机共享的资源,本地计算机也可以把自己的资源共享给其它计算机。网上邻居是使用NetBIOS协议传输数据。NetBIOS是由IBM开发的,全称是:Network Basic Input and Output System。在Windows NT下的NetBIOS是基础TCP/IP环境的,与早期DOS下的NetBIOS有所不同。RFC1001和1002是TCP/IP环境下的NetBIOS协议标准。当安装了TCP/IP协议后,NetBIOS协议已经自动安装到计算机中。NetBIOS 使用下列端口:UDP/137(NetBIOS 名称服务)、UDP/138(NetBIOS 数据报服务)、TCP/139(NetBIOS 会话服务);SMB 使用下列端口:TCP/139、TCP/445。
  SMB是Server Message Block的缩写。

网上邻居背后的秘密——NetBIOS与SMB协议概览_第1张图片
  图一 Windows XP下的NetBIOS设置
  在上图中,可以看到默认的设置是从DHCP服务器使用NetBIOS设置。如果使用静态的IP地址或DHCP服务器不提供NetBIOS设置,则启用TCP/IP上的NetBIOS。本次的协议分析环境是使用静态的IP地址。顺便说一下,如果计算机所在的网络环境内没有DHCP服务器,而又没有设置静态的IP地址,计算机会自动获取以169.254开头的IP地址。
  NetBIOS协议的两个标准文档RFC1001和1002一共有二百多页。在这里只做粗略地分析。使用的抓包工具是OmniPeek。
  分析场景:
   网上邻居背后的秘密——NetBIOS与SMB协议概览_第2张图片
  图二 
  以下的NetBIOS和SMB协议是在此场景是进行。 
  双击桌面上的“网上邻居”,打开如下图的界面:
   网上邻居背后的秘密——NetBIOS与SMB协议概览_第3张图片
  图三
  此时抓取的部分数据包(共有67个数据包):
   网上邻居背后的秘密——NetBIOS与SMB协议概览_第4张图片
  图四 
    分析以上抓取的数据包,对NetBIOS Name Service(名字服务)、NetBIOS Session、SMB等进行分析。查看Name Service数据包的内容与格式:
   网上邻居背后的秘密——NetBIOS与SMB协议概览_第5张图片
  图五 Name Service
  由上图可以看出:PCA(192.168.1.8)发出一个广播包,查询工作组名WORKGROUP,Netbios名字服务使用UDP协议,端口号是137。
  双击打开workgroup工作时抓取的数据包,共13个:
  
  图六 
  由上图可以看出,只有一个Netbios 会话管理数据包,其它的全部是SMB协议数据包。
   网上邻居背后的秘密——NetBIOS与SMB协议概览_第6张图片
  图七 SMB数据包
  上图的中SMB数据包被封装在Netbios Session Service中,使用TCP协议传输,端口号为139。
  在workgroup中双击计算机PCB(192.168.1.6),访问它时抓取如下的69个数据包,SMB数据包占据绝大多数:
  
  图八
  由上图抓取的数据来看,网上邻居访问计算机的命令操作以SMB协议传输。
  打开计算机上共享文件夹时抓取的数据包:
  
  图九
  查看第一个数据包的详细内容:
   网上邻居背后的秘密——NetBIOS与SMB协议概览_第7张图片
  图十
  由上面数据包可以看出,这个数据包是PCA向PCB发出查看共享文件的请求。
  选择中某个文件时抓取的数据包:
   网上邻居背后的秘密——NetBIOS与SMB协议概览_第8张图片
  图十一
  在选择的文件上右键单击,弹出快捷菜单时抓取的数据包,文件名称:文档.txt:
  
  图十二
  查看一个数据包的部分内容:
   网上邻居背后的秘密——NetBIOS与SMB协议概览_第9张图片
  图十三
  把计算机PCB上共享的文件复制到计算机PCA时,抓取的数据包:
   网上邻居背后的秘密——NetBIOS与SMB协议概览_第10张图片
  图十四
  查看一个数据包的部分内容:
  
  图十五
  在我们看似非常简单的操作,对于计算机来说,就要做很多的工作,因为计算机所有的工作都是执行编程人员事先编好的指令。计算机之间没的情感,不能看脸色行事,只是按部就班执行命令。
原文 : http://hi.baidu.com/senya/item/4cafa83eb745a2627d034b46

你可能感兴趣的:(网上邻居背后的秘密——NetBIOS与SMB协议概览)