From c94e2c1c7a3db2ec8350979dc6ce8c9e543e9735 Mon Sep 17 00:00:00 2001 From: vinicius-batistella Date: Fri, 14 Aug 2026 01:45:35 -0300 Subject: [PATCH] Move AArch64 payload mixins under payload/windows/aarch64/ Mirror the layout used for x86_64 payload mixins (payload/windows/x64/) by relocating exitfunk_aarch64.rb and reverse_tcp_aarch64.rb into lib/msf/core/payload/windows/aarch64/ and adding that directory to Zeitwerk's collapse_list so the module namespaces stay flat (Msf::Payload::Windows::Exitfunk_Aarch64 and ReverseTcp_Aarch64), as noted by dledda-r7 on #21744. The shared helper module (Msf::Payload::Windows::Aarch64, in windows/aarch64.rb) is left where it is - Zeitwerk resolves it from the sibling .rb file while the collapsed aarch64/ directory contributes the individual mixins to the same parent namespace. No code changes in the moved files; msfvenom loads and generates windows/aarch64/exec, shell/reverse_tcp, and shell_reverse_tcp unchanged. Co-authored-by: Cursor --- lib/msf/core/payload/windows/{ => aarch64}/exitfunk_aarch64.rb | 0 .../core/payload/windows/{ => aarch64}/reverse_tcp_aarch64.rb | 0 lib/msf_autoload.rb | 1 + 3 files changed, 1 insertion(+) rename lib/msf/core/payload/windows/{ => aarch64}/exitfunk_aarch64.rb (100%) rename lib/msf/core/payload/windows/{ => aarch64}/reverse_tcp_aarch64.rb (100%) diff --git a/lib/msf/core/payload/windows/exitfunk_aarch64.rb b/lib/msf/core/payload/windows/aarch64/exitfunk_aarch64.rb similarity index 100% rename from lib/msf/core/payload/windows/exitfunk_aarch64.rb rename to lib/msf/core/payload/windows/aarch64/exitfunk_aarch64.rb diff --git a/lib/msf/core/payload/windows/reverse_tcp_aarch64.rb b/lib/msf/core/payload/windows/aarch64/reverse_tcp_aarch64.rb similarity index 100% rename from lib/msf/core/payload/windows/reverse_tcp_aarch64.rb rename to lib/msf/core/payload/windows/aarch64/reverse_tcp_aarch64.rb diff --git a/lib/msf_autoload.rb b/lib/msf_autoload.rb index 42315748312aa..08f90feceb8ac 100644 --- a/lib/msf_autoload.rb +++ b/lib/msf_autoload.rb @@ -81,6 +81,7 @@ def collapse_list "#{__dir__}/msf/core/rpc/v10", "#{__dir__}/msf/core/payload/osx/x64", "#{__dir__}/msf/core/payload/windows/x64", + "#{__dir__}/msf/core/payload/windows/aarch64", # "#{__dir__}/msf/core/payload/linux/x64", "#{__dir__}/msf/core/web_services/servlet", "#{__dir__}/msf/base",