Rust library for finding Unreal Engine AES keys in process memory through DLL injection.
The project consists of three crates in a workspace:
- Type:
rlib(Rust library) - Purpose: Contains all AES key search logic
- Modules:
entropy- entropy calculation for key validationscanner- key search logic using ASM pattern matchingpatterns- machine code patterns and false positive filteringerror- error types
- Type:
cdylib(dynamic library) - Purpose: FFI interface for use from C/C++ and DLL injection
- Exported Functions:
scan_process_for_aes_keys- scan process for AES keysfree_scan_result- free scan result memoryaes_dumper_init- initialize DLLaes_dumper_cleanup- cleanup DLLstart_scan_in_thread- start scan in separate thread
- Type:
bin(executable) - Purpose: Standalone executable for scanning files
- Features:
- Scan
.exeand.dllfiles - Drag & drop support (Windows)
- Configurable entropy threshold
- Colored output based on entropy values
- Scan
cargo build --release --workspacecargo build --release -p aes-dumpercargo build --release -p aes-dumper-dllDLL will be located at target/release/aes_dumper_dll.dll
cargo build --release -p aes-dumper-cliExecutable will be located at target/release/aes-dumper.exe
aes-dumper.exe file1.exe file2.dll
aes-dumper.exe --min-entropy 3.5 file.exeDrag .exe or .dll file(s) onto aes-dumper.exe for automatic processing.
aes-dumper.exe --helpuse aes_dumper::{scan_data_for_keys, filter_keys_by_entropy};
let data = std::fs::read("file.exe")?;
let result = scan_data_for_keys(&data, 0, "file.exe");
let filtered = filter_keys_by_entropy(&result, 3.3);Use functions from aes-dumper-dll with FFI interface.
Re-implementation of AESDumpster algorithm:
- Search for machine code patterns (ASM signatures) in process memory
- Extract keys from found patterns by offsets
- Calculate entropy for each key using Shannon's formula
- Filter false positives
- Display keys with entropy >= 3.3 (configurable)
Original repository: AESDumpster by GHFear