WhisperGate's Discord CDN hosted malware had me thinking, what other common desktop apps have similar file embed/retrieval capabilities?
How about my favorite notetaking app, Notion?
1- Embed your payload. I'm using a Covenant Grunt HTA
2- Running a web proxy of your choice, click to download the HTA you just embedded. Intercept this request and find the GET request to the AWS S3 resource for this file
3- This link is now your phishing/social engineering method. Deck it out with tradecraft (shorten it, come up with a good pretext, get creative)
Once the target clicks on this link, you have a file-less payload delivery mechanism coming from a high trust domain, S3 AWS
4- 😈
good news, red teamers!
@NotionHQ's response to this was that this is intended functionality that a resource, regardless of access rights, is available to anyone for 24 hours if they have this link. So you now have an engine for unlimited high-trust (S3 AWS!) payload links
• • •
Missing some Tweet in this thread? You can try to
force a refresh
[🤔] So MSF/Meterpreter shouldn't be used as a C2. Got it. What features make something secure enough to use as a proper C2 then?
Let's compare and contrast MSF/Meterpreter and @merlin_c2 to highlight some features that I think make a C2 safe enough for ops
...
@merlin_c2 The biggest one, to me, is payload authentication. Not just that a payload can connect to a server, but that *your* payload *only* connects to *your* server
MSF can do this but not by default. Merlin uses the OPAQUE to do so
@merlin_c2 Merlin agents run with a pre-shared key (PSK). Merlin servers set this as well on the listener side
Any Merlin agent bin can try to connect to any Merlin listener, but a session is only established if the pre-shared key values match on both sides. The PSK is used in the OPAQUE..
🧵D/Invoke for D/ummies 🪡
Why just invoke the P when you can invoke the D?
Wanted to slap together a quick How-To on setting up a simple PoC using D/Invoke.
Read on and soon, you too will be invoking the D with vigor!
1/n
D/Invoke allows you to call unmanaged Win APIs without defining them statically in your program. It's much more OPSEC friendly than calling those APIs directly.
2/n
1) Make a plain old Visual Studio C# Console App. We’ll call this one MessageBox. Make it in whatever .NET version you currently run (I am using .NET 5.0):