From dc153774e5fcdc8a1e298ed95b1ccd75ae300585 Mon Sep 17 00:00:00 2001 From: Michael Mikovsky <77305074+Astatin3@users.noreply.github.com> Date: Mon, 24 Nov 2025 13:38:00 -0700 Subject: [PATCH] Add descriptions to projects, remove testproj --- TODO.md | 12 ++++++++++++ testproj/Cargo.lock | 7 ------- testproj/Cargo.toml | 22 ---------------------- testproj/src/lib.rs | 30 ------------------------------ unshell-breakout-module/README.md | 2 ++ unshell-cli/README.md | 2 ++ unshell-config/README.md | 0 unshell-crypt/README.md | 5 +++++ unshell-lib/README.md | 2 ++ unshell-obfuscate/README.md | 3 +++ unshell-payload/README.md | 2 ++ 11 files changed, 28 insertions(+), 59 deletions(-) create mode 100644 TODO.md delete mode 100644 testproj/Cargo.lock delete mode 100644 testproj/Cargo.toml delete mode 100644 testproj/src/lib.rs create mode 100644 unshell-breakout-module/README.md create mode 100644 unshell-cli/README.md create mode 100644 unshell-config/README.md create mode 100644 unshell-crypt/README.md create mode 100644 unshell-lib/README.md create mode 100644 unshell-obfuscate/README.md create mode 100644 unshell-payload/README.md diff --git a/TODO.md b/TODO.md new file mode 100644 index 0000000..55d4c2a --- /dev/null +++ b/TODO.md @@ -0,0 +1,12 @@ +### Functionality +- Add 'signals' interface between modules +- Write compilation helper CLI for building payload and breakout module +- Make CLI +- Make GUI + +### Topology +- Move server and client components into their own cargo projects + +### Obfuscation +- Implement custom ELF loading possibly using 'https://github.com/weizhiao/rust-dlopen' +- Macro-based automatic control flow obfuscation diff --git a/testproj/Cargo.lock b/testproj/Cargo.lock deleted file mode 100644 index 8362f7b..0000000 --- a/testproj/Cargo.lock +++ /dev/null @@ -1,7 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 4 - -[[package]] -name = "testproj" -version = "0.1.0" diff --git a/testproj/Cargo.toml b/testproj/Cargo.toml deleted file mode 100644 index 7173ae5..0000000 --- a/testproj/Cargo.toml +++ /dev/null @@ -1,22 +0,0 @@ -cargo-features = ["trim-paths"] - -[package] -name = "testproj" -version = "0.1.0" -edition = "2024" - - -[lib] -crate-type = ["cdylib"] - -[dependencies] - - -[profile.release] -strip = true # Strip symbols from the binary -opt-level = "z" # Optimize for size -lto = true # Link tree optimization -codegen-units = 1 -panic = "abort" -debug = false # Remove debug -trim-paths="all" diff --git a/testproj/src/lib.rs b/testproj/src/lib.rs deleted file mode 100644 index d60ebb1..0000000 --- a/testproj/src/lib.rs +++ /dev/null @@ -1,30 +0,0 @@ -#![no_std] -#![crate_type = "cdylib"] - -use core::panic::PanicInfo; - -#[panic_handler] -fn panic(_info: &PanicInfo) -> ! { - loop {} -} - -#[unsafe(no_mangle)] -fn a() -> i32 { - 1 -} - -#[repr(C)] -pub struct S { - a: u64, - b: u32, - c: u16, - d: u8, -} - -#[unsafe(no_mangle)] -pub extern "C" fn test_identity_struct(x: S) -> S { - x -} - -#[unsafe(no_mangle)] -pub static HELLO: &str = "Hello!"; diff --git a/unshell-breakout-module/README.md b/unshell-breakout-module/README.md new file mode 100644 index 0000000..8eec413 --- /dev/null +++ b/unshell-breakout-module/README.md @@ -0,0 +1,2 @@ +# unshell-breakout-module +Project that contains the code to construct a module diff --git a/unshell-cli/README.md b/unshell-cli/README.md new file mode 100644 index 0000000..ea5a425 --- /dev/null +++ b/unshell-cli/README.md @@ -0,0 +1,2 @@ +# unshell-cli +Command-line interface for unshell diff --git a/unshell-config/README.md b/unshell-config/README.md new file mode 100644 index 0000000..e69de29 diff --git a/unshell-crypt/README.md b/unshell-crypt/README.md new file mode 100644 index 0000000..e83ac68 --- /dev/null +++ b/unshell-crypt/README.md @@ -0,0 +1,5 @@ +# unshell-crypt + +Code for encryption and obfuscation + +This must be in a seperate project because unshell-obfuscate and unshell-lib depend on this. If it were to be included in unshell-lib, there would be a circular dependency. diff --git a/unshell-lib/README.md b/unshell-lib/README.md new file mode 100644 index 0000000..06af74f --- /dev/null +++ b/unshell-lib/README.md @@ -0,0 +1,2 @@ +## unshell-lib +Code shared across all modules diff --git a/unshell-obfuscate/README.md b/unshell-obfuscate/README.md new file mode 100644 index 0000000..52b36e3 --- /dev/null +++ b/unshell-obfuscate/README.md @@ -0,0 +1,3 @@ +# unshell-obfuscate + +proc_macros that automatically obfuscate code in other projects diff --git a/unshell-payload/README.md b/unshell-payload/README.md new file mode 100644 index 0000000..fe0ee10 --- /dev/null +++ b/unshell-payload/README.md @@ -0,0 +1,2 @@ +## unshell-payload +Project that contains the code to construct a binary