我正在编写一个程序来终止任何给定的进程。 链接到我的代码:Link
我希望它能绕过任何钩子来终止任何进程。 但安全软件仍然可以阻止终止(到目前为止我已经使用sandboxie和processguard进行了测试)?
我无法理解他们如何做到这一点。我的程序重写了函数,我希望以这种方式删除钩子。
如何绕过挂钩?我在这段代码中错过了什么?
P.S:该程序在第三次ZwTerminateProcess调用中崩溃。有人可以帮忙吗?
提前致谢。
答案 0 :(得分:0)
有时,AV和沙盒软件最终会修改内核中的函数指针表。如果没有编写驱动程序,就没有简单的方法可以解决这个问题,因为可以在系统范围内(AV做什么)或特定应用程序(沙箱会做什么)禁用该功能。
如果您实际上能够打开流程的句柄,您仍然可以做很多事情。也许你可以尝试间接杀死它。我会尝试直接写入进程的内存并用垃圾覆盖它(或调用ExitProcess)。