Metasploit scripting with MSGRPC
Metasploit is an open-source project that provides public resources for developing, testing, and executing exploits. It can also be used to create security testing tools, exploit modules, and as a penetration testing framework.
Metasploit is written in Ruby and it does not support modules or scripts written in Python.
However, Metasploit does have a MSGRPC, Bidirectional RPC (Remote Procedure Call) interface using MSGPACK. The pymetasploit
Python module helps to interact between Python and Metasploit's msgrpc
.
So before scripting, we have to load msfconsole
and start the msgrpc
service. Next, let's start Metasploit and the MSGRPC interface. We could start MSGRPC with msfrpcd
in Metasploit. Here are the full options for msfrpcd
:
$ ./msfrpcd
The output is as follows:
To start MSGRPC with the password 123456
:
$ ./msfrpcd -P 123456 -n -f
Now that Metasploit's RPC interface is listening on port 55553
. We can proceed to write our Python script.
Interacting with MSGRPC...