【注意!】
此漏洞不具有直接危害性,仅供个人学习研究调试,大牛飘过~~

【背景(可以略过)】
去年的这个时候我只会点C,汇编就知道mov,后来花了两个月时间,按网上大牛们的文章自己敲代码做了个ARK,算是入了点门。在做ARK时,知道CSRSS里面有CsrRootProcess这条链表,可以用来查进程,调试的时候在WinDBG中手动对一个进程脱链,发现用户注销后,这个进程没被自动终结,当时也没在意。7月份分析MS10-059时,意识到了LPC/ALPC的存在。9月份看到MS10-011时,觉得可以深入了解下CsrRootProcess和LPC,于是拿WinDBG调、拿IDA看汇编。看到存在有两处and     byte ptr [eax+39h], 0DFh指令时,觉得MS10-011是可以绕过的。从开始接触到MS10-011到写出绕过补丁的代码,花了4天的时间。当从admin登入后,在任务管理器里面看到普通用户下的进程依然存在时,激动了很久,咱也要受微软“公开致谢”了。。。这是我第一次发现漏洞,对我来说意义很大。虽然这个漏洞不具有直接危害,但用来练习下WinDBG调试和汇编倒是不错的。

【鸣谢】
感谢j00ru!

【参考资料】
LPC:
1.对于LPC通信机制,可以访问j00ru的博客:http://j00ru.vexillium.org/,里面讲得很详细;2.Undocumented Windows NT.chm;
3.WRK
CsrRootProcess:http://forum.sysinternals.com/forum_posts.asp?TID=15457&PID=74845

上传的附件 CVE-2011-0030(MS11-010).rar