From 56eb828cc5d57f0f36bbb43e9b405fb9acefe2f0 Mon Sep 17 00:00:00 2001 From: Brent Cook Date: Mon, 30 Oct 2017 14:04:10 -0500 Subject: [PATCH] add e500v2 payloads --- Gemfile.lock | 2 +- .../sessions/meterpreter_ppce500v2_linux.rb | 29 ++++++++++++ lib/msf/core/payload/uuid.rb | 3 +- .../linux/aarch64/meterpreter_reverse_http.rb | 3 +- .../aarch64/meterpreter_reverse_https.rb | 3 +- .../linux/aarch64/meterpreter_reverse_tcp.rb | 3 +- .../linux/armbe/meterpreter_reverse_http.rb | 3 +- .../linux/armbe/meterpreter_reverse_https.rb | 3 +- .../linux/armbe/meterpreter_reverse_tcp.rb | 3 +- .../linux/armle/meterpreter_reverse_http.rb | 3 +- .../linux/armle/meterpreter_reverse_https.rb | 3 +- .../linux/armle/meterpreter_reverse_tcp.rb | 3 +- .../linux/mips64/meterpreter_reverse_http.rb | 3 +- .../linux/mips64/meterpreter_reverse_https.rb | 3 +- .../linux/mips64/meterpreter_reverse_tcp.rb | 3 +- .../linux/mipsbe/meterpreter_reverse_http.rb | 3 +- .../linux/mipsbe/meterpreter_reverse_https.rb | 3 +- .../linux/mipsbe/meterpreter_reverse_tcp.rb | 3 +- .../linux/mipsle/meterpreter_reverse_http.rb | 3 +- .../linux/mipsle/meterpreter_reverse_https.rb | 3 +- .../linux/mipsle/meterpreter_reverse_tcp.rb | 3 +- .../linux/ppc/meterpreter_reverse_http.rb | 3 +- .../linux/ppc/meterpreter_reverse_https.rb | 3 +- .../linux/ppc/meterpreter_reverse_tcp.rb | 3 +- .../linux/ppc64le/meterpreter_reverse_http.rb | 3 +- .../ppc64le/meterpreter_reverse_https.rb | 3 +- .../linux/ppc64le/meterpreter_reverse_tcp.rb | 3 +- .../ppce500v2/meterpreter_reverse_http.rb | 44 +++++++++++++++++++ .../ppce500v2/meterpreter_reverse_https.rb | 44 +++++++++++++++++++ .../ppce500v2/meterpreter_reverse_tcp.rb | 44 +++++++++++++++++++ .../linux/x64/meterpreter_reverse_http.rb | 3 +- .../linux/x64/meterpreter_reverse_https.rb | 3 +- .../linux/x64/meterpreter_reverse_tcp.rb | 3 +- .../linux/x86/meterpreter_reverse_http.rb | 3 +- .../linux/x86/meterpreter_reverse_https.rb | 3 +- .../linux/x86/meterpreter_reverse_tcp.rb | 3 +- .../linux/zarch/meterpreter_reverse_http.rb | 3 +- .../linux/zarch/meterpreter_reverse_https.rb | 3 +- .../linux/zarch/meterpreter_reverse_tcp.rb | 3 +- .../osx/x64/meterpreter_reverse_http.rb | 3 +- .../osx/x64/meterpreter_reverse_https.rb | 3 +- .../osx/x64/meterpreter_reverse_tcp.rb | 3 +- tools/modules/generate_mettle_payloads.rb | 25 ++++++----- 43 files changed, 249 insertions(+), 50 deletions(-) create mode 100644 lib/msf/base/sessions/meterpreter_ppce500v2_linux.rb create mode 100644 modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_http.rb create mode 100644 modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_https.rb create mode 100644 modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_tcp.rb diff --git a/Gemfile.lock b/Gemfile.lock index e32cd33f32..5a57421014 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -252,7 +252,7 @@ GEM recog (2.1.16) nokogiri redcarpet (3.4.0) - rex-arch (0.1.11) + rex-arch (0.1.13) rex-text rex-bin_tools (0.1.4) metasm diff --git a/lib/msf/base/sessions/meterpreter_ppce500v2_linux.rb b/lib/msf/base/sessions/meterpreter_ppce500v2_linux.rb new file mode 100644 index 0000000000..85f1b69b3b --- /dev/null +++ b/lib/msf/base/sessions/meterpreter_ppce500v2_linux.rb @@ -0,0 +1,29 @@ +# -*- coding: binary -*- + +require 'msf/base/sessions/meterpreter' + +module Msf +module Sessions + +### +# +# This class creates a platform-specific meterpreter session type +# +### +class Meterpreter_ppce500v2_Linux < Msf::Sessions::Meterpreter + def supports_ssl? + false + end + def supports_zlib? + false + end + def initialize(rstream, opts={}) + super + self.base_platform = 'linux' + self.base_arch = ARCH_PPCE500V2 + end +end + +end +end + diff --git a/lib/msf/core/payload/uuid.rb b/lib/msf/core/payload/uuid.rb index acc100406a..1a651242e3 100644 --- a/lib/msf/core/payload/uuid.rb +++ b/lib/msf/core/payload/uuid.rb @@ -43,7 +43,8 @@ class Msf::Payload::UUID 24 => ARCH_AARCH64, 25 => ARCH_MIPS64, 26 => ARCH_PPC64LE, - 27 => ARCH_R + 27 => ARCH_R, + 28 => ARCH_PPCE500V2 } Platforms = { diff --git a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_http.rb index 88c27331ff..3a9e4e3e27 100644 --- a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_AARCH64, diff --git a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_https.rb index 70b5b22c3a..d5eda3afaf 100644 --- a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_AARCH64, diff --git a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_tcp.rb index 3c23cfc864..3400e28e34 100644 --- a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_AARCH64, diff --git a/modules/payloads/singles/linux/armbe/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/armbe/meterpreter_reverse_http.rb index f4858b8243..bd32104cce 100644 --- a/modules/payloads/singles/linux/armbe/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/armbe/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_ARMBE, diff --git a/modules/payloads/singles/linux/armbe/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/armbe/meterpreter_reverse_https.rb index 894c078891..073d4b31b3 100644 --- a/modules/payloads/singles/linux/armbe/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/armbe/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_ARMBE, diff --git a/modules/payloads/singles/linux/armbe/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/armbe/meterpreter_reverse_tcp.rb index 1616b986ec..d2d13aedc0 100644 --- a/modules/payloads/singles/linux/armbe/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/armbe/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_ARMBE, diff --git a/modules/payloads/singles/linux/armle/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/armle/meterpreter_reverse_http.rb index 62d9f16d0e..e03945a404 100644 --- a/modules/payloads/singles/linux/armle/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/armle/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_ARMLE, diff --git a/modules/payloads/singles/linux/armle/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/armle/meterpreter_reverse_https.rb index 3149bcca28..e31c66b376 100644 --- a/modules/payloads/singles/linux/armle/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/armle/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_ARMLE, diff --git a/modules/payloads/singles/linux/armle/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/armle/meterpreter_reverse_tcp.rb index 1243e402de..8bd8a3cc05 100644 --- a/modules/payloads/singles/linux/armle/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/armle/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_ARMLE, diff --git a/modules/payloads/singles/linux/mips64/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/mips64/meterpreter_reverse_http.rb index dd9368b245..10f36f74d8 100644 --- a/modules/payloads/singles/linux/mips64/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/mips64/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_MIPS64, diff --git a/modules/payloads/singles/linux/mips64/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/mips64/meterpreter_reverse_https.rb index 8c34b01940..e0beb782fe 100644 --- a/modules/payloads/singles/linux/mips64/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/mips64/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_MIPS64, diff --git a/modules/payloads/singles/linux/mips64/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/mips64/meterpreter_reverse_tcp.rb index 8e0de4303b..c965638d7e 100644 --- a/modules/payloads/singles/linux/mips64/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/mips64/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_MIPS64, diff --git a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_http.rb index fdc9ad4109..d1749f9c25 100644 --- a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_MIPSBE, diff --git a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_https.rb index a5db786462..bc1d3f2c08 100644 --- a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_MIPSBE, diff --git a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_tcp.rb index da8aba961f..cc021b9ff2 100644 --- a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_MIPSBE, diff --git a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_http.rb index 21021201df..a98f452a62 100644 --- a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_MIPSLE, diff --git a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_https.rb index 4bd4e3818e..258bd4192f 100644 --- a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_MIPSLE, diff --git a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_tcp.rb index 3735553d80..78b4d6b8d7 100644 --- a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_MIPSLE, diff --git a/modules/payloads/singles/linux/ppc/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/ppc/meterpreter_reverse_http.rb index c18783c2b3..83aa882cc2 100644 --- a/modules/payloads/singles/linux/ppc/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/ppc/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_PPC, diff --git a/modules/payloads/singles/linux/ppc/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/ppc/meterpreter_reverse_https.rb index 651bc9c1b6..9b0c40b47f 100644 --- a/modules/payloads/singles/linux/ppc/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/ppc/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_PPC, diff --git a/modules/payloads/singles/linux/ppc/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/ppc/meterpreter_reverse_tcp.rb index d2771d7a0c..7832e02b38 100644 --- a/modules/payloads/singles/linux/ppc/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/ppc/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_PPC, diff --git a/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_http.rb index 8baaf5149a..d7d893c797 100644 --- a/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_PPC64LE, diff --git a/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_https.rb index 8bfe23028d..43922b34f8 100644 --- a/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_PPC64LE, diff --git a/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_tcp.rb index 7f6980e6f7..28f1df859a 100644 --- a/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/ppc64le/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_PPC64LE, diff --git a/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_http.rb new file mode 100644 index 0000000000..17a4ad60cc --- /dev/null +++ b/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_http.rb @@ -0,0 +1,44 @@ +## +# This module requires Metasploit: https://metasploit.com/download +# Current source: https://github.com/rapid7/metasploit-framework +## + +require 'msf/core/handler/reverse_http' +require 'msf/base/sessions/meterpreter_options' +require 'msf/base/sessions/mettle_config' +require 'msf/base/sessions/meterpreter_ppce500v2_linux' + +module MetasploitModule + + include Msf::Payload::Single + include Msf::Sessions::MeterpreterOptions + include Msf::Sessions::MettleConfig + + def initialize(info = {}) + super( + update_info( + info, + 'Name' => 'Linux Meterpreter, Reverse HTTP Inline', + 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', + 'Author' => [ + 'Adam Cammack ', + 'Brent Cook ', + 'timwr' + ], + 'Platform' => 'linux', + 'Arch' => ARCH_PPCE500V2, + 'License' => MSF_LICENSE, + 'Handler' => Msf::Handler::ReverseHttp, + 'Session' => Msf::Sessions::Meterpreter_ppce500v2_Linux + ) + ) + end + + def generate + opts = { + scheme: 'http', + stageless: true + } + MetasploitPayloads::Mettle.new('powerpc-e500v2-linux-musl', generate_config(opts)).to_binary :exec + end +end diff --git a/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_https.rb new file mode 100644 index 0000000000..345737bb79 --- /dev/null +++ b/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_https.rb @@ -0,0 +1,44 @@ +## +# This module requires Metasploit: https://metasploit.com/download +# Current source: https://github.com/rapid7/metasploit-framework +## + +require 'msf/core/handler/reverse_https' +require 'msf/base/sessions/meterpreter_options' +require 'msf/base/sessions/mettle_config' +require 'msf/base/sessions/meterpreter_ppce500v2_linux' + +module MetasploitModule + + include Msf::Payload::Single + include Msf::Sessions::MeterpreterOptions + include Msf::Sessions::MettleConfig + + def initialize(info = {}) + super( + update_info( + info, + 'Name' => 'Linux Meterpreter, Reverse HTTPS Inline', + 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', + 'Author' => [ + 'Adam Cammack ', + 'Brent Cook ', + 'timwr' + ], + 'Platform' => 'linux', + 'Arch' => ARCH_PPCE500V2, + 'License' => MSF_LICENSE, + 'Handler' => Msf::Handler::ReverseHttps, + 'Session' => Msf::Sessions::Meterpreter_ppce500v2_Linux + ) + ) + end + + def generate + opts = { + scheme: 'https', + stageless: true + } + MetasploitPayloads::Mettle.new('powerpc-e500v2-linux-musl', generate_config(opts)).to_binary :exec + end +end diff --git a/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_tcp.rb new file mode 100644 index 0000000000..2de9507578 --- /dev/null +++ b/modules/payloads/singles/linux/ppce500v2/meterpreter_reverse_tcp.rb @@ -0,0 +1,44 @@ +## +# This module requires Metasploit: https://metasploit.com/download +# Current source: https://github.com/rapid7/metasploit-framework +## + +require 'msf/core/handler/reverse_tcp' +require 'msf/base/sessions/meterpreter_options' +require 'msf/base/sessions/mettle_config' +require 'msf/base/sessions/meterpreter_ppce500v2_linux' + +module MetasploitModule + + include Msf::Payload::Single + include Msf::Sessions::MeterpreterOptions + include Msf::Sessions::MettleConfig + + def initialize(info = {}) + super( + update_info( + info, + 'Name' => 'Linux Meterpreter, Reverse TCP Inline', + 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', + 'Author' => [ + 'Adam Cammack ', + 'Brent Cook ', + 'timwr' + ], + 'Platform' => 'linux', + 'Arch' => ARCH_PPCE500V2, + 'License' => MSF_LICENSE, + 'Handler' => Msf::Handler::ReverseTcp, + 'Session' => Msf::Sessions::Meterpreter_ppce500v2_Linux + ) + ) + end + + def generate + opts = { + scheme: 'tcp', + stageless: true + } + MetasploitPayloads::Mettle.new('powerpc-e500v2-linux-musl', generate_config(opts)).to_binary :exec + end +end diff --git a/modules/payloads/singles/linux/x64/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/x64/meterpreter_reverse_http.rb index 2c41b001e2..07d84a9546 100644 --- a/modules/payloads/singles/linux/x64/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/x64/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_X64, diff --git a/modules/payloads/singles/linux/x64/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/x64/meterpreter_reverse_https.rb index a89325ffbb..1b019f6ea9 100644 --- a/modules/payloads/singles/linux/x64/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/x64/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_X64, diff --git a/modules/payloads/singles/linux/x64/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/x64/meterpreter_reverse_tcp.rb index b5ace9bfeb..d039699b84 100644 --- a/modules/payloads/singles/linux/x64/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/x64/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_X64, diff --git a/modules/payloads/singles/linux/x86/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/x86/meterpreter_reverse_http.rb index 078ea923e9..af7e1d5c24 100644 --- a/modules/payloads/singles/linux/x86/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/x86/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_X86, diff --git a/modules/payloads/singles/linux/x86/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/x86/meterpreter_reverse_https.rb index a3f8085c2a..6ce43b87f7 100644 --- a/modules/payloads/singles/linux/x86/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/x86/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_X86, diff --git a/modules/payloads/singles/linux/x86/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/x86/meterpreter_reverse_tcp.rb index 3660fc5810..1f2fb19f4f 100644 --- a/modules/payloads/singles/linux/x86/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/x86/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_X86, diff --git a/modules/payloads/singles/linux/zarch/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/zarch/meterpreter_reverse_http.rb index e522b7c89c..c678a47d9e 100644 --- a/modules/payloads/singles/linux/zarch/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/zarch/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_ZARCH, diff --git a/modules/payloads/singles/linux/zarch/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/zarch/meterpreter_reverse_https.rb index ae31cc5abe..76be12d28d 100644 --- a/modules/payloads/singles/linux/zarch/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/zarch/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_ZARCH, diff --git a/modules/payloads/singles/linux/zarch/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/zarch/meterpreter_reverse_tcp.rb index 5e73f26542..85223495a7 100644 --- a/modules/payloads/singles/linux/zarch/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/zarch/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'linux', 'Arch' => ARCH_ZARCH, diff --git a/modules/payloads/singles/osx/x64/meterpreter_reverse_http.rb b/modules/payloads/singles/osx/x64/meterpreter_reverse_http.rb index cf4c1f6b81..a8d519d10c 100644 --- a/modules/payloads/singles/osx/x64/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/osx/x64/meterpreter_reverse_http.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'osx', 'Arch' => ARCH_X64, diff --git a/modules/payloads/singles/osx/x64/meterpreter_reverse_https.rb b/modules/payloads/singles/osx/x64/meterpreter_reverse_https.rb index c4f9172030..07bb971461 100644 --- a/modules/payloads/singles/osx/x64/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/osx/x64/meterpreter_reverse_https.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'osx', 'Arch' => ARCH_X64, diff --git a/modules/payloads/singles/osx/x64/meterpreter_reverse_tcp.rb b/modules/payloads/singles/osx/x64/meterpreter_reverse_tcp.rb index 82da65b261..d1eeb5d196 100644 --- a/modules/payloads/singles/osx/x64/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/osx/x64/meterpreter_reverse_tcp.rb @@ -24,7 +24,8 @@ module MetasploitModule 'Description' => 'Run the Meterpreter / Mettle server payload (stageless)', 'Author' => [ 'Adam Cammack ', - 'Brent Cook ' + 'Brent Cook ', + 'timwr' ], 'Platform' => 'osx', 'Arch' => ARCH_X64, diff --git a/tools/modules/generate_mettle_payloads.rb b/tools/modules/generate_mettle_payloads.rb index 967a051b81..3e3c627562 100755 --- a/tools/modules/generate_mettle_payloads.rb +++ b/tools/modules/generate_mettle_payloads.rb @@ -12,18 +12,19 @@ schemes = [ ] arches = [ - ['aarch64','Linux', 'aarch64-linux-musl'], - ['armbe', 'Linux', 'armv5b-linux-musleabi'], - ['armle', 'Linux', 'armv5l-linux-musleabi'], - ['mips64', 'Linux', 'mips64-linux-muslsf'], - ['mipsbe', 'Linux', 'mips-linux-muslsf'], - ['mipsle', 'Linux', 'mipsel-linux-muslsf'], - ['ppc', 'Linux', 'powerpc-linux-muslsf'], - ['ppc64le','Linux', 'powerpc64le-linux-musl'], - ['x64', 'Linux', 'x86_64-linux-musl'], - ['x86', 'Linux', 'i486-linux-musl'], - ['zarch', 'Linux', 's390x-linux-musl'], - ['x64', 'OSX', 'x86_64-apple-darwin'], + ['aarch64', 'Linux', 'aarch64-linux-musl'], + ['armbe', 'Linux', 'armv5b-linux-musleabi'], + ['armle', 'Linux', 'armv5l-linux-musleabi'], + ['mips64', 'Linux', 'mips64-linux-muslsf'], + ['mipsbe', 'Linux', 'mips-linux-muslsf'], + ['mipsle', 'Linux', 'mipsel-linux-muslsf'], + ['ppc', 'Linux', 'powerpc-linux-muslsf'], + ['ppce500v2', 'Linux', 'powerpc-e500v2-linux-musl'], + ['ppc64le', 'Linux', 'powerpc64le-linux-musl'], + ['x64', 'Linux', 'x86_64-linux-musl'], + ['x86', 'Linux', 'i486-linux-musl'], + ['zarch', 'Linux', 's390x-linux-musl'], + ['x64', 'OSX', 'x86_64-apple-darwin'], ] arch = ''