- Notifications
You must be signed in to change notification settings - Fork0
Print3M/shellcoder
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Write your shellcode in Assembly (NASM) and compile it on Windows x64 with one command!
This script helps automate the shellcode development and testing process. It takes your Assembly file with the payload (shellcode.asm
) and generates a bunch of useful executable files (read below).
You don't have to repeat all these tedious activities anymore to make your shellcode executable! Keep your focus on shellcoding 🔥🐚🔥
The following software must be installed on your system:
No Python dependencies are necessary! You are ready to go.
- Write your shellcode in
shellcode.asm
- Run
python shellcoder.py
- Execute
out/malware.exe
file!
The output files of this script are stored inout/
directory:
malware.c
- loader code with the injected payload as C string.malware.exe
- compiled loader with the injected payload.shellcode.exe
- executable file with the payload only. Great for debugging!shellcode.bin
- raw machine code of the assembly payload.
- Indicate that you are using 64-bit mode at the beginning of the assembly file. Add
[bits 64]
to theshellcode.asm
. - Define entry point in assembly file (required for debugging):
[bits 64]section .text:global_start_start:[...YOUR CODE HERE...]
- You cannot use sections other than
.text
. It's a shellcode! - Remember aboutMicrosoft x64 Calling Convention (stack alignment + shadow space!)
The best way to debug your assembly code is to takeout/shellcode.exe
file and load it into your favorite debugger.
Finally you should runout/malware.exe
to be sure that your payload works as intended after memory injection.
About
Shellcoder.py - simple script to automate shellcoding process and shellcode testing.
Topics
Resources
Uh oh!
There was an error while loading.Please reload this page.