Module: Msf::Payload::Windows::ReflectiveLoaderX64

Includes:
ReflectiveLoaderCommon
Included in:
MeterpreterLoader_x64
Defined in:
lib/msf/core/payload/windows/x64/reflective_loader_x64.rb

Instance Method Summary collapse

Methods included from ReflectiveLoaderCommon

#build_reflective_loader, #datastore_reflective_loader_iv, #initialize

Instance Method Details

#reflective_loader(opts = {}) ⇒ String

Assemble the polymorphic x64 reflective loader shellcode with a fresh ROR13 IV. See Msf::Payload::Windows::ReflectiveLoaderCommon#build_reflective_loader for the patching pipeline.

Parameters:

  • opts (Hash) (defaults to: {})

Options Hash (opts):

  • :iv (Integer)

    32-bit seed for ROR13 hashing (random when omitted)

Returns:

  • (String)

    assembled and patched x64 reflective loader shellcode

Raises:



12
13
14
15
16
17
18
19
20
# File 'lib/msf/core/payload/windows/x64/reflective_loader_x64.rb', line 12

def reflective_loader(opts = {})
  build_reflective_loader(opts, {
    graphml_path:      File.join(Msf::Config.install_root, 'data', 'shellcode', 'reflective_loader.x64.graphml'),
    arch:              ARCH_X64,
    metasm_arch:       Metasm::X64,
    iv_patch_prefixes: ['db 0x41, 0xbc,', 'db 0xb8,'],
    dll_hash_base:     'db 0x41, 0x81, 0xfc,'
  })
end