APC

​ 我们直接从ReactOS中了解其中的具体实现,比如NtQueueApcThreadEx,其中主要使用了一个KAPC对象。
正如我上一篇所说,每个线程都有自己的 APC 队列。如果线程进入警报状态,它将开始以先进先出 (FIFO) 的形式执行 APC 作业。
在平常的渗透测试中,其中主要一项就是对抗杀软检测,需要对shellcode 免杀,而免杀中使用最多的就是APC 注入方式,第一次接触的时候感觉很NB,国内的杀软都能过(即使现在),我就在思考为什么杀软不能检测和拦截到此如此常见的方式,于是就有了此文对APC内部机制的探索。