From 24530e138fdda7294f608f9e94aa2aeb00aeaa9e Mon Sep 17 00:00:00 2001 From: Carrie Roberts Date: Fri, 23 Sep 2022 12:15:27 -0600 Subject: [PATCH] Netsh helper dll persistance (#2159) * default to no reboot * add dll and improve atomic * Update T1546.002.yaml Co-authored-by: Michael Haag <5632822+MHaggis@users.noreply.github.com> --- atomics/T1546.007/T1546.007.yaml | 21 ++- atomics/T1546.007/bin/NetshHelper.dll | Bin 0 -> 103936 bytes atomics/T1546.007/src/NetshHelper.sln | 26 +++ .../T1546.007/src/NetshHelper/NetshHelper.cpp | 12 ++ .../src/NetshHelper/NetshHelper.vcxproj | 153 ++++++++++++++++++ .../NetshHelper/NetshHelper.vcxproj.filters | 22 +++ .../src/NetshHelper/NetshHelper.vcxproj.user | 3 + 7 files changed, 234 insertions(+), 3 deletions(-) create mode 100644 atomics/T1546.007/bin/NetshHelper.dll create mode 100644 atomics/T1546.007/src/NetshHelper.sln create mode 100644 atomics/T1546.007/src/NetshHelper/NetshHelper.cpp create mode 100644 atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj create mode 100644 atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj.filters create mode 100644 atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj.user diff --git a/atomics/T1546.007/T1546.007.yaml b/atomics/T1546.007/T1546.007.yaml index 11864424..685b2d58 100644 --- a/atomics/T1546.007/T1546.007.yaml +++ b/atomics/T1546.007/T1546.007.yaml @@ -4,15 +4,30 @@ atomic_tests: - name: Netsh Helper DLL Registration auto_generated_guid: 3244697d-5a3a-4dfc-941c-550f69f91a4d description: | - Netsh interacts with other operating system components using dynamic-link library (DLL) files + You can register a "helper dll" with Netsh as a persistance mechanism. The code in the dll is executed every time netsh.exe is called. + The NetshHelper.dll provided with the atomic will simply launch notepad when netsh.exe is run. + + [Blog](https://htmlpreview.github.io/?https://github.com/MatthewDemaske/blogbackup/blob/master/netshell.html) + [Sample DLL code](https://github.com/outflanknl/NetshHelperBeacon) supported_platforms: - windows input_arguments: helper_file: description: Path to DLL type: Path - default: C:\Path\file.dll + default: PathToAtomicsFolder\T1546.007\bin\NetshHelper.dll + dependencies: + - description: | + Helper DLL must exist on disk at specified location (#{helper_file}) + prereq_command: | + if (Test-Path "#{helper_file}") { exit 0} else { exit 1} + get_prereq_command: | + New-Item -Type Directory (split-path #{helper_file}) -ErrorAction ignore | Out-Null + Invoke-WebRequest "https://github.com/redcanaryco/atomic-red-team/raw/master/atomics/T1546.007/bin/NetshHelper.dll" -OutFile "#{helper_file}" executor: command: | netsh.exe add helper #{helper_file} - name: command_prompt \ No newline at end of file + cleanup_command: | + netsh.exe delete helper #{helper_file} + name: command_prompt + elevation_required: true \ No newline at end of file diff --git a/atomics/T1546.007/bin/NetshHelper.dll b/atomics/T1546.007/bin/NetshHelper.dll new file mode 100644 index 0000000000000000000000000000000000000000..3173cd141524789cc242879c7729e89df0a3a73e GIT binary patch literal 103936 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 literal 0 HcmV?d00001 diff --git a/atomics/T1546.007/src/NetshHelper.sln b/atomics/T1546.007/src/NetshHelper.sln new file mode 100644 index 00000000..f1147410 --- /dev/null +++ b/atomics/T1546.007/src/NetshHelper.sln @@ -0,0 +1,26 @@ + +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual Studio 2010 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NetshHelper", "NetshHelper\NetshHelper.vcxproj", "{3BB0CD58-487C-4FEC-8001-607599477158}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {3BB0CD58-487C-4FEC-8001-607599477158}.Debug|Win32.ActiveCfg = Debug|Win32 + {3BB0CD58-487C-4FEC-8001-607599477158}.Debug|Win32.Build.0 = Debug|Win32 + {3BB0CD58-487C-4FEC-8001-607599477158}.Debug|x64.ActiveCfg = Debug|x64 + {3BB0CD58-487C-4FEC-8001-607599477158}.Debug|x64.Build.0 = Debug|x64 + {3BB0CD58-487C-4FEC-8001-607599477158}.Release|Win32.ActiveCfg = Release|Win32 + {3BB0CD58-487C-4FEC-8001-607599477158}.Release|Win32.Build.0 = Release|Win32 + {3BB0CD58-487C-4FEC-8001-607599477158}.Release|x64.ActiveCfg = Release|x64 + {3BB0CD58-487C-4FEC-8001-607599477158}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/atomics/T1546.007/src/NetshHelper/NetshHelper.cpp b/atomics/T1546.007/src/NetshHelper/NetshHelper.cpp new file mode 100644 index 00000000..6eebf94f --- /dev/null +++ b/atomics/T1546.007/src/NetshHelper/NetshHelper.cpp @@ -0,0 +1,12 @@ +#include +#include // only required if you want to pop calc + +// define the DLL handler 'InitHelpderDll' as required by netsh. +// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms708327(v=vs.85).aspx +extern "C" __declspec(dllexport) DWORD InitHelperDll(DWORD dwNetshVersion, PVOID pReserved) +{ + system ("start notepad"); + + // return NO_ERROR is required + return 0; +} \ No newline at end of file diff --git a/atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj b/atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj new file mode 100644 index 00000000..aa90c43e --- /dev/null +++ b/atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj @@ -0,0 +1,153 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {3BB0CD58-487C-4FEC-8001-607599477158} + Win32Proj + NetshHelperBeacon + NetshHelper + + + + DynamicLibrary + true + Unicode + v143 + + + DynamicLibrary + true + Unicode + v143 + + + DynamicLibrary + false + true + Unicode + v143 + + + DynamicLibrary + false + true + Unicode + v143 + + + + + + + + + + + + + + + + + + + true + + + true + + + false + + + false + + + + + + Level3 + Disabled + WIN32;_DEBUG;_WINDOWS;_USRDLL;NETSHHELPERBEACON_EXPORTS;%(PreprocessorDefinitions) + + + Windows + true + + + + + + + Level3 + Disabled + WIN32;_DEBUG;_WINDOWS;_USRDLL;NETSHHELPERBEACON_EXPORTS;%(PreprocessorDefinitions) + + + Windows + true + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;NETSHHELPERBEACON_EXPORTS;InitHelperDLL;WIN_X86;%(PreprocessorDefinitions) + MultiThreaded + + + Windows + true + true + true + + + false + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;NETSHHELPERBEACON_EXPORTS;InitHelperDLL;WIN_X64;%(PreprocessorDefinitions) + MultiThreaded + + + Windows + true + true + true + + + + + + + + + \ No newline at end of file diff --git a/atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj.filters b/atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj.filters new file mode 100644 index 00000000..bb8bcba1 --- /dev/null +++ b/atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj.filters @@ -0,0 +1,22 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Source Files + + + \ No newline at end of file diff --git a/atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj.user b/atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj.user new file mode 100644 index 00000000..ace9a86a --- /dev/null +++ b/atomics/T1546.007/src/NetshHelper/NetshHelper.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file