BlobRunner is a simple tool to quickly debug shellcode extracted during malware analysis.
BlobRunner allocates memory for the target file and jumps to the base (or offset) of the allocated memory. This allows an analyst to quickly debug into extracted artifacts with minimal overhead and effort.
Building the executable is straight forward and relatively painless.
cl blobrunner.c
Building the x64 version is virtually the same as above, but simply uses the x64 tooling.
cl /Feblobrunner64.exe /Foblobrunner64.out blobrunner.c
Also ReadBFuzz – Fuzzing Chrome & Firefox Browsers
To debug:
BlobRunner.exe shellcode.bin
Debug into file at a specific offset.
BlobRunner.exe shellcode.bin --offset 0x0100
Debug into file and don’t pause before the jump.
Warning: Ensure you have a breakpoint set before the jump.
BlobRunner.exe shellcode.bin --nopause
Inline assembly isn’t supported by the x64 compiler, so to support debugging into x64 shellcode the loader creates a suspended thread which allows you to place a breakpoint at the thread entry, before the thread is resumed.
The process is virtually identical to debugging shellcode locally – with the exception that the you need to copy the shellcode file to the remote system. If the file is copied to the same path you are running win32_remote.exe from, you just need to use the file name for the parameter. Otherwise, you will need to specify the path to the shellcode file on the remote system.
You can quickly generate shellcode samples using the Metasploit tool msfvenom.
Generating a simple Windows exec payload.
msfvenom -a x86 --platform windows -p windows/exec cmd=calc.exe -o test2.bin
HikPwn: Comprehensive Guide to Scanning Hikvision Devices for Vulnerabilities If you’re searching for an efficient…
What Are Bash Comments? Comments in Bash scripts, are notes in your code that the…
When you write a Bash script in Linux, you want it to run correctly every…
Introduction If you’re new to Bash scripting, one of the first skills you’ll need is…
What is Bash Scripting? Bash scripting allows you to save multiple Linux commands in a file and…
When it comes to automating tasks on Linux, Bash scripting is an essential skill for both beginners…