Metasploit Project

From Wikipedia, the free encyclopedia - View original article

Metasploit logo and wordmark.png
Metasploit Community showing three hosts, two of which were compromised by an exploit
Developer(s)Rapid7 LLC
Stable release4.5 / May 1, 2013 (2013-05-01)
Development statusActive
Operating systemCross-platform
LicenseFramework: BSD,[1] Community/Express/Pro: Proprietary
  (Redirected from Metasploit)
Jump to: navigation, search
Metasploit logo and wordmark.png
Metasploit Community showing three hosts, two of which were compromised by an exploit
Developer(s)Rapid7 LLC
Stable release4.5 / May 1, 2013 (2013-05-01)
Development statusActive
Operating systemCross-platform
LicenseFramework: BSD,[1] Community/Express/Pro: Proprietary

The Metasploit Project is a computer security project that provides information about security vulnerabilities and aids in penetration testing and IDS signature development.

Its best-known sub-project is the open source[1] Metasploit Framework, a tool for developing and executing exploit code against a remote target machine. Other important sub-projects include the Opcode Database, shellcode archive and related research.

The Metasploit Project is well known for its anti-forensic and evasion tools, some of which are built into the Metasploit Framework.


Metasploit was created by HD Moore in 2003 as a portable network tool using Perl. By 2007, the Metasploit Framework had been completely rewritten in Ruby.[2] On October 21, 2009, the Metasploit Project announced[3] that it had been acquired by Rapid7, a security company that provides unified vulnerability management solutions.

Like comparable commercial products such as Immunity's Canvas or Core Security Technologies' Core Impact, Metasploit can be used to test the vulnerability of computer systems or to break into remote systems. Like many information security tools, Metasploit can be used for both legitimate and unauthorized activities. Since the acquisition of the Metasploit Framework, Rapid7 has added two open core proprietary editions called Metasploit Express and Metasploit Pro.

Metasploit's emerging position as the de facto exploit development framework[4] led to the release of software vulnerability advisories often accompanied by a third party Metasploit exploit module that highlights the exploitability, risk and remediation of that particular bug.[5][6] Metasploit 3.0 began to include fuzzing tools, used to discover software vulnerabilities, rather than just exploits for known bugs. This avenue can be seen with the integration of the lorcon wireless (802.11) toolset into Metasploit 3.0 in November 2006. Metasploit 4.0 was released in August 2011.

Metasploit Framework[edit]

The basic steps for exploiting a system using the Framework include:

  1. Choosing and configuring an exploit (code that enters a target system by taking advantage of one of its bugs; about 900 different exploits for Windows, Unix/Linux and Mac OS X systems are included);
  2. Optionally checking whether the intended target system is susceptible to the chosen exploit;
  3. Choosing and configuring a payload (code that will be executed on the target system upon successful entry; for instance, a remote shell or a VNC server);
  4. Choosing the encoding technique so that the intrusion-prevention system (IPS) ignores the encoded payload;
  5. Executing the exploit.

This modular approach – allowing the combination of any exploit with any payload – is the major advantage of the Framework. It facilitates the tasks of attackers, exploit writers and payload writers.

Metasploit runs on Unix (including Linux and Mac OS X) and on Windows. It includes two command-line interfaces, a web-based interface and a native GUI. The web interface is intended to be run from the attacker's computer. The Metasploit Framework can be extended to use add-ons in multiple languages.

To choose an exploit and payload, some information about the target system is needed, such as operating system version and installed network services. This information can be gleaned with port scanning and OS fingerprinting tools such as Nmap. Vulnerability scanners such as Nexpose or Nessus can detect target system vulnerabilities. Metasploit can import vulnerability scan data and compare the identified vulnerabilities to existing exploit modules for accurate exploitation.[7]

Metasploit Interfaces[edit]

There are several interfaces for Metasploit available. The most popular are maintained by Rapid7 and Strategic Cyber LLC.[8]

Metasploit Framework Edition[edit]

The free version. It contains a command line interface, third-party import, manual exploitation and manual brute forcing.[8]

Metasploit Community Edition[edit]

In October 2011, Rapid7 released Metasploit Community Edition, a free, web-based user interface for Metasploit. Metasploit Community is based on the commercial functionality of the paid-for editions with a reduced set of features, including network discovery, module browsing and manual exploitation. Metasploit Community is included in the main installer.

Metasploit Express[edit]

In April 2010, Rapid7 released Metasploit Express, an open-core commercial edition for security teams who need to verify vulnerabilities. It offers a graphical user interface, integrates nmap for discovery, and adds smart bruteforcing as well as automated evidence collection.

Metasploit Pro[edit]

In October 2010, Rapid7 added Metasploit Pro, an open-core commercial Metasploit edition for penetration testers. Metasploit Pro includes all features of Metasploit Express and adds web application scanning and exploitation, social engineering campaigns and VPN pivoting.


Armitage is a graphical cyber attack management tool for the Metasploit Project that visualizes targets and recommends exploits. It is a free and open source network security tool notable for its contributions to red team collaboration allowing for, shared sessions, data, and communication through a single Metasploit instance.[9]

Cobalt Strike[edit]

Cobalt Strike is a collection of threat emulation tools provided by Strategic Cyber LLC to work with the Metasploit Framework. Cobalt Strike includes all features of Armitage and add post-exploitation tools, in addition to report generation features.[10]


Metasploit offers many types of payloads, including:

Opcode Database[edit]

The Opcode Database is an important resource for writers of new exploits. Buffer overflow exploits on Windows often require precise knowledge of the position of certain machine language opcodes in the attacked program or included DLLs. These positions differ in the various versions and patch-levels of a given operating system, and they are all documented and conveniently searchable in the Opcode Database. This allows coders to write buffer overflow exploits that work across different versions of the target

Shellcode Database[edit]

The Shellcode database contains the payloads (also known as shellcode) used by the Metasploit Framework. These are written in assembly language. Full source code is available.

Notable contributors[edit]

Metasploit Framework operates as vaguely open-source project (see license), high quality and where code contributions accepted piecemeal. For the majority of the contributions are for specific performances or operating techniques.

List of contributors:

See also[edit]


Further reading[edit]

External links[edit]