diff --git a/Gemfile.lock b/Gemfile.lock index 524f112a51..6d093e080e 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -48,7 +48,7 @@ PATH metasploit-model metasploit-payloads (= 2.0.239) metasploit_data_models (>= 6.0.7) - metasploit_payloads-mettle (= 1.0.45) + metasploit_payloads-mettle (= 1.0.46) mqtt msgpack (~> 1.6.0) mutex_m @@ -363,7 +363,7 @@ GEM railties (~> 7.0) recog webrick - metasploit_payloads-mettle (1.0.45) + metasploit_payloads-mettle (1.0.46) method_source (1.1.0) mime-types (3.7.0) logger diff --git a/metasploit-framework.gemspec b/metasploit-framework.gemspec index f610617e1b..6dbe72ed08 100644 --- a/metasploit-framework.gemspec +++ b/metasploit-framework.gemspec @@ -76,7 +76,7 @@ Gem::Specification.new do |spec| # Needed for Meterpreter spec.add_runtime_dependency 'metasploit-payloads', '2.0.239' # Needed for the next-generation POSIX Meterpreter - spec.add_runtime_dependency 'metasploit_payloads-mettle', '1.0.45' + spec.add_runtime_dependency 'metasploit_payloads-mettle', '1.0.46' # Needed by msfgui and other rpc components # Locked until build env can handle newer version. See: https://github.com/msgpack/msgpack-ruby/issues/334 spec.add_runtime_dependency 'msgpack', '~> 1.6.0' diff --git a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_http.rb index 3b902c2fa5..a4e3da2836 100644 --- a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_http.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1184672 + CachedSize = 1184784 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_https.rb index 10d9233efc..6d8641a63d 100644 --- a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_https.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1184672 + CachedSize = 1184784 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_tcp.rb index 67964f3a7a..0489aa0e91 100644 --- a/modules/payloads/singles/linux/aarch64/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/aarch64/meterpreter_reverse_tcp.rb @@ -6,7 +6,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1184672 + CachedSize = 1184784 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/armbe/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/armbe/meterpreter_reverse_http.rb index a2e8cea0e1..d68a441ca8 100644 --- a/modules/payloads/singles/linux/armbe/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/armbe/meterpreter_reverse_http.rb @@ -6,7 +6,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1106544 + CachedSize = 1106688 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/armbe/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/armbe/meterpreter_reverse_https.rb index 0707fa7bc6..d62efaa7c8 100644 --- a/modules/payloads/singles/linux/armbe/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/armbe/meterpreter_reverse_https.rb @@ -6,7 +6,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1106544 + CachedSize = 1106688 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/armbe/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/armbe/meterpreter_reverse_tcp.rb index 3ff4b15926..3c5b64a2c1 100644 --- a/modules/payloads/singles/linux/armbe/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/armbe/meterpreter_reverse_tcp.rb @@ -6,7 +6,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1106544 + CachedSize = 1106688 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/armle/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/armle/meterpreter_reverse_http.rb index 7a0ea250bd..9337a2598c 100644 --- a/modules/payloads/singles/linux/armle/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/armle/meterpreter_reverse_http.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1106844 + CachedSize = 1106988 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/armle/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/armle/meterpreter_reverse_https.rb index 3ed27e7077..c3d3db0b51 100644 --- a/modules/payloads/singles/linux/armle/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/armle/meterpreter_reverse_https.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1106844 + CachedSize = 1106988 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/armle/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/armle/meterpreter_reverse_tcp.rb index baaa548137..e8e15067c6 100644 --- a/modules/payloads/singles/linux/armle/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/armle/meterpreter_reverse_tcp.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1106844 + CachedSize = 1106988 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/mips64/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/mips64/meterpreter_reverse_http.rb index 58ed64936b..ef6a7d638c 100644 --- a/modules/payloads/singles/linux/mips64/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/mips64/meterpreter_reverse_http.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1685392 + CachedSize = 1685400 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/mips64/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/mips64/meterpreter_reverse_https.rb index 8c6db900b2..a5a1077dd8 100644 --- a/modules/payloads/singles/linux/mips64/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/mips64/meterpreter_reverse_https.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1685392 + CachedSize = 1685400 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/mips64/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/mips64/meterpreter_reverse_tcp.rb index c597f5fa92..d2ce7155aa 100644 --- a/modules/payloads/singles/linux/mips64/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/mips64/meterpreter_reverse_tcp.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1685392 + CachedSize = 1685400 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_http.rb index 8ed51724b3..0547ba8073 100644 --- a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_http.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1583440 + CachedSize = 1583636 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_https.rb index fa573a232e..8cb20fa1bc 100644 --- a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_https.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1583440 + CachedSize = 1583636 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_tcp.rb index 0579b5cae5..0cc26dda39 100644 --- a/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/mipsbe/meterpreter_reverse_tcp.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1583440 + CachedSize = 1583636 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_http.rb b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_http.rb index 6ab5f15eaf..07d28c039a 100644 --- a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_http.rb +++ b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_http.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1588440 + CachedSize = 1588444 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_https.rb b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_https.rb index c073a8f6e4..2135a7a1bc 100644 --- a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_https.rb +++ b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_https.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1588440 + CachedSize = 1588444 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_tcp.rb b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_tcp.rb index 09b5bb6a58..8173e06446 100644 --- a/modules/payloads/singles/linux/mipsle/meterpreter_reverse_tcp.rb +++ b/modules/payloads/singles/linux/mipsle/meterpreter_reverse_tcp.rb @@ -7,7 +7,7 @@ # Module generated by tools/modules/generate_mettle_payloads.rb module MetasploitModule - CachedSize = 1588440 + CachedSize = 1588444 include Msf::Payload::Single include Msf::Sessions::MeterpreterOptions::Linux diff --git a/spec/lib/msf/core/post/linux/system_spec.rb b/spec/lib/msf/core/post/linux/system_spec.rb index 66be7a3691..aebcc41ab6 100644 --- a/spec/lib/msf/core/post/linux/system_spec.rb +++ b/spec/lib/msf/core/post/linux/system_spec.rb @@ -2,9 +2,26 @@ require 'spec_helper' RSpec.describe Msf::Post::Linux::System do subject do - mod = Msf::Module.new - mod.extend(Msf::Post::Linux::System) - mod + clazz = Class.new(Msf::Module) do + include Msf::Post::Linux::System + def session + raise 'no session present' + end + end + clazz.new + end + + let(:session) do + instance_double( + Msf::Sessions::Meterpreter, + type: 'shell', + session_host: '192.0.2.2', + platform: 'linux' + ) + end + + before(:each) do + allow(subject).to receive(:session).and_return(session) end describe '#get_sysinfo' do @@ -307,6 +324,7 @@ RSpec.describe Msf::Post::Linux::System do end it 'raises an error if unable to retrieve hostname' do + allow(subject).to receive(:command_exists?).with('uname').and_return(true) allow(subject).to receive(:cmd_exec).with('uname -n').and_raise(StandardError) expect { subject.get_hostname }.to raise_error('Unable to retrieve hostname') end @@ -326,6 +344,7 @@ RSpec.describe Msf::Post::Linux::System do end it 'raises an error if unable to gather shell name' do + allow(subject).to receive(:command_exists?).with('ps').and_return(true) allow(subject).to receive(:cmd_exec).with('ps -p $$').and_raise(StandardError) expect { subject.get_shell_name }.to raise_error('Unable to gather shell name') end