Хукать NtQuerySystemInformation и отбирать вызовы с классом SystemProcessInformation, затем, ломать двусвязный список процессов. Также, можно отбирать вызовы с классом SystemHandleInformation. Загвоздка в том, что такие хуки можно спокойно ловить. Если ты не ограничен юзермодом и имеешь доступ в кернел - лучше поломать EPROCESS там