Emulating Shellcodes - Chapter 2
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
Continue reading
- Hacker Tools Free Download
- Hack Tool Apk
- Hacker Tools List
- How To Install Pentest Tools In Ubuntu
- Pentest Tools Open Source
- Pentest Tools
- What Are Hacking Tools
- Hack Tools
- Top Pentest Tools
- Top Pentest Tools
- Hacking Tools For Windows Free Download
- Hack Tools For Games
- Pentest Tools Url Fuzzer
- Hack Tools Mac
- Hacking Tools Github
- Hack Tool Apk No Root
- Nsa Hacker Tools
- Best Hacking Tools 2019
- Pentest Tools Linux
- Hacking Tools Mac
- Pentest Recon Tools
- How To Hack
- Android Hack Tools Github
- What Are Hacking Tools
- Pentest Tools For Android
- Pentest Tools Subdomain
- Pentest Tools Port Scanner
- Hack Tools For Ubuntu
- Pentest Tools Open Source
- Pentest Tools Subdomain
- Tools Used For Hacking
- Pentest Tools Nmap
- Hacking Tools Online
- Hack Tools
- Android Hack Tools Github
- Hackers Toolbox
- Pentest Box Tools Download
- How To Make Hacking Tools
- Ethical Hacker Tools
- Hack Tools Pc
- Hacker Techniques Tools And Incident Handling
- Pentest Tools List
- Usb Pentest Tools
- Hack Website Online Tool
- Pentest Tools Alternative
- Kik Hack Tools
- Pentest Tools For Ubuntu
- Pentest Box Tools Download
- Hacker Search Tools
- Hacking Tools For Games
- Hacking Tools
- Hacker Tools Linux
- Pentest Tools
- Hack Tools Download
- Hacker Tools Apk Download
- Blackhat Hacker Tools
- Hacker Tools Github
- Hack Rom Tools
- Hacking Tools Online
- Game Hacking
- Usb Pentest Tools
- Hacking Tools For Pc
- Hacking Tools For Windows 7
- Nsa Hack Tools
- Hacking Tools For Beginners
- Hacker Tools Windows
- Hack And Tools
- What Is Hacking Tools
- Hack Tools
- Hacker Tools For Mac
- Beginner Hacker Tools
- Hacker Tool Kit
- Hack App
- Hacker Tools For Ios
- Hacking Tools For Mac
- What Are Hacking Tools
- Hacking App
- Hacker Tools For Pc
- Pentest Tools Android
- Hacker Tools Linux
- Hack App
- Hacks And Tools
- Hack Rom Tools
- Hack Website Online Tool
- Physical Pentest Tools
- New Hacker Tools
- Hacking Tools For Beginners
- Hacking Tools Usb
- Hacking Tools Online
- World No 1 Hacker Software
- What Are Hacking Tools
- Pentest Recon Tools
- Hack App
- Hacking Tools And Software
- Nsa Hack Tools
- Best Hacking Tools 2020
- Bluetooth Hacking Tools Kali
- Hack Tools Pc
- Hack Tools Download
- Pentest Tools Open Source
- Nsa Hacker Tools
- Hacking Tools 2020
- Pentest Reporting Tools
- Pentest Recon Tools
- Hacking Tools Hardware
- Hacker Tools List
- Hacks And Tools
- How To Hack
- Hacker Tools Mac
- Hacker Techniques Tools And Incident Handling
- Hacker Tools Windows
- Hacking Tools Pc
- What Is Hacking Tools
- Usb Pentest Tools
- Hacker Tools 2019
- Pentest Tools Github
- Hack Tools For Windows
- What Are Hacking Tools
- Hack Tools For Ubuntu
- Hacker Techniques Tools And Incident Handling
- Hack Tools Online
- How To Hack
- Pentest Tools Port Scanner
- Pentest Tools Website
- Pentest Tools Open Source
- Pentest Tools Open Source
0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home