scapy.layers.dcerpc
DCE/RPC Distributed Computing Environment / Remote Procedure Calls
Based on [C706] - aka DCE/RPC 1.1 https://pubs.opengroup.org/onlinepubs/9629399/toc.pdf
And on [MS-RPCE] https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-rpce/290c38b1-92fe-4229-91e6-4fc376610c15
Note
Please read the documentation over DCE/RPC
- class scapy.layers.dcerpc.CommonAuthVerifier(_pkt, /, *, auth_type=0, auth_level=0, auth_pad_length=None, auth_reserved=0, auth_context_id=0, auth_value=None)[source]
Bases:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AUTH TYPE | AUTH LEVEL |AUTH PAD LENGTH| AUTH RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AUTH CONTEXT ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AUTH VALUE | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. CommonAuthVerifier
CommonAuthVerifier fields auth_type
0
auth_level
0
auth_pad_length
None
auth_reserved
0
auth_context_id
0
auth_value
MultipleTypeField
(PacketLenField, PacketLenField, PacketLenField, PacketLenField, PacketLenField, PacketLenField, PacketLenField, PacketLenField, PacketLenField)None
- class scapy.layers.dcerpc.DCERPC_Transport(*values)[source]
Bases:
IntEnum
- NCACN_IP_TCP = 1
- NCACN_NP = 2
- scapy.layers.dcerpc.DCE_C_AUTHN_LEVEL[source]
alias of
RPC_C_AUTHN_LEVEL
- class scapy.layers.dcerpc.DceRpc4(_pkt, /, *, rpc_vers=4, ptype=0, flags1=<Flag 0 ()>, flags2=<Flag 0 ()>, endian=1, encoding=0, float=0, reserved1=0, serial_hi=0, object=None, if_id=None, act_id=None, server_boot=0, if_vers=1, seqnum=0, opnum=0, ihint=65535, ahint=65535, len=None, fragnum=0, auth_proto=0, serial_lo=0)[source]
Bases:
DceRpc
DCE/RPC v4 ‘connection-less’ 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RPC VERS | PTYPE | FLAGS1 | FLAGS2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ENDIAN|ENCODIN| FLOAT | RESERVED1 | SERIAL HI | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OBJECT | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IF ID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ACT ID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SERVER BOOT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IF VERS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SEQNUM | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OPNUM | IHINT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AHINT | LEN | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FRAGNUM | AUTH PROTO | SERIAL LO | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc4
DceRpc4 fields rpc_vers
4
ptype
0
flags1
<Flag 0 ()>
flags2
<Flag 0 ()>
endian
1
encoding
0
float
0
reserved1
0
serial_hi
0
object
_EField
None
if_id
_EField
None
act_id
_EField
None
server_boot
_EField
0
if_vers
_EField
1
seqnum
_EField
0
opnum
_EField
0
ihint
_EField
65535
ahint
_EField
65535
len
_EField
None
fragnum
_EField
0
auth_proto
0
serial_lo
0
- payload_guess
Possible sublayers:
DceRpc4Payload
- class scapy.layers.dcerpc.DceRpc4Payload(_pkt, /)[source]
Bases:
Packet
Dummy class which use the dispatch_hook to find the payload class
- aliastypes
- class scapy.layers.dcerpc.DceRpc5(_pkt, /, *, rpc_vers=5, rpc_vers_minor=0, ptype=0, pfc_flags=None, endian=1, encoding=0, float=0, reserved1=0, reserved2=0, frag_len=None, auth_len=None, call_id=None, auth_verifier=None, auth_padding=None, vt_trailer=None)[source]
Bases:
DceRpc
DCE/RPC v5 ‘connection-oriented’ 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RPC VERS | RPC VERS MINOR| PTYPE | PFC FLAGS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ENDIAN|ENCODIN| FLOAT | RESERVED1 | RESERVED2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FRAG LEN | AUTH LEN | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CALL ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AUTH VERIFIER | AUTH PADDING | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VT TRAILER | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5
DceRpc5 fields rpc_vers
5
rpc_vers_minor
0
ptype
0
pfc_flags
MultipleTypeField
(FlagsField, FlagsField)<Flag 3 (PFC_FIRST_FRAG+PFC_LAST_FRAG)>
endian
1
encoding
0
float
0
reserved1
0
reserved2
0
frag_len
_EField
None
auth_len
_EField
None
call_id
_EField
None
auth_verifier
TrailerField
(Cond)None
auth_padding
TrailerField
(Cond)None
vt_trailer
None
- payload_guess
Possible sublayers:
DceRpc5AlterContextResp
,DceRpc5AlterContext
,DceRpc5Auth3
,DceRpc5BindAck
,DceRpc5BindNak
,DceRpc5Bind
,DceRpc5Fault
,DceRpc5Request
,DceRpc5Response
- class scapy.layers.dcerpc.DceRpc5AbstractSyntax(_pkt, /, *, if_uuid=None, if_version=3)[source]
Bases:
EPacket
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IF UUID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IF VERSION | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5AbstractSyntax
DceRpc5AbstractSyntax fields if_uuid
_EField
None
if_version
_EField
3
- class scapy.layers.dcerpc.DceRpc5AlterContext(_pkt, /, *, max_xmit_frag=5840, max_recv_frag=8192, assoc_group_id=0, n_context_elem=None, reserved=0, context_elem=[])[source]
Bases:
_DceRpcPayload
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MAX XMIT FRAG | MAX RECV FRAG | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ASSOC GROUP ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | N CONTEXT ELEM| RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CONTEXT ELEM | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5AlterContext
DceRpc5AlterContext fields max_xmit_frag
_EField
5840
max_recv_frag
_EField
8192
assoc_group_id
_EField
0
n_context_elem
_EField
None
reserved
0
context_elem
[]
- class scapy.layers.dcerpc.DceRpc5AlterContextResp(_pkt, /, *, max_xmit_frag=5840, max_recv_frag=8192, assoc_group_id=0, sec_addr=None, n_results=None, reserved=0, results=[])[source]
Bases:
_DceRpcPayload
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MAX XMIT FRAG | MAX RECV FRAG | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ASSOC GROUP ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SEC ADDR | padding | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | N RESULTS | RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RESULTS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5AlterContextResp
DceRpc5AlterContextResp fields max_xmit_frag
_EField
5840
max_recv_frag
_EField
8192
assoc_group_id
_EField
0
sec_addr
None
n_results
_EField
None
reserved
0
results
[]
- class scapy.layers.dcerpc.DceRpc5Auth3(_pkt, /, *, pad=b'')[source]
Bases:
Packet
- aliastypes
- class scapy.layers.dcerpc.DceRpc5Bind(_pkt, /, *, max_xmit_frag=5840, max_recv_frag=8192, assoc_group_id=0, n_context_elem=None, reserved=0, context_elem=[])[source]
Bases:
_DceRpcPayload
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MAX XMIT FRAG | MAX RECV FRAG | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ASSOC GROUP ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | N CONTEXT ELEM| RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CONTEXT ELEM | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5Bind
DceRpc5Bind fields max_xmit_frag
_EField
5840
max_recv_frag
_EField
8192
assoc_group_id
_EField
0
n_context_elem
_EField
None
reserved
0
context_elem
[]
- class scapy.layers.dcerpc.DceRpc5BindAck(_pkt, /, *, max_xmit_frag=5840, max_recv_frag=8192, assoc_group_id=0, sec_addr=None, n_results=None, reserved=0, results=[])[source]
Bases:
_DceRpcPayload
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MAX XMIT FRAG | MAX RECV FRAG | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ASSOC GROUP ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SEC ADDR | padding | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | N RESULTS | RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RESULTS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5BindAck
DceRpc5BindAck fields max_xmit_frag
_EField
5840
max_recv_frag
_EField
8192
assoc_group_id
_EField
0
sec_addr
None
n_results
_EField
None
reserved
0
results
[]
- class scapy.layers.dcerpc.DceRpc5BindNak(_pkt, /, *, provider_reject_reason=0, n_protocols=None, protocols=[], signature=None)[source]
Bases:
_DceRpcPayload
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PROVIDER REJECT REASON | N PROTOCOLS | PROTOCOLS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | SIGNATURE | +-+-+-+-+-+-+-+-+ + | | + + | | + + | | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+-+-+-+-+-+-+ Fig. DceRpc5BindNak
DceRpc5BindNak fields provider_reject_reason
_EField
0
n_protocols
_EField
None
protocols
[]
signature
ReversePadField
(Cond)None
- class scapy.layers.dcerpc.DceRpc5Context(_pkt, /, *, cont_id=0, n_transfer_syn=None, reserved=0, abstract_syntax=None, transfer_syntaxes=[])[source]
Bases:
EPacket
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CONT ID | N TRANSFER SYN| RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ABSTRACT SYNTAX | TRANSFER SYNTAXES | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5Context
DceRpc5Context fields cont_id
_EField
0
n_transfer_syn
None
reserved
0
abstract_syntax
None
transfer_syntaxes
[]
- class scapy.layers.dcerpc.DceRpc5Fault(_pkt, /, *, alloc_hint=0, cont_id=0, cancel_count=0, reserved=<Flag 0 ()>, status=0, reserved2=0)[source]
Bases:
_DceRpcPayload
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ALLOC HINT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CONT ID | CANCEL COUNT | RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | STATUS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RESERVED2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5Fault
DceRpc5Fault fields alloc_hint
_EField
0
cont_id
_EField
0
cancel_count
0
reserved
<Flag 0 ()>
status
_EField
0
reserved2
0
- class scapy.layers.dcerpc.DceRpc5PortAny(_pkt, /, *, length=None, port_spec=b'')[source]
Bases:
EPacket
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LENGTH | PORT SPEC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5PortAny
DceRpc5PortAny fields length
_EField
None
port_spec
_EField
b''
- class scapy.layers.dcerpc.DceRpc5Request(_pkt, /, *, alloc_hint=0, cont_id=0, opnum=0, object=None)[source]
Bases:
_DceRpcPayload
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ALLOC HINT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CONT ID | OPNUM | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OBJECT | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5Request
DceRpc5Request fields alloc_hint
_EField
0
cont_id
_EField
0
opnum
_EField
0
object
PadField
(Cond)None
- class scapy.layers.dcerpc.DceRpc5Response(_pkt, /, *, alloc_hint=0, cont_id=0, cancel_count=0, reserved=0)[source]
Bases:
_DceRpcPayload
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ALLOC HINT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CONT ID | CANCEL COUNT | RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5Response
DceRpc5Response fields alloc_hint
_EField
0
cont_id
_EField
0
cancel_count
0
reserved
0
- class scapy.layers.dcerpc.DceRpc5Result(_pkt, /, *, result=0, reason=0, transfer_syntax=None)[source]
Bases:
EPacket
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RESULT | REASON | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TRANSFER SYNTAX | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5Result
DceRpc5Result fields result
_EField
0
reason
_EField
0
transfer_syntax
None
- class scapy.layers.dcerpc.DceRpc5TransferSyntax(_pkt, /, *, if_uuid=None, if_version=3)[source]
Bases:
EPacket
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IF UUID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IF VERSION | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpc5TransferSyntax
DceRpc5TransferSyntax fields if_uuid
_EField
None
if_version
_EField
3
- class scapy.layers.dcerpc.DceRpc5Version(_pkt, /, *, major=0, minor=0)[source]
Bases:
EPacket
- aliastypes
- class scapy.layers.dcerpc.DceRpcInterface(name, uuid, version_tuple, if_version, opnums)[source]
Bases:
object
- class scapy.layers.dcerpc.DceRpcOp(request, response)[source]
Bases:
tuple
- request
Alias for field number 0
- response
Alias for field number 1
- class scapy.layers.dcerpc.DceRpcSecVT(_pkt, /, *, rpc_sec_verification_trailer=b'\x8a\xe3\x13q\x02\xf46q', commands=[])[source]
Bases:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RPC SEC VERIFICATION TRAILER | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | COMMANDS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpcSecVT
DceRpcSecVT fields rpc_sec_verification_trailer
b'\x8a\xe3\x13q\x02\xf46q'
commands
[]
- class scapy.layers.dcerpc.DceRpcSecVTBitmask(_pkt, /, *, bits=1)[source]
Bases:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | BITS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpcSecVTBitmask
DceRpcSecVTBitmask fields bits
1
- class scapy.layers.dcerpc.DceRpcSecVTCommand(_pkt, /, *, SEC_VT_MUST_PROCESS_COMMAND=0, SEC_VT_COMMAND_END=0, Command=0, Length=None)[source]
Bases:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |S|S| COMMAND | LENGTH | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpcSecVTCommand
DceRpcSecVTCommand fields SEC_VT_MUST_PROCESS_COMMAND
BitField
(1 bit)0
SEC_VT_COMMAND_END
BitField
(1 bit)0
Command
0
Length
None
- class scapy.layers.dcerpc.DceRpcSecVTHeader2(_pkt, /, *, PTYPE=0, Reserved1=0, Reserved2=0, drep=0, call_id=0, p_cont_id=0, opnum=0)[source]
Bases:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PTYPE | RESERVED1 | RESERVED2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DREP | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CALL ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | P CONT ID | OPNUM | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpcSecVTHeader2
DceRpcSecVTHeader2 fields PTYPE
0
Reserved1
0
Reserved2
0
drep
0
call_id
0
p_cont_id
0
opnum
0
- class scapy.layers.dcerpc.DceRpcSecVTPcontext(_pkt, /, *, InterfaceId=None, Version=0, TransferSyntax=None, TransferVersion=0)[source]
Bases:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | INTERFACEID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VERSION | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TRANSFERSYNTAX | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TRANSFERVERSION | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. DceRpcSecVTPcontext
DceRpcSecVTPcontext fields InterfaceId
None
Version
0
TransferSyntax
None
TransferVersion
0
- class scapy.layers.dcerpc.DceRpcSession(*args, **kwargs)[source]
Bases:
DefaultSession
A DCE/RPC session within a TCP socket.
- MAX_PDU_BODY_SIZE = 4176
- class scapy.layers.dcerpc.DceRpcSocket(*args, **kwargs)[source]
Bases:
StreamSocket
A Wrapper around StreamSocket that uses a DceRpcSession
- class scapy.layers.dcerpc.NDRAlign(fld, align, padwith=None)[source]
Bases:
_NDRAlign
,ReversePadField
ReversePadField modified to fit NDR.
If no align size is specified, use the one from the inner field
Size is calculated from the beginning of the NDR stream
- fld
- class scapy.layers.dcerpc.NDRConfFieldListField(*args, **kwargs)[source]
Bases:
_NDRConfField
,NDRFieldListField
NDR Conformant FieldListField
- COUNT_FROM = True
- class scapy.layers.dcerpc.NDRConfPacketListField(*args, **kwargs)[source]
Bases:
_NDRConfField
,_NDRPacketListField
NDR Conformant PacketListField
- COUNT_FROM = True
- class scapy.layers.dcerpc.NDRConfStrLenField(*args, **kwargs)[source]
Bases:
_NDRConfField
,_NDRValueOf
,StrLenField
NDR Conformant StrLenField.
This is not a “string” per NDR, but an a conformant byte array (e.g. tower_octet_string)
- CONFORMANT_STRING = True
- LENGTH_FROM = True
- class scapy.layers.dcerpc.NDRConfStrLenFieldUtf16(*args, **kwargs)[source]
Bases:
_NDRConfField
,_NDRValueOf
,StrLenFieldUtf16
,_NDRUtf16
NDR Conformant StrLenField.
See NDRConfLenStrField for comment.
- CONFORMANT_STRING = True
- LENGTH_FROM = True
- ON_WIRE_SIZE_UTF16 = False
- class scapy.layers.dcerpc.NDRConfVarFieldListField(*args, **kwargs)[source]
Bases:
_NDRConfField
,_NDRVarField
,NDRFieldListField
NDR Conformant Varying FieldListField
- COUNT_FROM = True
- class scapy.layers.dcerpc.NDRConfVarPacketListField(*args, **kwargs)[source]
Bases:
_NDRConfField
,_NDRVarField
,_NDRPacketListField
NDR Conformant Varying PacketListField
- COUNT_FROM = True
- class scapy.layers.dcerpc.NDRConfVarStrLenField(*args, **kwargs)[source]
Bases:
_NDRConfField
,_NDRVarField
,_NDRValueOf
,StrLenField
NDR Conformant Varying StrLenField
- LENGTH_FROM = True
- class scapy.layers.dcerpc.NDRConfVarStrLenFieldUtf16(*args, **kwargs)[source]
Bases:
_NDRConfField
,_NDRVarField
,_NDRValueOf
,StrLenFieldUtf16
,_NDRUtf16
NDR Conformant Varying StrLenField
- LENGTH_FROM = True
- ON_WIRE_SIZE_UTF16 = False
- class scapy.layers.dcerpc.NDRConfVarStrNullField(*args, **kwargs)[source]
Bases:
_NDRConfField
,_NDRVarField
,_NDRValueOf
,StrNullField
NDR Conformant Varying StrNullField
- NULLFIELD = True
- class scapy.layers.dcerpc.NDRConfVarStrNullFieldUtf16(*args, **kwargs)[source]
Bases:
_NDRConfField
,_NDRVarField
,_NDRValueOf
,StrNullFieldUtf16
,_NDRUtf16
NDR Conformant Varying StrNullFieldUtf16
- NULLFIELD = True
- ON_WIRE_SIZE_UTF16 = False
- class scapy.layers.dcerpc.NDRConformantArray(_pkt, /, *, max_count=None, value=None)[source]
Bases:
_NDRPacket
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MAX COUNT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VALUE | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. NDRConformantArray
NDRConformantArray fields max_count
MultipleTypeField
(LELongField, LEIntField)None
value
MultipleTypeField
(PacketListField, FieldListField)[]
- class scapy.layers.dcerpc.NDRConformantString(_pkt, /, *, max_count=None, value=b'')[source]
Bases:
_NDRPacket
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MAX COUNT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VALUE | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. NDRConformantString
NDRConformantString fields max_count
MultipleTypeField
(LELongField, LEIntField)None
value
b''
- class scapy.layers.dcerpc.NDRContextHandle(_pkt, /, *, attributes=0, uuid=b'')[source]
Bases:
NDRPacket
- ALIGNMENT = (4, 4)
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ATTRIBUTES | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | UUID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. NDRContextHandle
NDRContextHandle fields attributes
0
uuid
b''
- class scapy.layers.dcerpc.NDRFieldListField(*args, **kwargs)[source]
Bases:
NDRConstructedType
,FieldListField
A FieldListField for NDR
- islist = 1
- class scapy.layers.dcerpc.NDRFullPointerField(fld, deferred=False, fmt='I')[source]
Bases:
_FieldContainer
A NDR Full/Unique pointer field encapsulation.
- Parameters:
deferred – This pointer is deferred. This means that it’s representation will not appear after the pointer. See [C706] 14.3.12.3 - Algorithm for Deferral of Referents
- EMBEDDED = False
- fld
- class scapy.layers.dcerpc.NDRIEEEDoubleField(*args, **kwargs)[source]
Bases:
_NDRField
- ALIGN = (8, 8)
- FMT = 'd'
- class scapy.layers.dcerpc.NDRIEEEFloatField(*args, **kwargs)[source]
Bases:
_NDRField
- ALIGN = (4, 4)
- FMT = 'f'
- class scapy.layers.dcerpc.NDRInt3264Field(*args, **kwargs)[source]
Bases:
_NDRLenField
- FMTS = ['I', 'Q']
- class scapy.layers.dcerpc.NDRIntEnumField(*args, **kwargs)[source]
Bases:
_NDRValueOf
,NDRAlign
- fld
- class scapy.layers.dcerpc.NDRIntField(*args, **kwargs)[source]
Bases:
_NDRField
- ALIGN = (4, 4)
- FMT = 'I'
- class scapy.layers.dcerpc.NDRLongField(*args, **kwargs)[source]
Bases:
_NDRField
- ALIGN = (8, 8)
- FMT = 'Q'
- class scapy.layers.dcerpc.NDRPacket(_pkt, /)[source]
Bases:
_NDRPacket
A NDR Packet. Handles pointer size & endianness
- ALIGNMENT = (1, 1)
- DEPORTED_CONFORMANTS = []
- aliastypes
- class scapy.layers.dcerpc.NDRPacketField(name, default, pkt_cls, **kwargs)[source]
Bases:
NDRConstructedType
,NDRAlign
- fld
- class scapy.layers.dcerpc.NDRPointer(_pkt, /, *, referent_id=None, value=None)[source]
Bases:
_NDRPacket
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | REFERENT ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VALUE | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. NDRPointer
NDRPointer fields referent_id
MultipleTypeField
(XLELongField, XLEIntField)1
value
None
- class scapy.layers.dcerpc.NDRRecursiveField(name, fmt='I')[source]
Bases:
Field
A special Field that is used for pointer recursion
- class scapy.layers.dcerpc.NDRRefEmbPointerField(fld, deferred=False, fmt='I')[source]
Bases:
NDRFullPointerField
A NDR Embedded Reference pointer
- EMBEDDED = True
- fld
- class scapy.layers.dcerpc.NDRSerialization1Header(_pkt, /, *, Version=1, Endianness=16, CommonHeaderLength=8, Filler=3435973836)[source]
Bases:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VERSION | ENDIANNESS | COMMONHEADERLENGTH | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FILLER | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. NDRSerialization1Header
NDRSerialization1Header fields Version
1
Endianness
16
CommonHeaderLength
8
Filler
3435973836
- class scapy.layers.dcerpc.NDRSerialization1PrivateHeader(_pkt, /, *, ObjectBufferLength=0, Filler=0)[source]
Bases:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OBJECTBUFFERLENGTH | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FILLER | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. NDRSerialization1PrivateHeader
NDRSerialization1PrivateHeader fields ObjectBufferLength
0
Filler
0
- class scapy.layers.dcerpc.NDRSerializeType1PacketField(*args, **kwargs)[source]
Bases:
_NDRSerializeType1
,PacketField
- ptr
- class scapy.layers.dcerpc.NDRSerializeType1PacketLenField(*args, **kwargs)[source]
Bases:
_NDRSerializeType1
,PacketLenField
- ptr
- class scapy.layers.dcerpc.NDRSerializeType1PacketListField(*args, **kwargs)[source]
Bases:
_NDRSerializeType1
,PacketListField
- ptr
- class scapy.layers.dcerpc.NDRShortField(*args, **kwargs)[source]
Bases:
_NDRField
- ALIGN = (2, 2)
- FMT = 'H'
- class scapy.layers.dcerpc.NDRSignedByteField(*args, **kwargs)[source]
Bases:
_NDRLenField
,SignedByteField
- class scapy.layers.dcerpc.NDRSignedInt3264Field(*args, **kwargs)[source]
Bases:
NDRInt3264Field
- FMTS = ['i', 'q']
- class scapy.layers.dcerpc.NDRSignedIntField(*args, **kwargs)[source]
Bases:
_NDRField
- ALIGN = (4, 4)
- FMT = 'i'
- class scapy.layers.dcerpc.NDRSignedLongField(*args, **kwargs)[source]
Bases:
_NDRField
- ALIGN = (8, 8)
- FMT = 'q'
- class scapy.layers.dcerpc.NDRSignedShortField(*args, **kwargs)[source]
Bases:
_NDRField
- ALIGN = (2, 2)
- FMT = 'h'
- class scapy.layers.dcerpc.NDRUnion(_pkt, /, *, tag=0, value=None)[source]
Bases:
_NDRPacket
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TAG | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VALUE | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. NDRUnion
NDRUnion fields tag
0
value
None
- class scapy.layers.dcerpc.NDRUnionField(flds, dflt, align, switch_fmt)[source]
Bases:
NDRConstructedType
,_NDRUnionField
- align
- switch_fmt
- class scapy.layers.dcerpc.NDRVarPacketListField(*args, **kwargs)[source]
Bases:
_NDRVarField
,_NDRPacketListField
NDR Varying PacketListField. Unused
- COUNT_FROM = True
- class scapy.layers.dcerpc.NDRVarStrLenField(*args, **kwargs)[source]
Bases:
_NDRVarField
,StrLenField
NDR Varying StrLenField
- LENGTH_FROM = True
- class scapy.layers.dcerpc.NDRVarStrLenFieldUtf16(*args, **kwargs)[source]
Bases:
_NDRVarField
,_NDRValueOf
,StrLenFieldUtf16
,_NDRUtf16
NDR Varying StrLenField
- LENGTH_FROM = True
- ON_WIRE_SIZE_UTF16 = False
- class scapy.layers.dcerpc.NDRVaryingArray(_pkt, /, *, offset=None, actual_count=None, value=None)[source]
Bases:
_NDRPacket
- 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OFFSET | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ACTUAL COUNT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VALUE | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. NDRVaryingArray
NDRVaryingArray fields offset
MultipleTypeField
(LELongField, LEIntField)0
actual_count
MultipleTypeField
(LELongField, LEIntField)None
value
None
- class scapy.layers.dcerpc.NL_AUTH_MESSAGE(_pkt, /, *, MessageType=0, Flags=<Flag 0 ()>, NetbiosDomainName=b'', NetbiosComputerName=b'', DnsDomainName=b'.', DnsHostName=b'.', NetbiosComputerNameUtf8=b'.')[source]
Bases:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MESSAGETYPE | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FLAGS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | NETBIOSDOMAINNAME | NETBIOSCOMPUTERNAME | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DNSDOMAINNAME | DNSHOSTNAME | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | NETBIOSCOMPUTERNAMEUTF8 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. NL_AUTH_MESSAGE
NL_AUTH_MESSAGE fields MessageType
0
Flags
<Flag 0 ()>
NetbiosDomainName
StrNullField
(Cond)b''
NetbiosComputerName
StrNullField
(Cond)b''
DnsDomainName
DNSStrField
(Cond)b'.'
DnsHostName
DNSStrField
(Cond)b'.'
NetbiosComputerNameUtf8
DNSStrField
(Cond)b'.'
- class scapy.layers.dcerpc.NL_AUTH_SIGNATURE(_pkt, /, *, SignatureAlgorithm=119, SealAlgorithm=65535, Pad=65535, Flags=0, SequenceNumber=b'', Checksum=b'', Confounder=b'', Reserved2=None)[source]
Bases:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SIGNATUREALGORITHM | SEALALGORITHM | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PAD | FLAGS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SEQUENCENUMBER | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CHECKSUM | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CONFOUNDER | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RESERVED2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. NL_AUTH_SIGNATURE
NL_AUTH_SIGNATURE fields SignatureAlgorithm
119
SealAlgorithm
65535
Pad
65535
Flags
0
SequenceNumber
b''
Checksum
b''
Confounder
XStrFixedLenField
(Cond)b''
Reserved2
MultipleTypeField
(StrFixedLenField, StrField)b''
- class scapy.layers.dcerpc.RPC_C_AUTHN(*values)[source]
Bases:
IntEnum
- CLOUD_AP = 36
- DCE_PRIVATE = 1
- DCE_PUBLIC = 2
- DEC_PUBLIC = 4
- DEFAULT = 4294967295
- DIGEST = 21
- DPA = 17
- GSS_KERBEROS = 16
- GSS_NEGOTIATE = 9
- GSS_SCHANNEL = 14
- KERNEL = 20
- LIVEXP_SSP = 35
- LIVE_SSP = 32
- MQ = 100
- MSN = 18
- MSONLINE = 82
- NEGO_EXTENDED = 30
- NETLOGON = 68
- NONE = 0
- PKU2U = 31
- WINNT = 10
- class scapy.layers.dcerpc.RPC_C_AUTHN_LEVEL(*values)[source]
Bases:
IntEnum
- CALL = 3
- CONNECT = 2
- DEFAULT = 0
- NONE = 1
- PKT = 4
- PKT_INTEGRITY = 5
- PKT_PRIVACY = 6
- scapy.layers.dcerpc.find_dcerpc_interface(name)[source]
Find an interface object through the name in the IDL