This blog post is a double edged blade. On one side it is a getting started guide on using Metasploit, showing the basics of the world’s leading exploitation framework. It is also an attempt to raise awareness for the simplicity of compromising an operating system that hasn’t been patched with the latest updates.
Troy Hunt already wrote a great article on why you should leave automatic updates for Windows on and another on how the WannaCry Ransomware was able to spread to so many systems.
This article is another approach to raise awareness by showing how to exploit the SMB vulnerability (which is/was also used by the WannaCry/Petya ransomware) while explaining how to get started using Metasploit.
Contents
- Eternalblue
- What is Metasploit?
- Metasploit interfaces
- Starting Metasploit
- Metasploit modules
- Commands
- Exploit
- Final thoughts
ETERNALBLUE
In order to understand the severity and impact of the vulnerability we’re about to exploit, we’ll start off with a little background history.
The exploit we are going to execute later on in this article, is one with a notorious history and goes by the name of ‘Eternalblue‘ or ETERNALBLUE as it is often styled. Eternalblue is generally believed to be developed by the NSA (U.S. National Security Agency). It was leaked by the Shadow Brokers hacker group on 14 April 2017 and was used as part of the worldwide WannaCry ransomware attack on 12 May 2017. The exploit was also used to help carry out the 2017 NotPetya cyberattack on 27 June 2017.
Eternalblue exploits a vulnerability in Microsoft’s implementation of the SMB protocol (Server Message Block, used for file and printer sharing in Windows) and is registered as CVE-2017-0144 in the Common Vulnerabilities and Exposures (CVE) catalog. The vulnerability exists because the SMB version 1 (SMBv1) server in various versions of Microsoft Windows mishandles specially crafted packets from remote attackers, allowing them to execute arbitrary code on the target computer.
On Tuesday 14 March 2017 Microsoft issued a security bulletin which detailed the flaw and announced that patches had been released for all Windows versions that were currently supported at that time, these being Windows Vista, 7, 8.1 and Windows 10, Windows Server 2008, 2012 and 2016. Many Windows users had not installed the patches when, two months later on 12 May 2017, the WannaCry ransomware attack used the EternalBlue vulnerability to spread itself.
A warned person counts as two
… or so a Dutch proverb goes. In June 2017, little over a month after the WannaCry ransomware hit, a new version of Petya was used for a global cyberattack, primarily targeting Ukraine. This new version also propagated using the EternalBlue exploit. Again, the vulnerability had already been fixed in March 2017!
A warned person counts as two, or ‘warned is forearmed’ as it would be in English. So why was Petya still able to wreak havok on so many machines after WannaCry’s outbreak a month earlier? It sure wasn’t the lack of media coverage for the ransomware outbreaks. Surely things have improved now we’re in September 2017, more than 2 months after Petya and almost 6 months after the Windows update fixing the SMB flaw?
A simple search for the vulnerability on Shodan.io yields the following results:
This shows that more than 1 million Internet-connected systems are still vulnerable for the Eternalblue exploit. These numbers don’t even take into account the machines that are not connected to the Internet, but may be reached via one or more network hops on those Internet-connected systems.
Even though ransomware can be quite sophisticated in the way it operates, the software often requires a vulnerability to exploit and spread. Reproducing the exploitation of a vulnerability can be quite easy when you have the knowledge and/or the proper tools.
Metasploit is the tool we are going to use to reproduce the Eternalblue exploit.
Metasploit is the world’s leading exploitation framework and nowadays it is used by nearly every hacker/pentester. It was created by H. D. Moore in 2003 as a portable network tool using Perl and was completely rewritten in Ruby by 2007. In October 2009 it was acquired by Rapid7, a security company that provides unified vulnerability management solutions.
Metasploit can be used to test the vulnerability of computer systems or to break into remote systems and, like many information security tools, can be used for both legitimate and unauthorized activities. Its emerging position as the top exploit development framework led to the release of software vulnerability advisories often accompanied by a third party Metasploit exploit module that highlights the exploitability, risk and corrections of that particular bug.
To use Metasploit, the framework has multiple interfaces including:
- msfconsole — an interactive command-line interface
- msfcli — a Linux command-line interface
- armitage — a GUI-based third-party application
- msfweb — a web interface
Of the interfaces mentioned above, msfconsole is the most common way to use Metasploit. This is why the focus in this article is on the use of this interactive shell.
Metasploit has integrated a postgresql database to store the data collected from scans and exploits. It also has integrated additional tools like nmap, openvas and nexpose, so all phases of hacking can be done from a single tool, making it more than just an exploitation framework.
For the examples in this article, I used the Linux version of Metasploit. However, it is also available for Windows.
Before you start Metasploit, we first want to make sure the postgresql database is started. The framework does work without postgresql, but runs its searches much faster and stores the information collected during your scans and exploits.
start postgresql
Start the postgresql database service by running the following command before starting Metasploit:
root@kali:~# service postgresql start
root@kali:~# msfdb init
The second line makes sure the database is initialized.
msfconsole
Now run the msfconsole
command and after its initialization, you will be greeted by one of Metasploits ASCII art titles and a prompt:
Part of Metasploit’s power is its composition of many modules that can be loaded at runtime or after msfconsole has already been started. It has 6 types of modules:
- Exploits
- Payloads
- Auxiliary
- Encoders
- NOPs
- Post
An exploit is a module that takes advantage of the vulnerability of a system or application and will typically use a payload.
A payload consists of code that will run on the remote system. This payload can be a simple command shell (as we will see later in this article), adding a user to the system, running calc.exe or the powerful Meterpreter. In other environments these payloads might be termed listeners or rootkits.
Auxiliary modules are exploits without a payload.
An encoder makes sure the payload makes it to its destination.
A NOP (short for No OPeration) keeps the payload size consistent by ensuring that any unused space will still be validly executable by the processor with no side effects.
Post (post-exploitation) modules can be run on compromised targets to gather evidence, pivot deeper into a target network, and much more.
Commands
There are many keyword commands in Metasploit, many more than we will be able to cover in this article. You can get a list of available keywords by typing help
or ?
:
msf > help
Core Commands
=============
Command Description
------- -----------
? Help menu
banner Display an awesome metasploit banner
cd Change the current working directory
color Toggle color
connect Communicate with a host
exit Exit the console
get Gets the value of a context-specific variable
getg Gets the value of a global variable
grep Grep the output of another command
help Help menu
history Show command history
irb Drop into irb scripting mode
load Load a framework plugin
quit Exit the console
route Route traffic through a session
save Saves the active datastores
sessions Dump session listings and display information about sessions
set Sets a context-specific variable to a value
setg Sets a global variable to a value
sleep Do nothing for the specified number of seconds
spool Write console output into a file as well the screen
threads View and manipulate background threads
unload Unload a framework plugin
unset Unsets one or more context-specific variables
unsetg Unsets one or more global variables
version Show the framework and console library version numbers
Module Commands
===============
Command Description
------- -----------
advanced Displays advanced options for one or more modules
back Move back from the current context
edit Edit the current module with the preferred editor
info Displays information about one or more modules
loadpath Searches for and loads modules from a path
options Displays global options or for one or more modules
popm Pops the latest module off the stack and makes it active
previous Sets the previously loaded module as the current module
pushm Pushes the active or list of modules onto the module stack
reload_all Reloads all modules from all defined module paths
search Searches module names and descriptions
show Displays modules of a given type, or all modules
use Selects a module by name
Database Backend Commands
=========================
Command Description
------- -----------
db_connect Connect to an existing database
db_disconnect Disconnect from the current database instance
db_export Export a file containing the contents of the database
db_import Import a scan result file (filetype will be auto-detected)
db_nmap Executes nmap and records the output automatically
db_rebuild_cache Rebuilds the database-stored module cache
db_status Show the current database status
hosts List all hosts in the database
loot List all loot in the database
notes List all notes in the database
services List all services in the database
vulns List all vulnerabilities in the database
workspace Switch between database workspaces
The above list is shortened so you will see more keywords in the help screen. The following keywords will be used in our example and are explained in more detail when we run into them in their exploitation context:
- use — Selects a module by name.
- show — Displays modules of a given type, or all modules
- info — Displays information about one or more modules
- search — Searches module names and descriptions
- set — Sets a context-specific variable to a value
- unset — Unsets one or more context-specific variables
- exploit — Executes the selected module
Exploit
Before we get our hands dirty, I want to make it very clear that you should not attempt this exploit on any other machine than your own or the pentesting target for which you got explicit clearance. Fail to comply with this warning and you may end up in jail.
I ran all commands on my Kali linux machine, with a Windows 7 OS running on a virtual machine as my ‘victim’.
Do not attempt this exploit on any other than your own systems, or you may end up in jail.
Now we have the disclaimer out of our way, lets get to it!
Search Eternalblue Module
The search
command allows you to search for modules. The result list can be very big so fortunately it is possible to be more specific using the following keywords:
- platform — the operating system that the module is built for
- type — this is the type of module. These include exploits, nops, payloads, post, encoders and auxiliary
- name — search by the name of a module
- cve — search by the unique CVE identifier.
Search examples
Search for all exploits on the Windows platform:
msf > search type:exploit platform:windows
Search for all modules that cover the CVE-2017-0144 vulnerability:
msf > search cve:2017-0144
This last example yielded the following results:
Now we found the exploit module we were looking for: exploit/windows/smb/ms17_010_eternalblue
.
Troubleshooting
When you get the message Module database cache not built yet, using slow search
after initiating a search, make sure you have started the postgresql service and executed the ‘msfdb init’ command. After that, run the following command to rebuild the database cache:
msf > db_rebuild_cache
This may take a while to complete.
Use the exploit module
After we found the correct module to use, we need to select (use) it to set it up. Type the following command:
msf > use exploit/windows/smb/ms17_010_eternalblue
This will change the prompt to include the exploit’s name, which indicates that all local commands and settings we change will be applied to the selected module. For example, we now can use the info
command to get more information about the module we’ve selected:
Show
The show
-command is very useful to gather more information on a module. There are many flavors when using this command, but the ones I use most often are show payloads
, show targets
and show options
. Let’s take a look at show payloads
first.
Show payloads
msf > show payloads
When this command is used before any module was selected, it will return a list of all payloads available in the framework; a very long list. After selecting a module, it will show a list of all payloads that are compatible with the payload. For the Eternalblue exploit, the following payloads are compatible:
Show targets
Each exploit has a list of targets it will work against. This list is shown by running the show targets command:
msf > show targets
Exploits may have many different targets and success will often depend upon selecting the correct one. These targets can be defined by operating system, service pack and language, among other things.
Show options
Another very useful feature is show options, which will display all of the options that need to set before running the module. For the ms17_010_eternalblue module, this command yields the following result:
All options with Required
= yes
must be filled in before running the exploit. In our case the RHOST field (the target address) must be set before we can continue. We leave the other options as default in this example.
Set
In order to change the value of any options within a module, we use the set
command. Its syntax is as follows:
set <Option> <Value>
Where Option
is one of the module options and Value
its value; easy enough!
Set Option
As we established in the previous chapter, we still need to set the RHOST setting. This is done by entering the following command:
msf > set RHOST <ip address>
which in my case would be :
msf > set RHOST 192.168.198.148
Unset option
To revert a setting to its previous value, use the unset
command. The following command would reset the RHOST option:
msf > unset RHOST
Set Payload
It is also possible to explicitly set a certain payload to be used. For example, the following command would explicitly set the payload to be a windows command shell:
msf > set payload windows/shell_bind_tcp
In the ms17_010_eternalblue exploit module for this example, we use the built-in payload, so we leave this setting untouched.
Exploit
After the module was set and all options were configured to our needs, we’re ready to execute the module by running the exploit-command. This sends the exploit to the target system and, if successful, installs the payload:
msf > exploit
For the ms17_010_eternalblue exploit, this yielded the following results:
As you can see in the screenshot above, the payload was successfully installed and we are greeted by a command shell. Alls commands we input now, are executed on the remote machine as if we were running on a windows console. So, let’s check the account for we have gained access by running the windows command whoami
:
As you can see, we have gained Local System rights on the remote machine, which is the most powerful account on a local Windows instance.
From here we can launch powershell scripts, add/remove users to the system, launch processes, stop and start services, explore the network for further targets to attack, etc.
Final thoughts
As we have seen, it is very easy to gain access to a remote machine by exploiting a known vulnerability. As long as systems remain unpatched, it is highly probable that in the near future we will see another outbreak of some piece of ransomware based on Eternalblue.
Of course, it is more difficult to protect yourself against exploits of zero day vulnerabilities (vulnerabilities that are unknown, or not fixed by the vendor). However, as soon as the fix is in place it should be deployed as soon as possible.
Ransomware and professional hackers are one threat, but every script kiddie can attack a system with the right tools as soon as a vulnerability (and exploit) is out in the open.
Those script kiddies will be looking for low-hanging fruit of easy accessible and vulnerable systems. Install the latest updates for your operating system to be one step ahead of the competition. In that case you don’t need to outrun the bear, but rather outrun your friends.
Metasploit для юнцов [Часть 1]
DEEPSIDEМы написали много статей по взлому с использованием Metasploit, в том числе о том, как не оставлять следов, об изучении внутренней архитектуры сайта, а также массу шпаргалок по командам и скриптам.
Этим руководством мы начинаем объемную серию статей для обучения и использования Metasploit. Эта первая ознакомительная часть, где кратко будут рассмотрены основы Metasploit— одной из самых мощных хакерских платформ на планете Земля.
Происхождение и установка Metasploit
Metasploit — проект с открытым исходным кодом, разработанный хакером HD Moore в 2003 году. Первоначально он был написан на Perl, но в 2007 году полностью переписан на Ruby. В 2009 году был выкуплен Rapid7, компанией специализирующейся на предоставлении услуг по информационной безопасности, которая также выпустила сканер уязвимостей Nexpose.
Metasploit версии 4.12 уже включен в дистрибутив Kali Linux. Он также встроен в BackTrack. Если вы используете другой дистрибутив Linux или MaxOS, то вам придется скачать его с сайта Rapid7.
Если вы используете Windows, то вам также придется скачать Metasploit с сайта Rapid7, но мы не рекомендуем запускать его в Windows. Вы, безусловно, сможете это сделать, однако многие функции, которые мы будем рассматривать в этой статье, просто не будут там работать.
У Metasploit есть несколько версий, в том числе Metasploit Pro (полностью коммерческая версия) и Community Edition (бесплатная). Вот последняя как раз и встроена в Kali. Мы сосредоточимся на Community Edition, поскольку мы думаем, что большинство из вас не будет покупать Pro версию стоимостью в $ 30 000.
Способы использования Metasploit
Metasploit можно использовать несколькими способами. Наиболее распространенный способ, который и мы все время используем — это интерактивная консоль Metasploit. Она активируется путем ввода msfconsole в командной строке Kali. Существует также несколько других методов.
- Msfcli
Начнем с того, что вы можете использовать Metasploit из командной строки Kali или в режиме msfcli. На первый взгляд кажется, что когда мы находимся в консоли, мы используем командную строку. В действительности же мы используем интерактивную консоль со специальными ключевыми словами и командами. Когда же мы работаем из msfcli, то фактически используем командную строку Linux.
Чтобы получить информацию обо всех доступных командах msfcli, наберите в консоли:
kali > msfcli -h
Теперь, чтобы выполнить эксплоит из msfcli наберите команду:
kali > msfcli <the exploit> payload = <the payload> rhost = <IP> lhost = <IP> E
Где «E» — сокращение от «Execute» (выполнить)
В этом разделе по созданию payload (полезных нагрузок) для защиты от антивирусных программ мы используем команду msfencode и msfpayload в режиме командной строки (msfcli).
Недостатком использования msfcli является то, что он не так хорошо поддерживается как msfconsole, и вы ограничены единственным шелом, что делает некоторые из более сложных эксплойтов невозможными.
- Armitage
Если вы хотите использовать Metasploit с графическим интерфейсом (GUI), то здесь есть несколько вариантов. Например, Рафаэль Мадж (Raphael Mudge) разработал Armitage (это имя главного героя в весьма оригинальной научно-фантастической книге о кибер-хакинге «Neuromancer». Ее должен прочитать каждый хакер, которому нравится жанр SciFi).
Чтобы запустить Armitage в Kali, просто введите:
kali > armitage
Если Armitage не может соединиться, то попробуйте другие команды:
kali > service start postgresql kali > service start metasploit kali > service stop metasploit
Armitage — это графический интерфейс поверх самого Metasploit, построенный на архитектуре клиент-сервер. Вы запускаете Metasploit в качестве сервера, и Armitage становится его клиентом, предоставляя вам полный доступ к функциям Metasploit с помощью полнофункционального, хотя и не интуитивно понятного GUI. Если вам действительно нужен GUI, чтобы чувствовать себя комфортно, то, пожалуйста, используйте Armitage. Но овладение командной строкой — практически жизненная необходимость для любого уважающего себя хакера.
Модули
У Metasploit есть шесть разных модулей:
- payloads
- exploits
- post
- nops
- auxiliary
- encoders
Payloads — это код, который мы оставляем на взломанной системе. Некоторые называют их слушателями (listener), руткитами (rootkit) и т.д. В Metasploit они называются payload (полезными нагрузками). Payloads включают утилиты командной строки, Meterpreter и т.д. Payload‘ы бывают разных типов, например, staged, inline, NoNX (обходит функцию «No Execute» (без выполнения) в некоторых современных процессорах), PassiveX (обходит правила брандмауэра об исходящем трафике), IPv6 и другие.
Exploits — это шелл-код, который использует уязвимость или недостатки в системе. Это очень специфичный код. Например, есть эксплоиты для операционной системы, пакетов обновлений (SP), для конкретных служб, портов и даже для приложений. Их также можно классифицировать по типам операционных систем, поэтому эксплойт Windows не работает в Linux и наоборот.
Post — это модули, которые мы можем использовать для пост эксплуатационных атак системы (т.е. после получения доступа к системе).
Nops — сокращение от No OPerationS. В процессорах семейства x86 обычно указывается как шестнадцатеричный 0x90. Это просто означает «ничего не делать». Это может иметь решающее значение для атак переполнения буфера (buffer overflow). Мы можем посмотреть модули nops с помощью команды show.
msf > show nops
Auxiliary — включает в себя множество модулей (695), которые не вписываются ни в одну из других категорий. К ним относятся такие вещи, как фьюзеры (fuzzer), сканеры (scanner), модули для DoS-атак (на отказ в обслуживании) и многое другое.
Encoders — это модули, которые позволяют по-разному кодировать нашу полезную нагрузку (payloads), чтобы обойти антивирусное ПО и другие системы безопасности. Мы можем увидеть эти кодировщики, набрав:
msf > show encoders
Как видите, в Metasploit встроено довольно много кодировщиков. Один из наших фаворитов — shikata_ga_nai. Он позволяет использовать payload XOR, что помогает обманывать антивирусные программы и другие системы безопасности.
Поиск
В Metasploit 4 появилась возможность поиска. Раньше приходилось использовать msfcli и команду grep, чтобы найти модули. Теперь Rapid7 добавил поиск по ключевым словам и некоторые другие особенности. Добавление поиска было очень своевременным, поскольку Metasploit значительно разросся, а обычного поиска по запросам grep было уже недостаточно, чтобы найти что-нибудь среди более чем 1400 эксплойтов.
Поиск по ключевым словам позволяет выполнять как простой поиск, так и делать более детализированные поисковые запросы. Например, мы можем определить тип модуля, который нужно найти, используя ключевое слово type:
msf > search type:exploit
Если мы это сделаем, то Metasploit вернет нам 1295 эксплойтов. Не очень полезно.
Но если мы знаем, что хотим атаковать машину Sun Microsystems под управлением Solaris(Sun UNIX), то мы можем уточнить наш поиск и искать только эксплоиты для Solaris. В этом случае нам нужно использовать ключевое слово platform.
msf > search type:exploit platform:solaris
Теперь мы сузили наш поиск до тех немногих эксплойтов, которые будут работать против Solaris.
Для дальнейшего уточнения поиска предположим, что мы хотим атаковать Solaris RPC (sunrpc) и, соответственно, нам нужно видеть только те эксплоиты, которые атакуют эту конкретную службу. Мы добавляем ключевое слово «sunrpc» в наш поисковый запрос, как показано ниже:
msf > search type:exploit platform:solaris sunrpc
Как видите, это сузило результаты поисковой выдачи до пяти модулей эксплойтов!
- Ключевые слова Metasploit
Понимание и использование всего нескольких ключевых слов поможет вам ориентироваться и управлять этим мощным инструментом. Давайте рассмотрим несколько наиболее простых и необходимых команд. Это далеко не исчерпывающий список, однако, он охватывает основные команды, которые вам придется выполнять в Metasploit, пока вы не приобретете больше опыта. Если у вас уже есть небольшой опыт работы в Metasploit и нужны команды для работы с Meterpreter, то посмотрите шпаргалку по командам Meterpreter.
Шаг 1. Show
«Show» — одна из основных команд в Metasploit. Она может быть использована для отображения модулей, например, payload’ов, эксплоитов и т.д. Но она также может использоваться для отображения параметров после того как мы выберем эксплоит. Команда «show» начинает определять свой контекст, когда мы выбираем эксплоит. Поэтому, если мы введем в консоли «show payloads» перед тем, как выберем эксплоит, она покажет нам ВСЕ payload’ы. Если мы выберем «show payloads» уже после выбора конкретного эксплоита, то она покажет нам только те payload’ы, которые будут работать с данным конкретным эксплоитом.Например, когда нам нужно увидеть все параметры, которые мы должны определить при установке бэкдора в PDF-файл, мы используем команду «show options», как показано на этом скриншоте:
Шаг 2. Help
Команда «help» даст нам ограниченный список команд, которые мы можем использовать в msfconsole. Если вы потеряете эту статью и забудете все, что здесь написано, то просто введите в консоли «help» и получите основные команды.
Шаг 3. Info
«Info» — это еще одна базовая команда в Metasploit, которая позволяет нам видеть всю основную информацию об эксплоите. После того, как мы выбрали эксплоит, мы можем ввести в консоль команду «info» и она покажет нам все параметры, цели и описание эксплоита. Мы предпочитаем использовать «info» для любого эксплоита, который используем, чтобы лишний раз вспомнить его функции и требования. Например, вот скриншот из вывода команды «info» при использовании вспомогательного модуля ftp.
Шаг 4. Set
«Set» — это основная и критически важная команда (ключевое слово) в Metasploit. Мы можем использовать ее для установки параметров и переменных, необходимых для запуска эксплоита. Эти переменные могут включать payload’ы, RHOST, LHOST, цель, URIPATH и т.д. На скриншоте ниже видно, как при помощи команды «set» для взлома системы, модулю psexecустанавливаются параметры RHOST, LHOST, SMBUser и SMBPass.
Шаг 5. Back
Когда мы закончили работу с определенным модулем или если мы выбрали неправильный модуль, то мы можем использовать команду «back», чтобы вернуться в строку приглашения msfconsole. Например, если мы выбрали какой-то эксплоит, а потом вдруг поняли, что выбрали неправильный, то мы можем просто ввести «back», а затем использовать команду «use» (см. следующий раздел), чтобы выбрать другой модуль.
Шаг 6. Use
Когда мы определили, какой эксплоит хотим использовать против «вражеской» системы, мы должны воспользоваться командой «use» для загрузки этого эксплоита в память и чтобы отправить его в интересующую нас систему.
Шаг 7. Exploit
После того как мы выбрали нужный эксплоит, установили все необходимые переменные, выбрали какой payload будем использовать, последнее, что мы должны сделать — ввести в консоль команду «exploit». Она запустит эксплоит против целевой машины с тем payload’ом и теми переменными, которые мы для него установили. Пример этого можно найти в нашем руководстве по созданию эксплоита в невинно выглядящем Word-документе, а затем отправить его вашей подруге, чтобы узнать, не изменяет ли она вам.
Шаг 8. Sessions
Команда «sessions» применяется для отображения или установки сессии. При использовании с параметром -l (list) она отображает все открытые сессии. Когда она используется с числом («sessions -1»), то она дает Metasploit указание активировать первую сессию. Metasploitпозволяет нам запускать несколько сессий как в одной системе, так и в нескольких. Используя команду «sessions», мы можем найти все открытые сессии, переключаться между ними или активировать их. Вы можете найти пример использования этой команды в руководстве по созданию непрерывно подсоединяющегося к целевой системе бэкдора, как показано на скриншоте ниже.
Шаг 9. Exit
Когда мы хотим выйти из консоли msfconsole, то можем просто ввести «exit», чтобы вернуться в командную строку Linux.
Мы рассказала вам о базовом наборе команд, который позволит запускать практически любой взлом в Metasploit.
Payloads(Полезные нагрузки)
Как вы знаете, Metasploit — это эксплуатационный фреймворк, в котором каждый хакер должен уметь работать.
Metasploit позволяет нам использовать предварительно написанные эксплоиты против известных уязвимостей в операционных системах, браузерах и других приложениях, а также размещать на целевой системе некоторый код, который иногда называют руткитами (rootkit), «слушателями» (listener) или полезными нагрузками (payload). Payload’ы позволяют нам подключаться к целевой системе и использовать ее как нашу собственную, после того как мы воспользуемся уязвимостью в этой системе. Мы рассмотрим те payload, которые встроены в Metasploit.
Metasploit имеет множество различных типов payload, которые можно оставить в целевой системе. Мы надеемся, это поможет вам выбрать подходящий payload для вашего хака.
- Запустите Kali Linux и откройте Metasploit
Мы видим, что Metasploit вывел нам список эксплойтов, вспомогательных модулей, модулей пост-эксплуатации, payload-модулей, кодировщиков и nops («No operation» — команда ничего не делать).
На скриншоте ниже видно, что в текущей версии Metasploit есть 335 payload (у вас это количество может отличаться в зависимости от того, какую версию вы используете). Это огромное количество payload, которое можно использовать в различных ситуациях.
Когда мы вводим в консоль:
msf > show payloads
Metasploit показывает 335 payload‘ов, как на скриншоте ниже.
Типы payload
Эти 335 payload‘ов разделены на 8 типов.
- Inline
Эти payload представляют собой единый пакет, состоящий из эксплоита и payload. Они более стабильны, но из-за своего размера не всегда могут использоваться в небольших уязвимых областях памяти.
- Staged
Эти payload способны встраиваться в очень маленький объем памяти и создавать целый плацдарм в целевой системе, а затем вытаскивать остальную часть payload в систему.
- Meterpreter
Является самым мощным payload, который мы чаще всего хотели бы видеть в системе жертвы. Он работает путем инъекций в .dll и полностью находится в памяти целевой системы, не оставляя при этом следов своего присутствия на жестком диске или в файловой системе. У него есть ряд специальных команд и скриптов, разработанных для него, которые позволяют работать в системе жертвы так, как нам вздумается.
- PassiveX
Этот payload предназначен для использования в тех ситуациях, когда правила брандмауэра ограничивают исходящий трафик. По сути, он использует ActiveX через браузер Internet Explorer. Чтобы скрыть свой исходящий трафик и избежать блокировки брандмауэром он использует HTTP-запросы и отвечает на запросы так же, как и любой браузер.
- NoNX
В некоторых процессорах есть встроенная функция безопасности, называемая DEP (Data Execution Prevention — предотвращение выполнения данных). В Windows это называется No eXecute или NX. Задача этой функции — не допустить, чтобы данные поступали в центральный процессор и им выполнялись. Задача payload NoNX — обойти эту функцию.
- Ord
Эти типы payload работают со всеми операционными системами Windows. Они чрезвычайно малы, но несколько нестабильны. Их работа заключается в загрузке DLL (динамически подключаемых библиотек) в эксплуатируемый процесс.
- IPv6
Эти payload, как и следует из названия, предназначены для работы в сетях IPv6.
- Reflective DLL Injection («Отражающая DLL-инъекция»)
Эти payload-модули вводятся прямо в целевой процесс, в то время, когда он запущен в память, тем самым никогда ничего не записывая на жесткий диск и не оставляя следов.
Payload-модули
Если мы посмотрим в директории Metasploit в терминале Kali Linux, мы увидим, что Metasploitделит свои payload‘ы на три типа. Очевидно, что восемь перечисленных выше типов объединены в эти три директории внутри самого Metasploit‘а.
kali > cd /usr/share/metasploit-framework/modules/payloads kali > ls -l
- Staged
Выполняемые поэтапно payload используют крохотные модули Stagers (см. ниже), чтобы встроиться в небольшие эксплуатируемые нами участки памяти. Другими словами, если буфер эксплуатации системы жертвы или другая область памяти очень мала и позволяет выполнить только очень небольшой код, то сначала в область памяти внедряется небольшой Stager-модуль. После того, как он внедрится, он начинает работать как плацдарм для «вытягивания» остального payload‘а.
В свою очередь эти крупные Staged payload’ы включают еще более сложные payload-модули, такие как Meterpreter и VNC Injection, каждый из которых имеет большой и сложный код. Как правило, имя Staged payload вставляется в имя основного payload между символами «/». Например, как это сделано в payload windows/shell/tcp_bind, где «Tcp_bind» — это «Stager» (см. ниже), а «shell» — это «Staged».
К сожалению, это соглашение не используется последовательно в Metasploit, поэтому часто нужно переходить в раздел «info» конкретного payload или искать директорию, в которой он находится, чтобы определить, является ли он Staged payload.
- Stagers
Stagers — небольшие payload, единственная задача которых заключается в том, чтобы внедриться в небольшую область памяти, а затем «вытащить» большой Staged payload-модуль. Это похоже на то, как если бы они «установили флаг» на системе-жертве, а затем начали бы загружать больший по размерам payload.
- Singles
Часто их называют «встроенными полезными нагрузками» (Inline payloads). Cинглы — самодостаточные сущности, для которых не требуется Stager. Они, как правило, более стабильны и их использование предпочтительно, но во многих случаях их код слишком велик для уязвимой области памяти в целевой системе.
Давайте посмотрим в директорию этих синглов.
kali > cd singles kali > ls -l
Как мы видим, синглы разделены по типам уязвимых платформ. Если мы хотим увидеть те синглы, которые доступны для платформы Windows, мы просто вводим:
kali > cd windows kali > ls -l
Внутри этой директории мы видим все синглы, доступные для Windows. Мы выделили один из них — shell_reverse_tcp, это тот, который мы использовали во многих наших хаках.
Payload являются ключевой частью инфраструктуры Metasploit и предоставляют доступ к системе после завершения работы эксплоита. Чем лучше мы их понимаем, тем круче мы будем как хакеры.
- Armitage
Многие новички не привыкли использовать интерактивную консоль msfconsole и поэтому тратят значительно больше времени на использование Metasploit. Тем не менее, у Metasploit есть другие средства управления системой, которые облегчают работу и помогают тем, кто чувствует себя неуверенно в командной строке.
Для тех, кому удобнее пользоваться программами с графическим интерфейсом (GUI), Рафаэль Мадж (Raphael Mudge) разработал графическую оболочку, которая подключается к Metasploit и позволяет управляться с ним как с любым приложением Windows. Он назвал его Armitage. Новичкам Armitageпоможет обучиться хакингу при помощи Metasploit быстрее и легче.
Скачиваем Armitage
Первым шагом, конечно же, является загрузка Armitage. Если у вас есть BackTrack или ранние версии Kali, то у вас скорее всего Armitage не будет установлен по умолчанию. Скачать его можно с сайта Armitage.
Кликните по кнопке загрузки, и она загрузит следующую страницу. Убедитесь, что это версия для Linux.
Другой вариант установки заключается в использовании инструментов командной строки. Чтобы установить Armitage из командной строки просто введите в консоль:
kali apt-get install armitage
Вы также можете использовать инструменты установки Kali с графическим интерфейсом — «Добавить/удалить программное обеспечение» и найти «Armitage».
Запускаем Metasploit
После того, как вы установили Armitage в систему, следующим шагом будет запуск Matsploit. Убедитесь, что сервер базы данных postgreSQL запущен, для этого наберите в консоли:
kali> service postgresql start
Теперь запустите Metasploit, набрав:
kali> msfconsole
Запускаем Armitage
Armitage реализует архитектуру клиент-сервер, где Metasploit является сервером, а сам Armitage — его клиентом. По сути, Armitage — это GUI-клиент, с которым можно взаимодействовать и контролировать сервер Metasploit.
Чтобы запустить Armitage наберите в консоли Kali:
kali> armitage
Когда вы это сделаете, увидите примерно такое сообщение.
Если вы используете Metasploit из своей «домашней» системы, то оставьте все значения по умолчанию и нажмите «Connect» (Подключиться). Если вы хотите запустить Armitage на удаленной системе, тогда просто введите IP-адрес системы, на которой собираетесь запустить Metasploit в поле «Host».
Запускаем RPC-сервер
Armitage подключается к RPC-серверу для управления Metasploit. Скорее всего, вы увидите такое приглашение после запуска Armitage:
В некоторых случаях для подключения потребуется некоторое время. Выглядит это как на скриншоте ниже.
Когда Armitage, наконец, подключится к RPC-серверу Metasploit, появится такое окно.
Отлично! Вот теперь вы сможете использовать Metasploit через простой графический интерфейс.
Исследуем Armitage
Обратите внимание, что в верхнем левом углу окна Armitage расположены папки. Эти папки содержат четыре типа модулей Metasploit:
- Вспомогательные
- Exploit
- Payload
- Post-модули
Вы уже знаете, что в Metasploit модули организованы по группам. Для новичка наиболее важными модулями являются exploit и payload.
Мы можем развернуть каталог модулей эксплоитов, кликнув на стрелку вправо. Он раскроется и покажет нам свое содержимое.
Metasploit классифицирует свои эксплоиты по типу операционных систем, для которых они предназначены, например Windows, BSD, Linux, Solaris и т.д. Помните, что эксплоиты специфичны для каждой операционной системы, приложения, порта, службы, а иногда даже для языка. Теперь если мы перейдем к директории Windows и раскроем ее, то увидим все уязвимости Windows, классифицированные по их типу.
Теперь, когда мы ищем эксплойт для использования в конкретной операционной системе для конкретной уязвимости, мы можем просто навести на него курсор мышки и кликнуть на него.
Hail Mary!
Почти все, что вы можете сделать в консоли Metasploit, можно сделать и с помощью Armitage. Но есть одна вещь, которую можно выполнить при помощи Armitage, и которую нельзя сделать с помощью msfconsole (по крайней мере, без использования специальных скриптов). Это самая вещь называется Hail Mary! Hail Mary — это модуль Armitage, который будет пробовать запустить каждый эксплоит против сайта, чтобы проверить, работает ли какой-нибудь из них.
Просто перейдите в меню «Attacks» (Атаки) в верхней части Armitage и выберите «Hail Mary». Когда вы кликните на него, он выдаст предупреждающее сообщение как на скриншоте ниже.
Это не слишком эффективный способ взлома из-за того, что процесс не является скрытным. Это создаст так много «шума» на целевой системе, что вы, скорее всего, будете обнаружены практически сразу. Но на тестовой машине или в пентестирующем окружении — его использование может быть полезным, т.к. дает возможность попробовать многочисленные атаки против цели, чтобы посмотреть, какие из них будут работать, а какие нет.
Armitage позволяет начинающему хакеру быстро понять основы взлома при помощи Metasploitи начать использовать этот превосходный и мощный инструмент в очень короткие сроки. И мы все обязаны Рафаэлю Маджу за разработку этой прекрасной программы!
Заключение
Давайте подведем итоги того, что мы узнали в этой части нашей серии статей по Metasploit:
Мы показали различные способы использования Metasploit — от msfcli и msfconsole до клиента с графическим интерфейсом Armitage. Кроме того, мы изучили различные модули Metasploit, включая эксплоиты, payload’ы и кодировщики.
Время на прочтение2 мин
Количество просмотров56K
Всем привет! После выхода Metasploit Community, которая мне очень не понравилась, я задался вопросом как же вернуть привычную для меня структуру этого инструмента. И решил я этот вопрос для себя, скачав и настроив dev версию. И всё было хорошо, пока недавно мне не пришлось настраивать тоже самое на Windows. Кого интересует данная проблема прошу под кат.
На самом деле пишу эти строки больше для себя, чтобы при повторном появлении проблемы не наступать на те же самые грабли, но если данная информация будет востребована сообществом, то будет очень хорошо.
Как ни странно, но скачивание ветки metasploit будет практически последним этапом, а в начале приготовления к этому.
- Установка Git for Windows
Т.к. metasploit полностью переехал на git, то без него никуда, поэтому качаем Git for Windows и устанавливаем его. Установка у него банальная, поэтому заострять внимание на ней я не буду. - Установка Ruby 1.9.3
Все знают, что при использовании metasploit без Ruby никуда, поэтому следующим шагом нам нужно установить Ruby.
Для этого качаем установщик Ruby 1.9.3 для Windows отсюда и запускаем его. Установка Ruby тоже не должна вызвать у вас проблем, но обратите, пожалуйста, внимание на один момент — не забудьте поставить галочку напротив пункта «Add Ruby executables to your PATH», чтобы впоследствии не возиться с путями к Ruby. - Установка Development Kit для Ruby и настройка WinPcap
Так же для правильной работы Metasploit нам потребуется DevKit для Ruby, который можно скачать по той же ссылке, что и сам Ruby. После того как вы его скачали, скопируйте его в папку, в которую вы его хотите распаковать(у меня это c:\rubydk) и распакуйте. Так же нам в дальнейшем понадобиться пакет pcaprub, а для него нужно скачать и установить WinPcap и WinPcap Developer’s Pack.
С установкой WinPcap, я думаю, ни у кого проблем не возникнет. В DevPack’е нас интересует две папки — /lib и /include. Содержимое папки lib нужно скопировать в папку lib, которая находится в папке с установленным Ruby, а содержимое папки Include в папку Include/ruby-1.9.1, которая также находится в папке Ruby.
Ну и для завершения установки DevKit нам осталось вызвать командную строку, перейти в папку с DevKit’ом и выполнить две команды:ruby dk.rb init ruby dk.rb install
И если никаких ошибок не высветиться, то с этим этапом покончено
- Клонирование ветки Metasploit Framework и подготовка к запуску
Вот мы и подошли к самому Metasploit Framework. Итак для начала скланируем его, выполнив следующую комманду:git clone git://github.com/rapid7/metasploit-framework.git c:\git
Так же для корректной работы Metasploit Framework нам нужно установит необходимые gem’сы и выполнить msfupdate. Для этого выполним следующие комманды:
gem install bundler ruby c:\git\metasploit-framework\msfupdate
И если всё выполнилось удачно, то вы получили последнюю рабочую версию Metasploit Framework Dev. Теперь вы можете выполнить:
ruby c:\git\metasploit-framework\msfconsole
и начать работать
А можете дополнительно поставить Msfgui как я. Для этого скачайте архив его ветки с github’а, из архива скопируйте файл msfgui.exe и папку dist в папку metasploit-framework и запустите msfgui.
На этом всё! Получилась такая маленькая и скромненькая инструкция. Некоторые части которой искались на множестве форумов, но я их не указал, т.к. не помню уже, да и использовались из них только команды. Все пожелания, ошибки и недочёты прошу в комментарии. Так же если кому будет интересно могу помочь сделать тоже самое на Linux’е.
Об установщике Metasploit
Стандартный установщик
Ссылка скрыта от гостей
использует графический интерфейс, чтобы помочь вам в процессе установки. Обычно, это несколько подсказок, которые помогают определить локацию для установки Metasploit и порт, который вы хотите, чтобы Metasploit использовал. Когда начинается инсталляция, установщик инсталлирует зависимости и службы, необходимые для запуска Metasploit.
Минимальные требования
* Это минимальные требования для запуска Metasploit. Если вы устанавливаете Metasploit и Nexpose Ultimate вместе, то мы рекомендуем вам установить их в отдельные друг от друга системы. Если вы попробуете запустить обе программы на одной системе, то у них могут возникнуть проблемы с производительностью.
Для получения большей информации об установке Nexpose и ControlsInsight посетите
Ссылка скрыта от гостей
.
Перед началом установки Metasploit
Установка Metasploit
- Найдите файл установщик Windows и дважды щелкните на значке программы установки.
- Когда появится окно установки, нажмите Next для начала инсталляции.
- Подтвердите согласие с условиями лицензионного соглашения и нажмите Next.
- В следующем окне выберите, в какую директорию установить Metasploit. Эта директория должна быть пуста. Нажмите Next для продолжения.
- Когда возникнет окно отключения антивируса и фаервола, убедитесь, что они не запущены. Нажмите Next, если они отключены. Если вы не отключили их, то сделайте это сейчас.
- Если установщик обнаружит, что антивирус или фаервол не отключен, то возникнет следующее предупреждение:
- Нажмите OK, чтобы закрыть предупреждение. Вы должны отключить свой антивирус и фаервол. Установщик не позволит вам продолжить процесс инсталляции, пока вы не сделаете этого. Если вы не сможете отключить их, дальнейшая установка Metasploit будет невозможна.
- Введите SSL порт, который будет использовать Metasploit и нажмите Next. Apache сервер использует порт 3790 для HTTPS по умолчанию. Если порт уже привязан к другому процессу, вы можете использовать NetStat, чтобы определить, слушается ли процесс на этом порте и закрыть его, или вы можете ввести другой порт, такой как 8080 или 442.
- Введите имя веб-сервера, который вы хотите использовать для создания сертификата и количество дней, которое вы хотите, чтобы сертификат был действителен в поле Срок действия (Days of validity).
- Выберете Да, довериться сертификату, чтобы установить самоподписанный сертификат Metasploit SSL в архив доверенных сертификатов вашей ОС. Если вы установите сертификат, браузеры, использующие сертификаты операционной системы, такие как Internet Explorer, не оповестят вас о небезопасном сертификате SSL.
Заметьте, что установщик создает временную особенность сертификата генерировать сертификат и немедленно отбрасывать CA, с целью предотвращения фишинг-атаки и потенциального переподписания сертификата.
- Установщик готов к инсталляции Metasploit и всех его компонентов. Нажмите Next для продолжения.
- Когда установка завершится, нажмите Финиш.
После завершения установки, появится окно, которое предложит вам запустить Metasploit Web UI. Теперь вам необходимо запустить Metasploit Web UI для создания аккаунта пользователя и активации вашего лицензионного ключа. Вам не нужно перезагружать систему, чтобы запустить Metasploit в первый раз.
Активация лицензионного ключа
- Выберете Пуск>Программы> Metasploit>Разрешить Metasploit UI для запуска пользовательского интерфейса Metasploit Pro.
- Если вы получите предупреждение о ненадежности протоколов безопасности, выберите, что вы осознаете риск и хотите перейти на сайт. Появление предупредительного окна зависит от браузера, который вы используете.
- Когда появится веб-интерфейс Metasploit Pro, на экране отобразится страница New User Setup. Следуйте инструкциям на экране, чтобы создать аккаунт пользователя для Metasploit Pro. Сохраните информацию об аккаунте пользователя, чтобы использовать её в дальнейшем для входа в Metasploit Pro.
- После создания аккаунта пользователя появится страница активации Metasploit. Введите лицензионный ключ, полученный от Rapid7, в поле «Product Key».
Если вам нужно использовать HTTP proxy для запуска интернета, вы можете выбрать опцию HTTP proxy и предоставить информацию о HTTP proxy сервере, который хотите использовать.
- Активация лицензионного ключа.
После активации лицензионного ключа появится страница продукта. Если вам необходима помощь, чтобы начать использовать программу, ознакомьтесь с Руководством пользователя Metasploit Pro.
Помощь
Как получить лицензионный ключ?
Пожалуйста, свяжитесь с нашим отделом продаж по адресу sales@rapid7.com для получения ключа.
Как решить следующую проблему «Metasploit is initializing error»?
После установки Metasploit, возможно, вам понадобится подождать несколько минут для перезапуска сервиса. Если сервис не перезагрузился, сделайте это вручную.
Выберите Пуск>Программы>Службы> Metasploit>Остановить службу (Start > Programs > Metasploit > Services > Stop Services). Затем выберите Пуск>Программы> Metasploit>Службы>Запустить службу (Start > Programs > Metasploit > Services > Start Services) для перезапуска службы Metasploit.
Перевод: Анна Давыдова
Источник:
Ссылка скрыта от гостей
This is a blog, that will show you the step by step installation of the Metasploit framework in both Windows and Linux operating system. I have also created and shared a video on the installation of Virtual Box in Window.
Apart from installations this blog also contains how you can set up a Metasploitable machine so that you can perform practicals of the pen-test. If you are interested to know how to start your career in ethical hacking you can check my blog on How to Become an Ethical Hacker | Techofide
If you don’t know what is Metasploit framework and how to use it, Metasploit tutorial, then you can check my blog on What is Metasploit Framework in which I have discussed Metasploit framework, its usage, commands, penetration testing and a practical demonstration of hacking.
You can also check other Cyber Security blogs related to tools in crackcodes
So let’s get started with our Installations.
- How to Install Metasploit in Linux
- How to Install Metasploit in Windows
- How to Install Virtual Box in Windows
- How to Install Metasploitable Machine
How to Install Metasploit in Ubuntu
Metasploit is a framework that is used for penetration testing, it offers various module exploits, payloads, auxiliary, post and programs that make work easier to access systems and found vulnerabilities for security professionals, testers, analyst and hackers.
It is open-source and free software. It is very easy to install Metasploit in your Linux system. If you are using Kali then you already know there are lots of tools present and this tool is also pre-installed on it, but if you are using any other Linux like Ubuntu, Redhat, CentOS, Mint etc. then you may follow the below-mentioned installation steps.
Note: The commands which will I showed you below are also applicable to other versions of Linux operating systems
Step 1: First we need to do basic things like update and upgrade our system with the below-given cmds (commands).
sudo apt update
sudo apt upgrade
Now our system is updated and ready to install Metasploit Framework, but before that, we need to install some dependencies, libraries and other packages that are the basic requirements to run Metasploit on your system.
Step 2: Let’s install important libraries, repositories and exchange signatures with git-core that are required. So just copy the below-mentioned cmd as it is to your terminal and execute it.
sudo apt-get install -y curl gpgv2 autoconf bison build-essential git-core
Step 3: After libraries, we need to install some important dependencies and utilities for Metasploit Framework. Just copy the same below cmd as it is to your terminal and execute it.
sudo apt install libapr1 libaprutil1 libcurl4-openssl-dev libgmp3-dev libpcap-dev libpq-dev libreadline-dev libsqlite3-dev libssl-dev libsvn1 libtool libxml2 libxml2-dev libxslt-dev
Step 4:Now again we have to install some other utilities like database, openssl, and download some libraries like zlib1g, xsel etc. So just run the below cmd
sudo apt install locate ncurses-dev openssl postgresql postgresql-contrib wget xsel zlib1g zlib1g-dev
Now we have installed all the ruby package utilities and repositories. Let’s download and install Metasploit Framework.
Step 5:We will use the curl command to download our Metasploit directly from the official rapid7 Github repository. Just follow the below cmd, (curl is used to transfer files from remote computers and supports a lot of protocols, we will use it to download Metasploit Framework.)
curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall
Step 6: Now we have successfully downloaded, but before running we need to change the permission of msfinstall file to executable. So use changemode cmd to change the permissions. Follow the below-mentioned cmd.
sudo chmod 755 msfinstall
Step 7: Now let’s start Metasploit but first run the Postgresql database by following the below command.
sudo service postgresql start
After starting your database you can also check the status of that by replacing status with start on the above command.
Step 8: Now run the msfconsole command and enter the Metasploit Framework interface.
sudo msfconsole
Installing Metasploit on Windows 10
Installing Metasploit on Window is similar to other software installation that we do on Window i.e, you just need to run a setup and install by clicking on the Next button serval times
Note: Installation steps are the same for other versions of Window like 7 and 8.
Step 1: To install Metasploit on Window is simple like other Softwares. So first download it by clicking on Download Metasploit Framework for Window
Step 2: Now after downloading just go to your Downloads directory and double click on downloaded installer «metasploit-lates-windows-x64-installer» to start the installation process.
Step 3: Now just click on Next to proceed with the installation.
Step 4: Now it will ask you to accept the license. So just accept it by clicking on «I accept the agreement» and proceed by clicking on Next
Step 5: In this step, you have to choose the path where you want to install Metasploit. In the below image I am going with the default location you can choose any other if you want and just proceed with the installation by clicking on the Next
Step 6: Now it’s showing a warning that you need to disable the firewall and Anti-Virus before proceeding next step. So just disable both and then proceed with Next (Don’t worry after installation you can again enable that again)
Step 7: Now you need to choose a port where your application will work. I suggest you for now just go with the default port that is 3790 and click on Next to proceed.
Step 8: Now you need to give your server address if you have otherwise you can proceed with the local so just type localhost to create a trusted hosts SSL certificate.
Step 9: Now we are done with our configuration and ready to install so just proceed with it by clicking on Next
Step 10: Here you need to wait for a time until the process completes.
Step 11: We have successfully installed Metasploit Framework in our Window System. So just click on Finish to close the window
Step 12: Now go to your Search Menu and search for Metasploit Console, then click on Open to launch the Metasploit Console.
Step 13: It will launch and take time for the first time to run but after a while, it will take you to the msfconsole. You can See the below image same on your screen where it showing banner, exploit, encoders, nops, msf etc.
How to Install Virtual Box on Windows 10
Installing Virtual Box is easy, you can watch the below video to know how to install a Virtual Box on Window 10 and don’t worry you can follow the same steps if you want to install it in your Window 7 or 8.
You can download the Virtual Box latest version by clicking on Download Virtual Box
How to Install Metasploitable 2
Metasploitable is a very helpful and useful machine when your goal is penetration testing. If you don’t know what is Metasploitable machine and how to use it, then you can click on What is Metasploitable to know more about Metasploitable Machine and its usage.
So you can easily set up this machine by following the few steps that are below:
Step 1: First you need to download the Metasploitable machine file. So to download just click on Download Metasploitable. In this guide, I have installed my machine on Virtual Box.
Step 2: Launch your Virtual Box and click on the New button, check the image for reference.
Step 3: You need to fill the below fields to start creating your Metasploitable machine.
- Name: Enter any name you want to give to your machine
- Machine Folder: Select the folder where you want to install your machine.
- Type: Here you have to choose Linux
- Version: In this, you have to choose Other Linux (64bit) or (32bit)
Now just click on Next to proceed with your creation.
Step 4: Here is the step where you will assign RAM for your Metasploitable machine. So just go with at least 1 GB of RAM i.e, 1024 MB
Step 5: Let’s select our downloaded Metasploit file to install that and create a Hard Disk space. See the below image for reference. Click on the directory icon to select your Metasploitable file.
Step 6: Now click on Add and browse your downloaded file
Step 7: Here I am choosing the Metasploitable file. Make sure to choose the same file.
Step 8: Now just select Metasploitable.vmdk file and then click on Choose. After that, you will be back to Step 4 where you have to click on Create to continue (Check the image of Step 4 for more reference)
Step 9: Now we are done with the set-up, but before starting our Metasploitable machine we just need to change one setting. So just click on the Settings icon (See picture for more reference)
Step 10: From «Settings» Just click on Network and then choose Bridged Adapter instead of NAT under «Attached to:» drop down menu, then click on OK to save the settings.
Step 11: Now just click on «Start» to run your Metasploitable machine.
Step 12: Now as you can see our Metasploitable machine is booting up. So wait for few minutes it will take you to the console soon.
Step 13: Now we are in the Loing prompt where you have to enter your credentials before going inside your machine. So check the highlighted area of the below picture where you can see the default id and password.
ID: msfadmin
Password: msfadmin
Step 14: After entering credentials you can see the below picture we are in our Metasploitable machine.
I hope you like this blog, I have tried to cover all important installations for Metasploit and also tried to show you how you can install Metasploit on different platforms.
Eager to explore more about the Metasploit framework? Are you ready to know how to hack the system and other practical stuff? Just click on How to use Metasploit
Apart from this if you want to know which is the best Linux OS for you, then you can click on «How To Install Arch Linux 2021«
Related Blogs
- How to Become an Ethical Hacker | Techofide
- What is Metasploit Framework | What is Penetration Testing | How to use Metasploit
- How To Install Arch Linux 2023 [Installation Guide] | Techofide
- Metasploit Unleashed | Offensive Security
Other Recommended Blogs
- What is Keyword | What is Keyword Research | Techofide
- What is Graph in Data Structures?