scapy.layers.smbclient

SMB 1 / 2 Client Automaton

class scapy.layers.smbclient.NTLM_SMB_Client(self, debug: int = 0, store: int = 1, **kargs: Any)[source]

Bases: NTLM_Client, Automaton

AUTHENTICATED(*args: ATMT, **kargs: Any) NewStateRequested[source]
BEGIN(*args: ATMT, **kargs: Any) NewStateRequested[source]
DO_RUN_SCRIPT(*args: ATMT, **kargs: Any) NewStateRequested[source]
NEGOTIATED(*args: ATMT, **kargs: Any) NewStateRequested[source]
SENT_NEGOTIATE(*args: ATMT, **kargs: Any) NewStateRequested[source]
SENT_SETUP_ANDX_REQUEST(*args: ATMT, **kargs: Any) NewStateRequested[source]
SMB2_NEGOTIATE(*args: ATMT, **kargs: Any) NewStateRequested[source]
SOCKET_MODE(*args: ATMT, **kargs: Any) NewStateRequested[source]
actions: Dict[str, List[_StateWrapper]] = {'authenticated_post_actions': [], 'continue_smb2': [], 'incoming_data_received': [<function NTLM_SMB_Client.receive_data>], 'outgoing_data_received': [<function NTLM_SMB_Client.send_data>], 'receive_negotiate_response': [], 'receive_packet': [<function NTLM_SMB_Client.pass_packet>], 'receive_setup_andx_response': [], 'send_negotiate': [<function NTLM_SMB_Client.on_negotiate>], 'send_negotiate_smb2': [<function NTLM_SMB_Client.on_negotiate_smb2>], 'should_send_setup_andx_request': [<function NTLM_SMB_Client.send_setup_andx_request>]}
authenticated_post_actions()[source]
breakpoints: Set[_StateWrapper]
cls[source]

alias of NBTSession

conditions: Dict[str, List[_StateWrapper]] = {'AUTHENTICATED': [<function NTLM_SMB_Client.authenticated_post_actions>], 'BEGIN': [<function NTLM_SMB_Client.continue_smb2>, <function NTLM_SMB_Client.send_negotiate>], 'DO_RUN_SCRIPT': [], 'NEGOTIATED': [<function NTLM_SMB_Client.should_send_setup_andx_request>], 'SENT_NEGOTIATE': [], 'SENT_SETUP_ANDX_REQUEST': [], 'SMB2_NEGOTIATE': [<function NTLM_SMB_Client.send_negotiate_smb2>], 'SOCKET_MODE': []}
continue_smb2()[source]
incoming_data_received(pkt)[source]
initial_states: List[_StateWrapper] = [<function ATMT.state.<locals>.deco.<locals>._state_wrapper>]
intercepted_packet: Union[None, Packet]
interception_points: Set[_StateWrapper]
ioevents: Dict[str, List[_StateWrapper]] = {'AUTHENTICATED': [], 'BEGIN': [], 'DO_RUN_SCRIPT': [], 'NEGOTIATED': [], 'SENT_NEGOTIATE': [], 'SENT_SETUP_ANDX_REQUEST': [], 'SMB2_NEGOTIATE': [], 'SOCKET_MODE': [<function NTLM_SMB_Client.outgoing_data_received>]}
ionames: List[str] = ['smbpipe']
iosupersockets: List[SuperSocket] = [<function NTLM_SMB_Client.outgoing_data_received>]
kwargs_cls = {<class 'scapy.layers.smbserver.NTLM_SMB_Server'>: {'CLIENT_PROVIDES_NEGOEX': True, 'ECHO': True}}
on_negotiate()[source]
on_negotiate_smb2()[source]
outgoing_data_received(fd)[source]
packets: PacketList
pass_packet(pkt)[source]
port = 445
receive_data(pkt)[source]
receive_negotiate_response(pkt)[source]
receive_packet(pkt)[source]
receive_setup_andx_response(pkt)[source]
recv_conditions: Dict[str, List[_StateWrapper]] = {'AUTHENTICATED': [<function NTLM_SMB_Client.receive_packet>], 'BEGIN': [], 'DO_RUN_SCRIPT': [], 'NEGOTIATED': [], 'SENT_NEGOTIATE': [<function NTLM_SMB_Client.receive_negotiate_response>], 'SENT_SETUP_ANDX_REQUEST': [<function NTLM_SMB_Client.receive_setup_andx_response>], 'SMB2_NEGOTIATE': [], 'SOCKET_MODE': [<function NTLM_SMB_Client.incoming_data_received>]}
send_data(d)[source]
send_negotiate()[source]
send_negotiate_smb2()[source]
send_setup_andx_request(ntlm_tuple)[source]
should_send_setup_andx_request()[source]
states: Dict[str, _StateWrapper] = {'AUTHENTICATED': <function ATMT.state.<locals>.deco.<locals>._state_wrapper>, 'BEGIN': <function ATMT.state.<locals>.deco.<locals>._state_wrapper>, 'DO_RUN_SCRIPT': <function ATMT.state.<locals>.deco.<locals>._state_wrapper>, 'NEGOTIATED': <function ATMT.state.<locals>.deco.<locals>._state_wrapper>, 'SENT_NEGOTIATE': <function ATMT.state.<locals>.deco.<locals>._state_wrapper>, 'SENT_SETUP_ANDX_REQUEST': <function ATMT.state.<locals>.deco.<locals>._state_wrapper>, 'SMB2_NEGOTIATE': <function ATMT.state.<locals>.deco.<locals>._state_wrapper>, 'SOCKET_MODE': <function ATMT.state.<locals>.deco.<locals>._state_wrapper>}
stop_states: List[_StateWrapper] = []
threadid: Optional[int]
timeout: Dict[str, _TimerList] = {'AUTHENTICATED': [], 'BEGIN': [], 'DO_RUN_SCRIPT': [], 'NEGOTIATED': [], 'SENT_NEGOTIATE': [], 'SENT_SETUP_ANDX_REQUEST': [], 'SMB2_NEGOTIATE': [], 'SOCKET_MODE': []}