Class: PacketGen::Plugin::NTLM::Negotiate

Inherits:
PacketGen::Plugin::NTLM show all
Defined in:
lib/packetgen/plugin/ntlm/negotiate.rb

Overview

NTLM Negotiate message

Author:

  • Sylvain Daubert

Constant Summary

Constants inherited from PacketGen::Plugin::NTLM

AVPAIR_TYPES, EOLAvPair, Int32leAvPair, SIGNATURE, StringAvPair, TYPES, TimestampAvPair, VOID_CHALLENGE, VOID_VERSION

Negotiate flags collapse

Instance Attribute Summary collapse

Attributes inherited from PacketGen::Plugin::NTLM

#payload, #signature, #type

Method Summary

Methods inherited from PacketGen::Plugin::NTLM

#calc_length, define_in_payload, define_negotiate_flags, #initialize, read, #read, #to_s

Constructor Details

This class inherits a constructor from PacketGen::Plugin::NTLM

Instance Attribute Details

#always_sign?Boolean

Also known as flags_m?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#anonymous?Boolean

Also known as flags_j?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#datagram?Boolean

Also known as flags_f?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#domain_namePacketGen::Types::String

Name of the client authentication domain. Must be OEM encoded.

Returns:

  • (PacketGen::Types::String)


14
15
16
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 14

def domain_name
  @domain_name
end

#domain_name_lenInteger

2-byte domain name length

Returns:

  • (Integer)


105
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 105

define_in_payload :domain_name, PacketGen::Types::String

#domain_name_maxlenInteger

2-byte domain name max length

Returns:

  • (Integer)


105
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 105

define_in_payload :domain_name, PacketGen::Types::String

#domain_name_offsetInteger

4-byte domain name offset

Returns:

  • (Integer)


105
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 105

define_in_payload :domain_name, PacketGen::Types::String

#ext_session_security?Boolean

Also known as flags_p?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#flagsInteger

Negotiate flags

Returns:

  • (Integer)


# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 19

#identify?Boolean

Also known as flags_q

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#key_exch?Boolean

Also known as flags_v?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#lm_key?Boolean

Also known as flags_g?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#nego128?Boolean

Also known as flags_u?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#nego56?Boolean

Also known as flags_w?.

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#non_nt_session_key?Boolean

Also known as flags_r?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#ntlm?Boolean

Also known as flags_h?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#oem?Boolean

Also known as flags_b?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#oem_domain_supplied?Boolean

Also known as flags_k?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#oem_workstation_supplied?Boolean

Also known as flags_l?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#request_target?Boolean

Also known as flags_c?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#seal?Boolean

Also known as flags_e?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#sign?Boolean

Also known as flags_d?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#target_info?Boolean

Also known as flags_s?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#target_type_domain?Boolean

Also known as flags_n?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#target_type_server?Boolean

Also known as flags_o?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#unicode?Boolean

Also known as flags_a?

Returns:

  • (Boolean)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#versionString

8-byte version information

Returns:

  • (String)


124
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 124

define_field_before :payload, :version, PacketGen::Types::String, static_length: 8, default: VOID_VERSION

#version?Integer

Also known as flags_t

Returns:

  • (Integer)


90
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 90

define_negotiate_flags

#workstationPacketGen::Types::String

Name of the client machine. Must be OEM encoded.

Returns:

  • (PacketGen::Types::String)


16
17
18
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 16

def workstation
  @workstation
end

#workstation_lenInteger

2-byte workstation length

Returns:

  • (Integer)


119
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 119

define_in_payload :workstation, PacketGen::Types::String

#workstation_maxlenInteger

2-byte workstation max length

Returns:

  • (Integer)


119
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 119

define_in_payload :workstation, PacketGen::Types::String

#workstation_offsetInteger

4-byte workstation offset

Returns:

  • (Integer)


119
# File 'lib/packetgen/plugin/ntlm/negotiate.rb', line 119

define_in_payload :workstation, PacketGen::Types::String