Class: RubySMB::SMB1::Packet::SessionSetupRequest

Inherits:
GenericPacket
  • Object
show all
Defined in:
lib/ruby_smb/smb1/packet/session_setup_request.rb

Overview

A SMB1 SMB_COM_SESSION_SETUP_ANDX Request Packet as defined in 2.2.4.6.1

Defined Under Namespace

Classes: DataBlock, ParameterBlock

Instance Method Summary collapse

Methods inherited from GenericPacket

describe, #display, #packet_smb_version, #status_code

Instance Method Details

#initialize_instanceObject



35
36
37
38
# File 'lib/ruby_smb/smb1/packet/session_setup_request.rb', line 35

def initialize_instance
  super
  smb_header.command = RubySMB::SMB1::Commands::SMB_COM_SESSION_SETUP
end

#set_type1_blob(type1_message) ⇒ void

This method returns an undefined value.

Takes an NTLM Type 1 Message and creates the GSS Security Blob for it and sets it in the RubySMB::SMB1::Packet::SessionSetupRequest::DataBlock#security_blob field. It also automaticaly sets the length in RubySMB::SMB1::Packet::SessionSetupRequest::ParameterBlock#security_blob_length

Parameters:

  • type1_message (String)

    the serialized Type 1 NTLM message



47
48
49
50
51
52
# File 'lib/ruby_smb/smb1/packet/session_setup_request.rb', line 47

def set_type1_blob(type1_message)
  gss_blob = RubySMB::Gss.gss_type1(type1_message)
  parameter_block.security_blob_length = gss_blob.length
  data_block.security_blob = gss_blob

end

#set_type3_blob(type3_message) ⇒ void

This method returns an undefined value.

Takes an NTLM Type 3 Message and creates the GSS Security Blob for it and sets it in the RubySMB::SMB1::Packet::SessionSetupRequest::DataBlock#security_blob field. It also automaticaly sets the length in RubySMB::SMB1::Packet::SessionSetupRequest::ParameterBlock#security_blob_length

Parameters:

  • type3_message (String)

    the serialized Type 3 NTLM message



61
62
63
64
65
# File 'lib/ruby_smb/smb1/packet/session_setup_request.rb', line 61

def set_type3_blob(type3_message)
  gss_blob = RubySMB::Gss.gss_type3(type3_message)
  parameter_block.security_blob_length = gss_blob.length
  data_block.security_blob = gss_blob
end