Module: Msf::Payload::Windows::EncryptedPayloadOpts

Includes:
UUID::Options
Included in:
EncryptedReverseTcp
Defined in:
lib/msf/core/payload/windows/encrypted_payload_opts.rb

Constant Summary collapse

File.join(Msf::Config.data_directory, 'utilities', 'encrypted_payload')

Constants included from Rex::Payloads::Meterpreter::UriChecksum

Rex::Payloads::Meterpreter::UriChecksum::URI_CHECKSUM_CONN, Rex::Payloads::Meterpreter::UriChecksum::URI_CHECKSUM_CONN_MAX_LEN, Rex::Payloads::Meterpreter::UriChecksum::URI_CHECKSUM_INITJ, Rex::Payloads::Meterpreter::UriChecksum::URI_CHECKSUM_INITN, Rex::Payloads::Meterpreter::UriChecksum::URI_CHECKSUM_INITP, Rex::Payloads::Meterpreter::UriChecksum::URI_CHECKSUM_INITW, Rex::Payloads::Meterpreter::UriChecksum::URI_CHECKSUM_INIT_CONN, Rex::Payloads::Meterpreter::UriChecksum::URI_CHECKSUM_MIN_LEN, Rex::Payloads::Meterpreter::UriChecksum::URI_CHECKSUM_MODES, Rex::Payloads::Meterpreter::UriChecksum::URI_CHECKSUM_UUID_MIN_LEN

Instance Method Summary collapse

Methods included from UUID::Options

#generate_payload_uuid, #generate_uri_uuid_mode, #record_payload_uuid, #record_payload_uuid_url

Methods included from Rex::Payloads::Meterpreter::UriChecksum

#generate_uri_checksum, #generate_uri_uuid, #process_uri_resource, #uri_checksum_lookup

Instance Method Details

#initialize(info = {}) ⇒ Object


10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/msf/core/payload/windows/encrypted_payload_opts.rb', line 10

def initialize(info={})
  super

  register_options(
  [
    OptBool.new('CallWSAStartup', [ false, 'Adds the function that initializes the Winsock library', true ]),
    OptString.new('ChachaKey', [ false, 'The initial key to encrypt payload traffic with', SecureRandom.hex(16) ]),
    OptString.new('ChachaNonce', [ false, 'The initial nonce to use to encrypt payload traffic with', SecureRandom.hex(6) ])
  ], self.class)

  register_advanced_options(
  [
    OptBool.new('StripSymbols', [ false, 'Payload will be compiled without symbols', true ]),
    OptEnum.new('OptLevel', [ false, 'The optimization level to compile with', 'O2', [ 'Og', 'Os', 'O0', 'O1', 'O2', 'O3' ] ]),
    OptBool.new('KeepSrc', [ false, 'Keep source code after compiling it', false ]),
    OptBool.new('KeepExe', [ false, 'Keep executable after compiling the payload', false ]),
    OptBool.new('PayloadUUIDTracking', [ true, 'Whether or not to automatically register generated UUIDs', true ])
  ], self.class)
end