欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

windows smb协议简单分析

windows smb协议简单分析

SMB协议

一. Client和Server的连接过程

  1. client和server首先建立NetBIOS session
  2. clent和server确定使用的smb协议的dialect(定义了特定协议版本的消息包集)
  3. client登录到server
  4. client连接server上的一个share
  5. client在share中打开文件
  6. client开始读取文件

client和server首先要建立全双工的TCP连接,然后client建立并发送一个NetBIOS session请求包。
如果请求包格式化正确,server返回一个包含着确认session建立成功的消息包。然后,client
开始想server发送第一个smb协议数据包。

二. SMB协议涉及到的数据包分析

Packet1. SMB_COM_NEGOTIATE

Direction:C->S

Description:client想server发送smb dialect的确认信息,server返回一个包含着dialects

的字符串的数据包。

Packet2. SMB_COM_NEGOTIATE

Direction:S->C

Description:server相应client的请求,确定将在session中使用的smb dialect。server返回

的数据包中还包括一个8字节的随机字符串,该字符串将在系一部中用于在登录过程中对客户端

进行身份验证。

Packet3. SMB_COM_SESSION_SETUP_ANDX

Direction:C->S

Description:该数据包包含着有关client功能的信息,因此即使server实现了share-level

security model,也必须要发送该数据包。

Packet4. SMB_COM_SESSION_SETUP_ANDX

Direction:S->C

Description:如果server接受了challenge/response,则返回给client的数据包中将包含

一个有效的UID。如果不接受,则在数据包中返回error code,并拒绝访问。

Packet5. SMB_COM_TREE_CONNECT_ANDX

Direction:C->S

Description:client对share发起访问,该数据包中包含UNC格式的绝对共享路径。

Packet6. SMB_COM_TREE_CONNECT_ANDX

Direction:S->C

Description:如果server授予了client访问权限,则server返回与该数据包中的share对应的

16位的TID。如果share不存在或者client没有足够的权限,则server返回error code并拒绝访问。

Packet7. SMB_COM_OPEN_ANDX

Direction:C->S

Description:client请求server代表自己在share中打开文件,该数据包中包含要打开的文件的名称。

Packet8. SMB_COM_OPEN_ANDX

Direction:S->C

Description:如果授予了对文件的访问权限,则server返回请求文件的ID;如果文件不存在或者

用户没有足够的权限访问该文件,则返回error code并拒绝client的访问。

Packet9. SMB_COM_READ_ANDX

Direction:C->S

Description:client请求server代替自己读取文件中的数据并返回给自己。打开文件时client

获取的文件ID包含在该数据包中,以便识别server应该从哪个打开的文件中读取数据。

Packet10. SMB_COM_READ_ANDX

Direction:S->C

Description:server返回client请求的文件数据。由于已授予对server,share和文件的访问权限,一般不会出现问题。但是在某些特殊情况下会发生错误,例如在打开文件和从文件中读取数据这两步之间,对share的访问权限遭到了更改,就会发生错误。

三. SMB Message结构

SMB Message包括一个固定长度的header(32字节)、一个可变长度的Parameter block(最大为64kb)、一个可变长度的Data block。

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功