Module: Msf::Payload::Single

Included in:
Windows::Exec, Windows::LoadLibrary
Defined in:
lib/msf/core/payload/single.rb

Overview

Base mixin interface for use by single payloads. Single payloads are differentiated from stagers and stages by the fact that they run as part of the first stage and have no subsequent stages.

Instance Method Summary collapse

Instance Method Details

#generateObject

Conditional generation depending on whether or not this single payload is used in conjunction with a stager. When a stager is used, generate will return the stager. When a stager is not used, generate will return the single payload


27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/msf/core/payload/single.rb', line 27

def generate
  # If we're staged, then we call the super to generate the STAGER
  if staged?
    super
  # Otherwise, we'll be generating the stage, let's do that now
  else
    # If they defined a custom method that will return the payload, then
    # call it
    if self.class.method_defined?(:generate_stage)
      generate_stage
    # Otherwise, just use the default method to generate the single
    # payload
    else
      super
    end
  end
end

#payload_typeObject

Sets the payload type to that of a single payload.


17
18
19
# File 'lib/msf/core/payload/single.rb', line 17

def payload_type
  return Msf::Payload::Type::Single
end