- quarantine is boring
- reading a book "ARM 64-Bit Assembly Language" without practice is useless
Main magic happens in ntoskrnl_hack::find_lock_list function
As you can notice code not emulate every instruction. I just check if after pair ADRP/ADD target register holds some address in .data section. If we encounter call to (exported) KeAcquireSpinLockRaiseToDpc - we change state to 1 and assign value of x0 register to lock, and then next loaded from .data section address must be list
Комментариев нет:
Отправить комментарий