# -*- coding: binary -*- ### # # framework-core # -------------- # # The core library provides all of the means by which to interact # with the framework insofar as manipulating encoders, nops, # payloads, exploits, auxiliary, and sessions. # ### # Include backported features for older versions of Ruby require 'backports' # Remove bigdecimal warning - start # https://github.com/ruby/bigdecimal/pull/115 # https://github.com/rapid7/metasploit-framework/pull/11184#issuecomment-461971266 # TODO: remove when upgrading from rails 4.x require 'bigdecimal' def BigDecimal.new(*args, **kwargs) return BigDecimal(*args) if kwargs.empty? BigDecimal(*args, **kwargs) end # Remove bigdecimal warning - end # The framework-core depends on Rex require 'rex' require 'rex/ui' require 'rex/arch' include Rex::Arch module Msf autoload :Author, 'msf/core/author' autoload :Platform, 'msf/core/platform' autoload :Reference, 'msf/core/reference' autoload :SiteReference, 'msf/core/site_reference' autoload :Target, 'msf/core/target' # # Constants # LogSource = "core" end # General require 'msf/core/constants' require 'msf/core/exceptions' require 'msf/core/data_store' require 'msf/core/option_container' # Event subscriber interfaces require 'msf/events' # Framework context and core classes require 'msf/core/framework' require 'msf/core/db_manager' require 'msf/core/event_dispatcher' require 'msf/core/module_manager' require 'msf/core/module_set' require 'msf/core/plugin_manager' require 'msf/core/session' require 'msf/core/session_manager' require 'msf/core/analyze' # Wrappers require 'msf/core/encoded_payload' # Pseudo-modules require 'msf/core/handler' # Modules require 'msf/core/module' require 'msf/core/encoder' require 'msf/core/auxiliary' require 'msf/core/exploit' require 'msf/core/nop' require 'msf/core/payload' require 'msf/core/post' require 'msf/core/evasion' # Drivers require 'msf/core/exploit_driver' require 'msf/core/evasion_driver'