Skip to content

Commit fb3d349

Browse files
committed
Land #16676, Add 6th getsystem technique
2 parents fc2efc6 + df69ffe commit fb3d349

File tree

5 files changed

+19
-6
lines changed

5 files changed

+19
-6
lines changed

Gemfile.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ PATH
3030
metasploit-concern
3131
metasploit-credential
3232
metasploit-model
33-
metasploit-payloads (= 2.0.93)
33+
metasploit-payloads (= 2.0.94)
3434
metasploit_data_models
3535
metasploit_payloads-mettle (= 1.0.18)
3636
mqtt
@@ -247,7 +247,7 @@ GEM
247247
activemodel (~> 6.0)
248248
activesupport (~> 6.0)
249249
railties (~> 6.0)
250-
metasploit-payloads (2.0.93)
250+
metasploit-payloads (2.0.94)
251251
metasploit_data_models (5.0.5)
252252
activerecord (~> 6.0)
253253
activesupport (~> 6.0)

lib/rex/post/meterpreter/extensions/priv/priv.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ def self.extension_id
3030
named_pipe_2: 2,
3131
token_dup: 3,
3232
named_pipe_rpcss: 4,
33-
named_pipe_print_spooler: 5
33+
named_pipe_print_spooler: 5,
34+
named_pipe_efs: 6
3435
}.freeze
3536

3637
#

lib/rex/post/meterpreter/ui/console/command_dispatcher/priv/elevate.rb

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ class Console::CommandDispatcher::Priv::Elevate
2424
ELEVATE_TECHNIQUE_SERVICE_TOKENDUP = 3
2525
ELEVATE_TECHNIQUE_SERVICE_NAMEDPIPE_RPCSS = 4
2626
ELEVATE_TECHNIQUE_NAMEDPIPE_PRINTSPOOLER = 5
27+
ELEVATE_TECHNIQUE_NAMEDPIPE_EFS = 6
2728

2829
ELEVATE_TECHNIQUE_DESCRIPTION =
2930
[
@@ -32,7 +33,8 @@ class Console::CommandDispatcher::Priv::Elevate
3233
'Named Pipe Impersonation (Dropper/Admin)',
3334
'Token Duplication (In Memory/Admin)',
3435
'Named Pipe Impersonation (RPCSS variant)',
35-
'Named Pipe Impersonation (PrintSpooler variant)'
36+
'Named Pipe Impersonation (PrintSpooler variant)',
37+
'Named Pipe Impersonation (EFSRPC variant - AKA EfsPotato)'
3638
]
3739

3840
#

metasploit-framework.gemspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ Gem::Specification.new do |spec|
7070
# are needed when there's no database
7171
spec.add_runtime_dependency 'metasploit-model'
7272
# Needed for Meterpreter
73-
spec.add_runtime_dependency 'metasploit-payloads', '2.0.93'
73+
spec.add_runtime_dependency 'metasploit-payloads', '2.0.94'
7474
# Needed for the next-generation POSIX Meterpreter
7575
spec.add_runtime_dependency 'metasploit_payloads-mettle', '1.0.18'
7676
# Needed by msfgui and other rpc components

modules/post/windows/escalate/getsystem.rb

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,22 @@ def initialize(info = {})
2828
priv_elevate_getsystem
2929
]
3030
}
31+
},
32+
'Notes' => {
33+
'AKA' => [
34+
'Named Pipe Impersonation',
35+
'Token Duplication',
36+
'RPCSS',
37+
'PrintSpooler',
38+
'EFSRPC',
39+
'EfsPotato'
40+
]
3141
}
3242
)
3343
)
3444

3545
register_options([
36-
OptInt.new('TECHNIQUE', [false, "Specify a particular technique to use (1-5), otherwise try them all", 0])
46+
OptInt.new('TECHNIQUE', [false, "Specify a particular technique to use (1-6), otherwise try them all", 0])
3747
])
3848
end
3949

0 commit comments

Comments
 (0)