Clean up some of the root files.

This commit is contained in:
Michael Mikovsky
2026-04-25 10:55:49 -06:00
parent 5192b83c53
commit a7fdd63790
6 changed files with 1 additions and 121 deletions
+1
View File
@@ -29,6 +29,7 @@ Key routing rules:
- Commit at every real milestone. Create a local git commit each time a meaningful milestone is reached. Commit messages must be accurate, specific, and reflect the actual change.
- Explain unintuitive choices. Whenever an implementation, algorithm, or control flow could appear backwards, surprising, or overly indirect, add a short rationale comment or documentation note explaining why it is correct.
- Track work with TODOs. Use a task list throughout the work so progress, remaining steps, and milestone boundaries stay explicit.
- ALL Sub-agents must be told to read this file before continuing.
## Plan mode rules
-2
View File
@@ -1,2 +0,0 @@
# unshell
The unified shell and exploitation framework
-42
View File
@@ -1,42 +0,0 @@
### Binary
- Obfustcation
- Randomly generated packed binaries
- Rust is already hard to decompile?
- Persistance
- Probably out of scope
- Build targets
- To achieve a minimal size, there should probably be a way to pack diffrent features with the actual result binary.
- There should also be a way to update one of the hosts with the new functionality.
### Network
- Diffrent traffic obfuscators:
- ICMP
- HTTPS (Using actual webpages)
- OpenVPN (Hard to replicate in rust)
- "Hole Widening"
- Initial reverse shell is the final one
- Minimal presence on remote machine
- Instead of downloading binaries and then executing them, use the shell connection as a kind of remote storage server.
- Pivoting
- UI for sub-connections.
- A protocol that acts similar to routers and DHCP, registering known devices with the C2 server. Sub-devices will relay packets
- Packets must be encrypted, so that only the destination can decrypt.
- How?
- ### Encryption
- Diffrent "encryptors" such as PGP
- Everything must be self-implemented because of traffic monitors such as mitmproxy
- HTTPS could transmit over the actual TLS implemented by the system, and transfer data through things such as base64 images on webpages, which would itself be encrypted
### UI
- Egui??
- Usable both on web and on-device
- Network diagram creation tool
### Tools
- These are the diffrent tools that can be transmitted, and then run on a machine
- Host discovery && port scanning
- File upload and download
- Screenshare
- Virtual browser and desktop
- meterpreter functionality?
- Scripting?
-13
View File
@@ -1,13 +0,0 @@
### 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
- Write wire protocol spec: `PROTOCOL.md` or doc comment in the protocol module. Spec the two-part frame format `[u32 header_len][rkyv PacketHeader][u32 payload_len][rkyv payload]` with `PacketHeader { dst_path, src_path, packet_type }`. Required before router and payload implementations can be written independently without diverging. See design doc: ~/.gstack/projects/astatin3-unshell/astatin3-main-design-20260420-223152.md
### Obfuscation
- Implement custom ELF loading possibly using 'https://github.com/weizhiao/rust-dlopen'
- Macro-based automatic control flow obfuscation
-27
View File
@@ -20,33 +20,6 @@ declare -a headers=(
".eh_frame" ".eh_frame_hdr" # Exception handling info (can break C++ exceptions if removed)
#".gnu.version" ".gnu.version_r" # Symbol versioning (may be needed for some shared libraries)
".gnu.hash" # Hash table for symbol lookup optimization
# .shstrtab
# .interp
# .note.ABI-tag
# .dynsym
# .dynstr
# .rela.dyn
# .rodata
# .text
# .init
# .fini
# .tbss
# .fini_array
# .init_array
# .data.rel.ro
# .dynamic
# .got
# .got.plt
# .relro_padding
# .tm_clone_table
# .data
# .bss
)
# TODO: Implement FAKE section header comments and information
File diff suppressed because one or more lines are too long