Skip to content

[WIP] DO NOT MERGE: Update RDI to be compiled with Arkari#21

Draft
jbx81-1337 wants to merge 3 commits intorapid7:masterfrom
jbx81-1337:obfuscator
Draft

[WIP] DO NOT MERGE: Update RDI to be compiled with Arkari#21
jbx81-1337 wants to merge 3 commits intorapid7:masterfrom
jbx81-1337:obfuscator

Conversation

@jbx81-1337
Copy link

@jbx81-1337 jbx81-1337 commented Mar 16, 2026

This PR updates the ReflectiveDLLInjection:

  • Remove Optimizations (may be not necessary)
  • Add the NO_OBF definition for sensitive functions
  • Modify the DoSyscall and the SyscallStub to use a new format
  • Update SyscallStub function calls to use the new format
  • Updates the remaining Stubs TBD

Why

Current implementation of the direct syscall fails on the DoSyscall function, most likely due to compiler-specific assumptions for example like the previous stack frame location dll/src/GateTrampoline64.s:12.
This PR updates the way we trigger the syscall, going from a parameters passthrough function to an array-to-parameters type of function.

The DoSyscall now receive a ULONG_PTR ** array of args, used to store the parameters. Then the function is responsible to setup the stack arguments properly, and setup the remaining arguments to registers. and perform the call to the syscall instruction location after honoring the the syscall-number setup on eax and moving rcx to r10.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant