Metasploit Framework
Ruby PowerShell JavaScript Assembly HTML Cucumber
Latest commit d407787 Jan 20, 2017 @pbarry-r7 pbarry-r7 Land #7850, Provide more informative error messages when the ipbloard…
…_login scanner module fails to connect (fixes #7849)
Failed to load latest commit information.
.github Fix link Feb 22, 2016
app Move shared example from pro into framework Apr 7, 2016
config Land #6556, include Vagrant development environment provisioner Jun 9, 2016
data Land #7796, Improve zip module windows script fallback Jan 17, 2017
db Bump version of framework to 4.13.11 Jan 4, 2017
documentation Land #7833, update tomcat_administration module documentation Jan 17, 2017
external Land #7461, convert futex_requeue (towelroot) module to use targettin… Jan 11, 2017
features Fix #2504, edit command fixes I missed 3y ago Jan 8, 2017
lib Land #7771, Add history deduplication Jan 19, 2017
modules This closes #7849 on the confusing message. Jan 19, 2017
plugins Add database check to WMAP plugin Dec 31, 2016
script rails generate cucumber:install Aug 27, 2014
scripts delete meterpreter scripts with replacement post modules Jan 12, 2017
spec Move Rex::Text::Table workspace output to -v Jan 16, 2017
test make the stdapi_fs_file_move test unconditional Nov 29, 2016
tools revert unrelated changes Dec 22, 2016
.gitignore Merge branch 'master' into vagrant Feb 20, 2016
.gitmodules Add RDI submodule, port Kitrap0d Nov 27, 2013
.mailmap refine rageltman, add rwhitcroft Dec 22, 2016
.rspec Add modern --require to .rspec Oct 8, 2014
.rubocop.yml Reapply PR #4113 (removed via #4175) Nov 11, 2014
.ruby-gemset Restoring ruby and gemset files May 20, 2014
.ruby-version bump ruby version Nov 22, 2016
.simplecov Remove fastlib Sep 18, 2014
.travis.yml update to trusty Dec 23, 2016
.yardopts Various merge resolutions from master <- staging Aug 15, 2014 Add individual contacts Jan 13, 2016 Add note about release notes to Aug 22, 2016
COPYING Updated COPYING Jan 17, 2017
Gemfile revert testing changes from gemfile Jan 3, 2017
Gemfile.local.example Various merge resolutions from master <- staging Aug 15, 2014
Gemfile.lock Bump version of framework to 4.13.15 Jan 13, 2017
HACKING Update link for The Metasploit Development Environment Jul 15, 2014
LICENSE bump Jan 18, 2017 Use SVG badges to please the eyes 👀 Dec 12, 2015
Rakefile Merge branch 'feature/MSP-11130/metasploit-framework-spec-constants' … Nov 5, 2014
Vagrantfile switch to inline provisioning, use official ubuntu vagrant box Jun 9, 2016
metasploit-framework.gemspec bump mettle gem to include pivoting support Jan 10, 2017
msfconsole @wvu-r7 is a skilled negotiator. s/stdout/stderr/ Oct 17, 2014
msfd Initialize the DisableBanner option Oct 8, 2015
msfrpc Change {} back to do/end Mar 9, 2015
msfrpcd allow overriding the default timeout for a session May 1, 2015
msfupdate File.exists? must die Apr 21, 2016
msfvenom Sort msfvenom --help-platforms Aug 25, 2016

Metasploit Build Status Code Climate

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

The latest version of this software is available from:

Bug tracking and development information can be found at:

New bugs and feature requests should be directed to:

API documentation for writing modules can be found at:

Questions and suggestions can be sent to:


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.


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.