Module: Ronin::Exploits::Mixins::Binary
- Included in:
- FormatString, SEH, StackOverflow
- Defined in:
- lib/ronin/exploits/mixins/binary.rb
Overview
Adds methods for packing binary data.
Instance Method Summary collapse
-
#pack(type, value) ⇒ String
Packs a binary value for the given type.
-
#perform_validate ⇒ Object
Validates that the exploit defines an
arch
method and that all required params are set. -
#platform ⇒ Ronin::Support::Binary::CTypes, ...
The target platform.
Instance Method Details
#pack(type, value) ⇒ String
Packs a binary value for the given type.
104 105 106 |
# File 'lib/ronin/exploits/mixins/binary.rb', line 104 def pack(type,value) platform[type].pack(value) end |
#perform_validate ⇒ Object
Validates that the exploit defines an arch
method and that all
required params are set.
49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/ronin/exploits/mixins/binary.rb', line 49 def perform_validate unless respond_to?(:arch) raise(ValidationError,"exploit #{self.class} did not include Ronin::Exploits::Metadata::Arch or Ronin::Exploits::Mixins::HasTargets") end unless arch raise(ValidationError,"exploit #{self.class} did not include define an architecture") end super() end |
#platform ⇒ Ronin::Support::Binary::CTypes, ...
The target platform.
85 86 87 88 89 90 |
# File 'lib/ronin/exploits/mixins/binary.rb', line 85 def platform @platform ||= Support::Binary::CTypes.platform( arch: arch, os: (os if respond_to?(:os)) ) end |