上一篇文章《解析DNS请求和响应二进制数据的两种方法》介绍了DNS二进制数据的解析,详见这里。和DNS类似,SMB协议也是一个二进制协议,通常使用Wireshark等专门的协议解析器,才能够解析每个字段的含义。
有的时候SMB请求和响应的数据并不是都以PCAP的格式进行存储。例如在有的网络安全设备中,只会记录SMB请求和响应的数据,即TCP的payload,而没有传输层和网络层的数据,而SMB应用层数据则是以base64编码后的文本进行存储。这个时候该如何解析SMB应用层数据?
本文介绍三种解码SMB应用层数据的方法,如下:
- 使用text2pcap工具进行转换。
- 使用scapy构造PCAP数据包,借助wireshark解析。
- 使用scapy直接解码SMB层的数据 。
- 使用cyberchef进行解析。
SMB数据示例
本文使用的数据包为smb-on-windows-10.pcapng ,详细链接见这里,复制