DTRACE- SYSCALL HOOKS- whats the fuzz about? Some people tell me they get confused when they read my ramblings about dtrace. That is understandable - I will try to explain so its understandable for more people:
-
Show this thread
-
The security model of your computer is at its core seperated by ring 0 and usermode. At ring 0 is the kernel and your drivers. They run unconstrained- they can ask the hardware to do X and Y.
1 reply 1 retweet 7 likesShow this thread -
Everything else runs in usermode- and they need to ask ring0 to do stuff on their behalf. One mechanism for that is syscalls- a predefined list of operations that causes control flow to switch into ring0 - kernel validates the arguments and execute the matching operation.
1 reply 0 retweets 7 likesShow this thread -
You can see a list of syscalls at https://j00ru.vexillium.org/syscalls/nt/32/ As syscalls are a pathway for less privileged code to influence code executing at the highest privilege it is interesting for security researchers.
1 reply 0 retweets 12 likesShow this thread -
The same factors also make it interesting for rootkits(term describing malware executing in ring 0).
1 reply 0 retweets 7 likesShow this thread -
If you redirect the address where the system jumps to execute a given syscall you get perfect conditions to rewrite input/output then call oroginal address. That enables perfect hiding of code that execute on the system.
1 reply 0 retweets 6 likesShow this thread -
When you are in ring0 you can overwrite the address of the handler, this has been abused alot by malware.
1 reply 0 retweets 5 likesShow this thread -
So MS created patchguard, a system that periodically verifies the address have not been from their original content at boot. If tampering is detected- it will halt the system with a BSOD.
1 reply 0 retweets 5 likesShow this thread -
When doing security research being able to see syscalls with arguments is a great help and can speed up reverse engineering process alot. One thing I would like to see is IOCTRL codes- used for many file operations and in general communicating with devices.
1 reply 1 retweet 8 likesShow this thread -
That is possible with dtrace- its special because it enables you to make syscall hooks. The alternative is to write and test sign a driver, and that means any tiny error gives you BSOD. That is why I decided to make it work with dtrace- whatever it takes.
1 reply 0 retweets 11 likesShow this thread
Here we see explorer use a undocumented functionality- revealed with syscall hookspic.twitter.com/yu3j9m4JTa
-
-
This Tweet is unavailable.
-
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.