https://github.com/xaff-xaff/shellcodev
Shellcodev is a tool designed to help and automate the process of shellcode creation.
https://github.com/xaff-xaff/shellcodev
assembly-x64 assembly-x86 shellcode shellcode-assembler shellcode-development shellcode-injector windows x64 x86
Last synced: 3 months ago
JSON representation
Shellcodev is a tool designed to help and automate the process of shellcode creation.
- Host: GitHub
- URL: https://github.com/xaff-xaff/shellcodev
- Owner: XaFF-XaFF
- License: mit
- Created: 2021-10-14T10:43:02.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-10-11T20:29:14.000Z (over 1 year ago)
- Last Synced: 2025-02-27T12:16:08.701Z (3 months ago)
- Topics: assembly-x64, assembly-x86, shellcode, shellcode-assembler, shellcode-development, shellcode-injector, windows, x64, x86
- Language: C++
- Homepage:
- Size: 3.84 MB
- Stars: 106
- Watchers: 7
- Forks: 30
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: license
Awesome Lists containing this project
README
# Shellcodev
Shellcodev is a tool designed to help and automate the process of shellcode creation.[]() []() [](https://github.com/XaFF-XaFF/Shellcodev/releases/tag/v2.2.1)

## Attribution
This project is based on [WinREPL](https://github.com/XaFF-XaFF/WinREPL) by zerosum0x0### Commands
```
.help Show this help screen.
.registers Show more detailed register info.
.list Show list of previously executed assembly instructions.
.edit line Edit specified line in list.
.del line Delete specified line from list.
.xor e/d/status Enable, disable or show status of nullbyte xoring.
.read addr size Read from a memory address.
.write addr hexdata Write to a memory address.
.toshell format Convert list to selected shellcode format. Available formats: c, cs, raw
.inject pid Test shellcode by injecting it into the process. Works currently only on x86!
.allocate size Allocate a memory buffer.
.loadlibrary path Load a DLL into the process.
.kernel32 func Get address of a kernel32 export.
.shellcode hexdata Execute raw shellcode.
.peb Loads PEB into accumulator.
.reset Start a new environment.
.quit Exit the program.
```### Added features
All the instructions provided by user are now stored. User is now able to list, edit and delete instructions which makes
shellcodes much easier to modify. Everything is in real-time, so any changes made in list also changes the register values.#### Listing
#### String snippets
#### Nullbyte handling
### Goal features
- **Done:** ~~String converter: String provided by user will be automatically converted to hex and encoded with little endian. In case of nullbytes, they
will be removed by encrypting data with xor.~~
- **Done:** ~~Shellcode runner: User will be able to test shellcode by injecting it into the process.~~
- **Done:** ~~More formats~~.
- **Done:** ~~Make nullbyte obfuscation optional~~
- Loop support### References
Libraries used to assemble instructions:
- [AsmJit](https://github.com/asmjit/asmjit)
- [AsmTK](https://github.com/asmjit/asmtk)