Skip to the content.

Remote Code Oxidation (RCO)

RCO for Linux targets RCO for Windows targets language license

Remote Code Oxidation is a collection of offensive security tools written in Rust. My main goal for the project is to enable offensive security professionals and practitioners to prepare the tools needed for an engagement with as little overhead as possible.

RCO tools can be compiled on either Linux or Windows systems to provide its users flexibility in their attack infrastructure. Similarly the tools work against either Linux or Windows targets to suit the needs of the task at hand.

Tools list

Process hollowing version unavailable

Process migration version unavailable

TCP reverse shell version unavailable

Helper tools

  1. hash_params

  2. xor_params

Building the executables

Clone the repo

git clone https://github.com/kmanc/remote_code_oxidation.git

From Linux


For Linux

Install Rust

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Add dependencies for compiling

sudo apt install build-essential

Build!

cargo build [-p package_name] [--features [antisand][,][antistring][,][xor]] [--release]
For Windows

Install Rust

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Add dependencies for cross-compiling (1)

rustup target add x86_64-pc-windows-gnu

Add dependencies for cross-compiling (2)

sudo apt install mingw-w64

Build!

cargo build --target x86_64-pc-windows-gnu [-p package_name] [--features [antisand][,][antistring][,][xor]] [--release]

From Mac


For Linux

Install Rust

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Add dependencies for cross-compiling (1)

rustup target add x86_64-unknown-linux-musl

Add dependencies for cross-compiling (2)

brew install filosottile/musl-cross/musl-cross

Configure linker for cross-compiling

Create a file in your home directory's .cargo directory called config.toml with the following contents
[target.x86_64-unknown-linux-musl]
linker = "x86_64-linux-musl-gcc"

Build!

cargo build --target x86_64-unknown-linux-musl [-p package_name] [--features [antisand][,][antistring][,][xor]] [--release]
For Windows

Install Rust

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Add dependencies for cross-compiling (1)

rustup target add x86_64-pc-windows-gnu

Add dependencies for cross-compiling (2)

brew install mingw-w64

Build!

cargo build --target x86_64-pc-windows-gnu [-p package_name] [--features [antisand][,][antistring][,][xor]] [--release]

From Windows


For Linux

Install Rust

Download and run the installer from the Rust website

Add dependencies for cross-compiling

rustup target add x86_64-pc-windows-gnu

Configure linker for cross-compiling

Create a file in your home directory's .cargo directory called config.toml with the following contents
[target.x86_64-unknown-linux-musl]
linker = "rust-lld"

Build!

cargo build --target x86_64-unknown-linux-musl [-p package_name] [--features [antisand][,][antistring][,][xor]] [--release]
For Windows

Install Rust

Download and run the installer from the Rust website

Build!

cargo build [-p package_name] [--features [antisand][,][antistring][,][xor]] [--release]