Metasploit is an entire framework that provides the necessary tools, during a penetration test, to identify flaws and run various exploits against a remote target machine. Simplifies network discovery and vulnerability verification, increasing the probability of success for your project. It is one of the most popular tools in the field of information security and penetration testing. It includes fuzzing tools and not just exploits, so it can be used to discover software vulnerabilities.
Metasploit has changed the way we perform penetration tests and has become the de-facto framework for finding and exploiting application vulnerabilities. It is available for all popular operating systems and this has played an important role in the popularity of this great framework.
Metasploit was developed by HD Moore in 2003 as a flexible and maintainable framework for the creation and development of exploits. The first version was written in the Perl scripting language and was released in October 2003. In April 2004, with the help of Spoonm, HD released Metasploit 2.0, a total rewrite of the project. Later, in 2007, the Framework was completely rewritten in the Ruby programming language and had been released as Metasploit 3.0. In October 2009 had been acquired by Rapid7, a security company, a leader in the vulnerability scanning field. Rapid7 released two commercial products based on the Metasploit Framework, Metasploit Express and Metasploit Pro.
A vulnerability is a weakness/software bug which allows an attacker to compromise the security of the operating system, application software, network or protocol.
An exploit is a technique or a small computer program that takes advantage of a specific bug or vulnerability in an operating system or an application program, allowing an attacker to gain control of this computer system or launch a denial-of-service attack.
A payload is a small piece of code, data or a sequence of commands sent along with the exploit, to be executed on the victim’s operating system.
Shellcode is a sequence of commands or a small piece of code used as a payload. It is called shellcode because it typically starts a shell from which the attacker can control the compromised system. Shellcode is commonly written in assembly language.
A module is a piece of software that can be used by the Metasploit Framework. Metasploit consists of exploit modules and auxiliary modules.
A listener is a small computer program that can be installed in the attacker’s system and listen for incoming connections from the exploited system.