Quick and dirty shellcode encryptor and obfuscator
Find a file
2025-12-24 13:09:56 +01:00
src chores: changed name + updated readme.md 2025-03-02 01:40:36 +01:00
.gitignore Initial commit 2025-02-27 20:54:19 +01:00
banner.webp chores: changed name + updated readme.md 2025-03-02 01:40:36 +01:00
Cargo.lock chores: changed name + updated readme.md 2025-03-02 01:40:36 +01:00
Cargo.toml chores: changed name + updated readme.md 2025-03-02 01:40:36 +01:00
README.md Update README.md 2025-12-24 13:09:56 +01:00

Description

Note

This project is inspired by NUL0x4C's HellShell

The goal of the project is to encrypt or obfuscate a payload, then generate a .rs file that contains the required functions to decrypt or deobfuscate the payload.

Deceiver takes padding into account, using pkcs#7 padding to adapt to every length of payload.

Deceiver will output the generated .rs file to a default output.rs.

Installation

First, you need to have git and rust installed.

Then simply clone the project and run it with cargo.

git clone https://github.com/Code-Barru/deceiver.git
cd deceiver
cargo run --release -- <options>

By using cargo the first run will compile the project and therefore take some time. Subsequent uses will be instant.

Usage

Usage: deceiver [OPTIONS] <SHELLCODE> [KEY]

Arguments:
  <SHELLCODE>  The shellcode to encrypt and obfuscate
  [KEY]        The key to encrypt the shellcode (path or 32 hexa char)

Options:
      --encryption <ENCRYPTION>    Encryption method [aes, rc6, xor]
      --obfuscation <OBFUSCATION>  Obfuscation method [ipv4, ipv6, uuid, mac_addr]
  -o, --output <OUTPUT>            The output file [default: output.rs]
  -h, --help                       Print help
  -V, --version                    Print version