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
More articles
- World No 1 Hacker Software
- Hacker Tools
- Hacker Tools Linux
- Hacker Techniques Tools And Incident Handling
- Hacks And Tools
- Hack Tools 2019
- Hacker Search Tools
- How To Make Hacking Tools
- Pentest Tools Android
- How To Hack
- Growth Hacker Tools
- Best Hacking Tools 2019
- Hacker Tools For Mac
- Hacker Tools For Windows
- Pentest Tools List
- Hacker Tools For Pc
- Hacker Tools Windows
- Pentest Tools Review
- Best Pentesting Tools 2018
- Nsa Hack Tools
- Pentest Tools Nmap
- Pentest Box Tools Download
- Hack Tools Mac
- Pentest Tools Alternative
- Pentest Box Tools Download
- Nsa Hacker Tools
- Hacking Tools Mac
- Usb Pentest Tools
- Nsa Hack Tools Download
- Hacking Tools Hardware
- Hack Tools
- New Hacker Tools
- Pentest Tools Alternative
- Tools 4 Hack
- Hack Tools For Windows
- Hacking Tools Software
- Pentest Tools Nmap
- Pentest Tools List
- Hack Apps
- Hacking Tools For Mac
- Pentest Tools Website
- Hacking Tools Online
- Hack Tools For Windows
- Hack Tools For Windows
- Hacking Tools Windows 10
- How To Make Hacking Tools
- Pentest Tools Free
- Nsa Hacker Tools
- Hacker Search Tools
- Termux Hacking Tools 2019
- Pentest Tools For Ubuntu
- Hacker Tools List
- Pentest Tools Website Vulnerability
- Hacker Search Tools
- Hacking Tools Name
- Hacking Tools Github
- Pentest Tools For Mac
- Hacking Tools For Kali Linux
- Hacking Tools And Software
- Hack Tools 2019
- Game Hacking
- Hacker Tools Mac
- Hack Tools For Pc
- Pentest Recon Tools
- Best Hacking Tools 2020
- Hacker Tools Apk
- Hacker Tools Apk Download
- Hacking Tools Github
- Hackers Toolbox
- New Hacker Tools
- Hack And Tools
- Hacking Tools For Mac
- Hacking Tools Free Download
- Hack Tools Mac
- Pentest Tools Linux
- Pentest Tools Website Vulnerability
- Install Pentest Tools Ubuntu
- Termux Hacking Tools 2019
- Hack Rom Tools
- How To Install Pentest Tools In Ubuntu
- Pentest Tools Port Scanner
- Hackrf Tools
- Pentest Tools Download
- Hacking Tools Kit
- Hacking Tools For Windows Free Download
- Pentest Tools Find Subdomains
- Pentest Tools Windows
- Hacking Tools For Windows 7
- Free Pentest Tools For Windows
- Physical Pentest Tools
- Pentest Tools Website Vulnerability
- Pentest Box Tools Download
- Hack Tool Apk
- What Is Hacking Tools
- Hacking Tools Github
- Best Hacking Tools 2019
- Hacker Tool Kit
- How To Make Hacking Tools
- What Is Hacking Tools
- Beginner Hacker Tools
- Hacking Tools Hardware
- Pentest Tools Subdomain
- Pentest Tools Nmap
- Wifi Hacker Tools For Windows
- Hack Tools For Pc
- Hack And Tools
- Hacker Tool Kit
- Pentest Tools Online
- Underground Hacker Sites
0 Comments:
Publicar un comentario
<< Home