I am creating a sandboxing program and trying to hook every single system call a process makes. So far in my program I am using inline hooking & win32 functions and the scope of my hooks is win32 c++ functions and c# functions (such as CreateFileA, socket.send, etc). However I am trying to increase the scope of my project by intercepting every system call a process makes.
When I first started researching it I encountered the KiFastSystemCall function in ntdll.dll for example this article explaining how to hook it. But as you might have noticed written in the article -
KiFastSystemCall hooking only works on x86 systems and doesn’t work on Windows 8 or above
So if anyone is aware of a new method of hooking every system call a process makes, I'll appreciate it a lot.