Update
After my post Zod contacted me with this mike-dropping link: Ultimate AppLocker ByPass List. Really lots of good stuff there! Thx Zod!
Old Post
In the first part I listed a couple of examples of programs that may be used as a proxy to launch other programs. In the meantime, subTee kicked off a very interesting thread on Twitter listing a number of signed .exe binaries that can be used as a proxy to load a DLL. Yesterday I came across a few cool posts by @0rbz_. This in return reminded me of my first post and I decided to add a few more proxy/living off the land ideas.
There is a number of signed .exe that can be used to load other .exes or .dlls and as a result – break standard EDR detection rules, or bypass some whitelisting. This may sometimes involve copying the signed binary to your folder in order to sideload your DLL (PlugX is a very good example, funnily enough – in many cases they don’t even need to bring a signed .exe and fetch one that is typically present on the system).
Here is the list:
- AppVLP.exe – to launch .exe
- pcalua.exe
- odbcconf.exe – to load .dll
- odbcad32.exe – to load .dll via GUI
- WinMail.exe – to load .dll
- copy c:\Program Files\Windows Mail\WinMail.exe to your folder
- name your DLL ‘msoe.dll’
- launch one of these
- WinMail.exe /identcatalog
- WinMail.exe /identfileslist:foo
- WinMail.exe /identfile:foo
- xwizard.exe – to load .dll
- From my previous post
- copy c:\WINDOWS\system32\xwizard.exe to your folder
- name your DLL ‘xwizards.dll’
- run xwizard.exe with at least two arguments
- java.exe – to load .dll
- From my previous post
- run java -agentlib:<dllname>
or - run java -agentpath:<dllname_with_dll_extension>
- any other phantom / sideloaded dlls – to load .dll
- e.g. just google for “site:https://hexacorn.com phantom dll“
If you know of any other tricks like this, please let me know. Thanks!
p.s. as I was about to post it, Huntress Labs just published yet another cool technique using WseClientSvc.exe passthru.exe calc.exe!