What is Metasploit Framework
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 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.
Its a powerful tool used for penetration testing. Learning to work with metasploit needs a lot of efforts and time. Ofcourse to can learn metasploit overnight, it needs lots of practice and patience.
Today metasploit is included in the following distros:
- Kali Linux
- BackTrack Linux
- Metasploit PRO [Payed – 14 days trial]
- Metasploit Community [Free]
How to configure Metasploit on Kali
As of last Kali Linux releases, they include always latest metasploit version and vulnerabilities database into OS distribution. But still sometimes updates are required.
First of all, we need to update our repos and tools in system:
$ apt-get update && apt-get upgrade
Than we need to initiate metasploit database and check for possible update:
$ service postgresql start $ msfdb init $ msfupdate
And so such way we will initialize our metasploit database and than update software and exploits database. To check results, just try to use msfconsole:
The tool has multiple configurations:
- Command shell (msfconsole);
- Web interface (Metasploit community, Pro and Express);
- Graphics shell (Armitage and more advanced version Cobalt strike).
Let’s look at basic concepts as a brief description, and consider some MSF commands.
- Exploit is a fragment of code that uses a computer or OS vulnerability to attack a system.
- Module – a module that automates the process of an attack.
- Shellcode is shellcode. Used as the exploit payload that provides access to the OS command shell.
- Payload is a useful, or a meaningful load. This is the code that is executed after the attack is successful. There are many MSF payload types.
- Stager is a load divided into parts. By establishing a connection, shell is fully loaded.
- Reverse shell is just a back connect shell.
- Meterpreter is probably one of the popular, if not the most popular shell.
Some of metasploit commands:
- Use – Select an exploit
- Search – Just usual search. The search command actually is more advanced: If you forgot the exact name or location of the exploit, it can display all of the required information.
- Show options – view options for setting. After selecting exploit, you can see which options are available for customization
- Show payload – view useful payloads. MSF contains many useful payloads; You can also use this command to view the recommended payloads for a specific exploit or fixed asset
- Info – View detailed information about the payload (info payload_name)
- Set – Set parameters. The set command sets the required parameters, such as rhost (remote) and lhost (local), or the payload (Set payload windows/Shell/REVERSE_TCP)
- Check – the host check for the vulnerability, automatically checks if it works on the remote host
- Exploit – Launching of the exploit. When the target is selected and all required options are configured, only the final stage remains – exploit it.
All types of available licenses and features you can find here.