Thoxy67 / rspe

Simple Native Rust Reflective PE loader library
MIT License
33 stars 4 forks source link

QUESTION: How I could do injecting it to REMOTE process? #1

Open gurubyte opened 2 months ago

gurubyte commented 2 months ago

Hello,

I git cloned your project and tried changing code where I wanted to change that program is doing remote process injection, instead of injecting it in current process.

How that would look like? I tried various approaches but I'm struggling for few days right now and I cant make program work.

landaire commented 1 month ago

You can try doing something similar to what I've done here: https://github.com/exploits-forsale/solstice

This leverages https://github.com/b1nhack/rust-shellcode for creating a shellcode program. It's no_std and manually resolves win32 APIs instead of linking against them. You'd probably be most interested in stage2: https://github.com/exploits-forsale/solstice/blob/main/shellcode_stage2/src/main.rs. It reads the PE file into memory and use a forked version of rspe which accepts function pointers for all of the functions it depends on.

You can combine this approach with OpenProcess()/WriteProcessMemory()/CreateRemoteThread() to write your own shellcode and execute it.