How rapid7/metasploit-framework works
Metasploit Framework is a security testing platform whose README identifies msfconsole as its primary interface. A typical user selects a module to probe or exploit a target, then uses payload and post-exploitation capabilities. The tree also shows auxiliary scanners, encoders, protocol services, session management, and persistent storage. The available excerpts do not expose the framework’s module-dispatch path, so those runtime connections are shown as unverified; this is a product-level map, not a traced call graph.
Main entry points: modules Module catalog · manageengine_adaudit_plus_authenticated_rce.rb Exploit modules · manageengine_pmp_privesc.rb Auxiliary modules · enum_services.rb Post modules
Components 16
User interface
- msfconsole
Security modules
- Module catalog
modules - Exploit modules
modules/exploits/windows/http/manageengine_adaudit_plus_authenticated_rce.rb - Auxiliary modules
modules/auxiliary/admin/http/manageengine_pmp_privesc.rb - Post modules
modules/post/windows/gather/enum_services.rb
Payloads and sessions
- Payload modules
modules/payloads/singles/windows/dns_txt_query_exec.rb - Encoders
modules/encoders/x86/service.rb - Exploit resources
data/exploits - Session manager
lib/msf/core/session_manager.rb - Common engine
lib/metasploit/framework/common_engine.rb
Framework services
- Service manager
lib/rex/service_manager.rb - Data services
lib/metasploit/framework/data_service - Persistent storage
lib/msf/base/persistent_storage.rb - Crawler storage
lib/anemone/storage.rb - Protocol servers
lib/rex/proto
Other components
- Operator
Connections 15
- Operator → msfconsole: uses
- msfconsole → Module catalog: selects from
- Module catalog → Exploit modules: dispatches
- Module catalog → Auxiliary modules: dispatches
- Module catalog → Post modules: dispatches
- Exploit modules → Payload modules: uses
- Payload modules → Encoders: encodes with
- Exploit modules → Exploit resources: uses resources
- Post modules → Session manager: acts on
- msfconsole → Service manager: manages
- Service manager → Protocol servers: starts
- Common engine → Session manager: supports
- msfconsole → Data services: accesses
- Data services → Persistent storage: persists data
- Auxiliary modules → Crawler storage: may use