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_name ⇒ BinStruct::String

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

Returns:

  • (BinStruct::String)


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

def domain_name
  @domain_name
end

#domain_name_len ⇒ Integer

2-byte domain name length

Returns:

  • (Integer)


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

define_in_payload :domain_name, BinStruct::String

#domain_name_maxlen ⇒ Integer

2-byte domain name max length

Returns:

  • (Integer)


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

define_in_payload :domain_name, BinStruct::String

#domain_name_offset ⇒ Integer

4-byte domain name offset

Returns:

  • (Integer)


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

define_in_payload :domain_name, BinStruct::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

#flags ⇒ Integer

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

#version ⇒ String

8-byte version information

Returns:

  • (String)


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

define_attr_before :payload, :version, BinStruct::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

#workstation ⇒ BinStruct::String

Name of the client machine. Must be OEM encoded.

Returns:

  • (BinStruct::String)


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

def workstation
  @workstation
end

#workstation_len ⇒ Integer

2-byte workstation length

Returns:

  • (Integer)


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

define_in_payload :workstation, BinStruct::String

#workstation_maxlen ⇒ Integer

2-byte workstation max length

Returns:

  • (Integer)


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

define_in_payload :workstation, BinStruct::String

#workstation_offset ⇒ Integer

4-byte workstation offset

Returns:

  • (Integer)


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

define_in_payload :workstation, BinStruct::String