Lets check different Cobalt Strike shellcodes and stages in the shellcodes emulator SCEMU.
This stages are fully emulated well and can get the IOC and the behavior of the shellcode.
But lets see another first stage big shellcode with c runtime embedded in a second stage.
In this case is loading tons of API using GetProcAddress at the beginning, then some encode/decode pointer and tls get/set values to store an address. And ends up crashing because is jumping an address that seems more code than address 0x9090f1eb.
Here there are two types of allocations:
Lets spawn a console on -c 3307548 and see if some of this allocations has the next stage.
The "m" command show all the memory maps but the "ma" show only the allocations done by the shellcode.
Dumping memory with "md" we see that there is data, and dissasembling this address with "d" we see the prolog of a function.
So we have second stage unpacked in alloc_e40064
With "mdd" we do a memory dump to disk we found the size in previous screenshot, and we can do some static reversing of stage2 in radare/ghidra/ida
In radare we can verify that the extracted is the next stage:
I usually do correlation between the emulation and ghidra, to understand the algorithms.
If wee look further we can realize that the emulator called a function on the stage2, we can see the change of code base address and is calling the allocated buffer in 0x4f...
And this stage2 perform several API calls let's check it in ghidra.
We can see in the emulator that enters in the IF block, and what are the (*DAT_...)() calls
Before a crash lets continue to the SEH pointer, in this case is the way, and the exception routine checks IsDebuggerPresent() which is not any debugger pressent for sure, so eax = 0;
So lets say yes and continue the emulation.
Both IsDebuggerPresent() and UnHandledExceptionFilter() can be used to detect a debugger, but the emulator return what has to return to not be detected.
Nevertheless the shellcode detects something and terminates the process.
Lets trace the branches to understand the logic:
target/release/scemu -f shellcodes/unsuported_cs.bin -vv | egrep '(\*\*|j|cmp|test)'
Lets see from the console where is pointing the SEH chain item:
to be continued ...
https://github.com/sha0coder/scemu
More information
- Hacks And Tools
- Hack Tools Github
- Hacker Tools Apk
- New Hacker Tools
- Hack Tools For Mac
- Hacking Tools And Software
- Hacking Tools Hardware
- Pentest Reporting Tools
- How To Make Hacking Tools
- Hacking Tools For Windows 7
- Hacking Tools 2020
- Nsa Hack Tools
- Tools 4 Hack
- Hack Tools For Ubuntu
- What Is Hacking Tools
- Hacker Tools For Mac
- Hacking Tools Pc
- Hacking App
- Hacker Tools Apk Download
- New Hacker Tools
- How To Hack
- Hacking Tools Mac
- Hack Tools For Pc
- Pentest Tools Android
- Pentest Tools Url Fuzzer
- Bluetooth Hacking Tools Kali
- Hacking Tools Windows 10
- Best Pentesting Tools 2018
- Hacker Tools For Windows
- Hack Rom Tools
- Pentest Tools Android
- Hacker Tools Github
- Hacking Tools For Beginners
- Pentest Tools Apk
- Hack Tools For Windows
- Pentest Tools For Android
- Hacker Tools For Pc
- Hacking Tools For Mac
- Hacker Tools List
- Hacking Tools For Windows Free Download
- Hacker Tools 2019
- Easy Hack Tools
- Wifi Hacker Tools For Windows
- Hack Tool Apk No Root
- Pentest Tools Online
- Computer Hacker
- Hacker Tools For Windows
- Pentest Tools Framework
- How To Install Pentest Tools In Ubuntu
- World No 1 Hacker Software
- Hacker Tools For Pc
- Black Hat Hacker Tools
- Hack Tools Mac
- Hacker Tools 2019
- Hacker Tools List
- Hacking Tools Windows
- Pentest Tools Github
- Hack Tools Online
- Kik Hack Tools
- Pentest Tools Github
- Pentest Tools Free
- Hack And Tools
- Pentest Tools Framework
- Hack Tools Mac
- Android Hack Tools Github
- Best Pentesting Tools 2018
- Pentest Tools For Mac
- Pentest Tools Review
- Pentest Recon Tools
- Pentest Tools Review
- Hacking Tools Download
- Underground Hacker Sites
- Hacker Tool Kit
- Physical Pentest Tools
- Pentest Tools Download
- Best Hacking Tools 2019
- Physical Pentest Tools
- Blackhat Hacker Tools
- Install Pentest Tools Ubuntu
- Hacking Apps
- Hack Tools Download
- Hack Tools For Games
- Best Hacking Tools 2019
- Wifi Hacker Tools For Windows
- Hacker Tools For Pc
- Growth Hacker Tools
- Hacker
- Hacker Tools Mac
- Hacking App
- Hacker Search Tools
- Pentest Tools Linux
- Kik Hack Tools
- What Are Hacking Tools
- Hacking Tools Usb
- Hacking Tools For Pc
- Hacker
- Pentest Tools For Windows
- Kik Hack Tools
- Hacking Tools Usb
- Hacking Tools Online
- Hacking Tools Name
- Hacker Security Tools
- Hacks And Tools
- Pentest Tools Find Subdomains
- Hacker Tools Linux
- Hacking Tools Pc