Go to file
Jeffrey Martin f779f0f482
consolidate the config directory lookups
The user configuration directory can be overridden via environment
variables or configuration files.

In the current implementation `Msf::Config.config_directory` should be
utilized for consistent location reporting. `Msf::Config.get_config_root`
is reserved to generation of a default location and should be considered
`private` as it ignores some injected configuration options. Currently
autoloading does not allow application of the `private` keyword to this method,
requiring guidance during development that module writers should access the
full configured `user` value of `Msf::Config.config_directory`.
2022-07-25 15:27:21 -05:00
.github Workflows: Labels: Fix typo 2022-07-21 12:08:57 +10:00
app deprecated model error pattern 2021-08-09 12:16:12 -05:00
config remove laoder initializer 2021-08-09 12:16:12 -05:00
data Fix default LDAP query descriptions due to some typos 2022-07-22 12:13:14 -05:00
db automatic module_metadata_base.json update 2022-07-21 18:57:33 -05:00
docker remove debug output 2018-10-21 22:34:19 +02:00
docs update docs for Pro links 2022-07-11 10:09:24 -05:00
documentation Land #16598, Add in LDAP Query Module 2022-07-19 09:51:00 -04:00
external Land #1642, Add module for cve-2022-0995 2022-04-21 09:12:47 -05:00
kubernetes Meterpreter Helm chart tweaks 2021-11-05 15:14:19 +00:00
lib consolidate the config directory lookups 2022-07-25 15:27:21 -05:00
modules consolidate the config directory lookups 2022-07-25 15:27:21 -05:00
plugins consolidate the config directory lookups 2022-07-25 15:27:21 -05:00
script kill cucumber in framework 2017-07-12 08:00:29 -05:00
scripts Deprecate checkvm script 2022-07-16 18:40:32 +10:00
spec consolidate the config directory lookups 2022-07-25 15:27:21 -05:00
test Update test module to properly handle multiline return values so that we can properly test things like dumping file content 2022-06-17 13:35:32 -05:00
tools Land #16627, Add some error handling to update_payload_cache_size script 2022-06-16 10:25:44 -05:00
.dockerignore change docker root exec 2018-10-21 22:30:01 +02:00
.git-blame-ignore-revs Update git-blame-ignore-revs to ignore tabs to spaces commits 2022-05-04 13:15:53 +01:00
.gitignore Add tests for aux and exploit cmd_check and cmd_run 2021-07-08 17:32:52 +01:00
.gitmodules Add RDI submodule, port Kitrap0d 2013-11-27 16:04:41 +10:00
.mailmap Add Simon Janusz to mail map 2021-07-13 10:38:50 +01:00
.rspec Add modern --require to .rspec 2014-10-08 10:55:40 -05:00
.rubocop.yml Update rubocop rules for test modules 2022-04-28 14:11:26 +01:00
.ruby-gemset Remove gitignore, change to metasploit-framework 2013-09-13 12:44:19 -05:00
.ruby-version bump ruby 3.0 2021-12-01 12:02:59 -06:00
.simplecov Remove fastlib 2014-09-18 15:24:21 -05:00
.yardopts remove HACKING from yardopts 2017-09-07 02:35:56 -05:00
CODE_OF_CONDUCT.md Change individual contacts 2018-12-13 10:38:55 -06:00
CONTRIBUTING.md Fix up a typo in CONTRIBUTING.md 2021-06-05 14:31:15 -05:00
COPYING Update LICENSE and COPYING 2020-01-18 18:45:37 -06:00
CURRENT.md add CURRENT.md to track major changes and how to migrate with them 2018-01-18 06:35:53 -06:00
Dockerfile Install mingw in Docker 2022-03-08 17:43:51 +00:00
Gemfile Update to RubySMB v3.1.2 for server requirements 2022-05-16 14:39:45 -04:00
Gemfile.local.example Add in fix to use relative paths for Gemfile.local.example, thereby fixing review comments 2020-09-24 09:25:03 -05:00
Gemfile.lock Bump version of framework to 6.2.9 2022-07-21 12:06:12 -05:00
LICENSE Update license terms to properly comply with MIT license on exploit code. 2022-04-05 16:31:03 -05:00
LICENSE_GEMS Bump version of framework to 6.2.9 2022-07-21 12:06:12 -05:00
README.md Added the link for 'COPYING' file 2019-10-07 13:16:15 +05:30
Rakefile Use zeitwerk for lib/msf/core folder 2020-12-07 10:31:45 +00:00
Vagrantfile moves v.gui comment to appropriate location(s) 2020-10-08 11:59:09 -05:00
docker-compose.override.yml change docker root exec 2018-10-21 22:30:01 +02:00
docker-compose.yml docker: hassle-free DB bootstrap 2021-01-08 16:20:11 +01:00
metasploit-framework.gemspec Update metasploit payloads to 2.0.94 2022-06-23 18:46:51 +02:00
msf-json-rpc.ru Add health check functionality 2021-04-16 01:59:22 +01:00
msf-ws.ru Use zeitwerk for lib/msf/core folder 2020-12-07 10:31:45 +00:00
msfconsole move web service api code into library path 2021-08-09 12:22:43 -05:00
msfd remove `msf` folder requires 2021-01-18 14:21:54 +00:00
msfdb consolidate the config directory lookups 2022-07-25 15:27:21 -05:00
msfrpc Remove extra `require` for a now deleted file that no longer exists 2021-03-02 10:57:07 +00:00
msfrpcd consolidate the config directory lookups 2022-07-25 15:27:21 -05:00
msfupdate we don't need ruby-backports anymore (or maybe we can use it more conditionally on Ruby 2.6), it uses a lot of memory 2019-12-02 09:03:58 -06:00
msfvenom Generate machine readable msfvenom output when pipes are used 2021-05-26 11:13:49 +01:00

README.md

Metasploit Build Status Maintainability Test Coverage Docker Pulls

The Metasploit Framework is released under a BSD-style license. See COPYING for more details.

The latest version of this software is available from: https://metasploit.com

Bug tracking and development information can be found at: https://github.com/rapid7/metasploit-framework

New bugs and feature requests should be directed to: https://r-7.co/MSF-BUGv1

API documentation for writing modules can be found at: https://rapid7.github.io/metasploit-framework/api

Questions and suggestions can be sent to: Freenode IRC channel or e-mail the metasploit-hackers mailing list

Installing

Generally, you should use the free installer, which contains all of the dependencies and will get you up and running with a few clicks. See the Dev Environment Setup if you'd like to deal with dependencies on your own.

Using Metasploit

Metasploit can do all sorts of things. The first thing you'll want to do is start msfconsole, but after that, you'll probably be best served by reading Metasploit Unleashed, the great community resources, or the wiki.

Contributing

See the Dev Environment Setup guide on GitHub, which will walk you through the whole process from installing all the dependencies, to cloning the repository, and finally to submitting a pull request. For slightly more information, see Contributing.