内核漏洞大多出没于 ring3 到 ring0 的交互中.从 ring3 进入 ring0 的通道,以及操作系统提供的 API 都有可能存在漏洞.例如:驱动程序中 IoControl 的处理函数,SSDT 和 Shadow SSDT 中的系统服务函数(无论是否被 hook 都有可能存在漏洞),系统回调函数,内核钩子程序等.从漏洞数量来看,驱动程序中 IoControl 的处理函数中的漏洞最为多见,尤其是第三方的驱动程序. 本节对几种典型的内核漏洞,用几个真实的内核漏洞案例来详细分析. 远程拒绝服…