scapy.layers.smb2

SMB (Server Message Block), also known as CIFS - version 2

class scapy.layers.smb2.SMB2_Compression_Capabilities(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   COMPRESSIONALGORITHMCOUNT   |            PADDING            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             FLAGS                             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     COMPRESSIONALGORITHMS     |            PADDING2           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Fig. SMB2_Compression_Capabilities                
SMB2_Compression_Capabilities fields

CompressionAlgorithmCount

FieldLenField

'0'

Padding

ShortField

'0'

Flags

IntEnumField

'0'

CompressionAlgorithms

FieldListField

'[]'

Padding2

XStrLenField

"b''"

payload_guess

Possible sublayers: Padding

class scapy.layers.smb2.SMB2_Compression_Transform_Header(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             START             | ORIGINALCOMPRESSEDSEGMENTSIZE |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |      COMPRESSIONALGORITHM     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             FLAGS             |         OFFSET/LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

              Fig. SMB2_Compression_Transform_Header              
SMB2_Compression_Transform_Header fields

Start

StrFixedLenField

"b'\\xfcSMB'"

OriginalCompressedSegmentSize

LEIntField

'0'

CompressionAlgorithm

LEShortEnumField

'0'

Flags

ShortEnumField

'0'

Offset/Length

XLEIntField

'0'

class scapy.layers.smb2.SMB2_Encryption_Capabilities(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          CIPHERCOUNT          |            CIPHERS            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            PADDING            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Fig. SMB2_Encryption_Capabilities                 
SMB2_Encryption_Capabilities fields

CipherCount

FieldLenField

'1'

Ciphers

FieldListField

'[1]'

Padding

XStrLenField

"b''"

payload_guess

Possible sublayers: Padding

class scapy.layers.smb2.SMB2_Header(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             START             |          HEADERLENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          CREDITCHARGE         |        CHANNELSEQUENCE        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             UNUSED            |            COMMAND            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        CREDITSREQUESTED       |             FLAGS             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |          CHAINOFFSET          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |           MESSAGEID           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |           PROCESSID           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |             TREEID            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |           SESSIONID           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |           SIGNATURE           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. SMB2_Header                         
SMB2_Header fields

Start

StrFixedLenField

"b'\\xfeSMB'"

HeaderLength

LEShortField

'0'

CreditCharge

LEShortField

'0'

ChannelSequence

LEShortField

'0'

Unused

LEShortField

'0'

Command

ShortEnumField

'0'

CreditsRequested

LEShortField

'0'

Flags

FlagsField

'<Flag 0 ()>'

ChainOffset

XLEIntField

'0'

MessageID

LELongField

'0'

ProcessID

XLEIntField

'0'

TreeID

XLEIntField

'0'

SessionID

XLELongField

'0'

Signature

XNBytesField

'0'

guess_payload_class(payload)
class scapy.layers.smb2.SMB2_Negociate_Context(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          CONTEXTTYPE          |           DATALENGTH          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                            RESERVED                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                   Fig. SMB2_Negociate_Context                    
SMB2_Negociate_Context fields

ContextType

LEShortEnumField

'0'

DataLength

FieldLenField

'0'

Reserved

IntField

'0'

payload_guess

Possible sublayers: SMB2_Compression_Capabilities, SMB2_Encryption_Capabilities, SMB2_Netname_Negociate_Context_ID, SMB2_Preauth_Integrity_Capabilities

class scapy.layers.smb2.SMB2_Negociate_Protocol_Request_Header(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         STRUCTURESIZE         |          DIALECTCOUNT         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          SECURITYMODE         |            RESERVED           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          CAPABILITIES                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           CLIENTGUID                          |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                     NEGOCIATECONTEXTOFFSET                    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         NEGOCIATECOUNT        |           RESERVED2           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            DIALECTS           |       NEGOCIATECONTEXTS       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

           Fig. SMB2_Negociate_Protocol_Request_Header            
SMB2_Negociate_Protocol_Request_Header fields

StructureSize

XLEShortField

'0'

DialectCount

FieldLenField

'0'

SecurityMode

FlagsField

'<Flag 0 ()>'

Reserved

LEShortField

'0'

Capabilities

FlagsField

'<Flag 0 ()>'

ClientGUID

UUIDField

"UUID('00000000-0000-0000-0000-000000000000')"

NegociateContextOffset

XLEIntField

'0'

NegociateCount

FieldLenField

'0'

Reserved2

ShortField

'0'

Dialects

PadField

'[514]'

NegociateContexts

PacketListField

'[]'

class scapy.layers.smb2.SMB2_Negociate_Protocol_Response_Header(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         STRUCTURESIZE         |          SECURITYMODE         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            DIALECT            |         NEGOCIATECOUNT        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           SERVERGUID                          |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          CAPABILITIES                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       MAXTRANSACTIONSIZE                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          MAXREADSIZE                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          MAXWRITESIZE                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           SYSTEMTIME                          |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        SERVERSTARTTIME                        |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      SECURITYBUFFEROFFSET     |      SECURITYBUFFERLENGTH     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                     NEGOCIATECONTEXTOFFSET                    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         SECURITYBUFFER        |       NEGOCIATECONTEXTS       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

           Fig. SMB2_Negociate_Protocol_Response_Header           
SMB2_Negociate_Protocol_Response_Header fields

StructureSize

XLEShortField

'0'

SecurityMode

FlagsField

'<Flag 0 ()>'

Dialect

LEShortEnumField

'0'

NegociateCount

FieldLenField

'0'

ServerGUID

UUIDField

"UUID('00000000-0000-0000-0000-000000000000')"

Capabilities

FlagsField

'<Flag 0 ()>'

MaxTransactionSize

LEIntField

'0'

MaxReadSize

LEIntField

'0'

MaxWriteSize

LEIntField

'0'

SystemTime

XLongField

'0'

ServerStartTime

XLongField

'0'

SecurityBufferOffset

XLEShortField

'0'

SecurityBufferLength

FieldLenField

'0'

NegociateContextOffset

XLEIntField

'0'

SecurityBuffer

XStrLenField

'None'

NegociateContexts

PacketListField

'[]'

class scapy.layers.smb2.SMB2_Netname_Negociate_Context_ID(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            NETNAME            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

              Fig. SMB2_Netname_Negociate_Context_ID              
SMB2_Netname_Negociate_Context_ID fields

NetName

StrFieldUtf16

"b''"

payload_guess

Possible sublayers: Padding

class scapy.layers.smb2.SMB2_Preauth_Integrity_Capabilities(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       HASHALGORITHMCOUNT      |           SALTLENGTH          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         HASHALGORITHMS        |              SALT             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            PADDING            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

             Fig. SMB2_Preauth_Integrity_Capabilities             
SMB2_Preauth_Integrity_Capabilities fields

HashAlgorithmCount

FieldLenField

'1'

SaltLength

FieldLenField

'0'

HashAlgorithms

FieldListField

'[1]'

Salt

XStrLenField

"b''"

Padding

XStrLenField

"b''"

payload_guess

Possible sublayers: Padding