[发明专利]使用内核模式重定向来改变代码执行路径无效
申请号: | 200680024258.9 | 申请日: | 2006-07-10 |
公开(公告)号: | CN101535969A | 公开(公告)日: | 2009-09-16 |
发明(设计)人: | N·本-茨维 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F13/24 | 分类号: | G06F13/24;G06F13/32 |
代理公司: | 上海专利商标事务所有限公司 | 代理人: | 陈 斌 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 使用 内核 模式 向来 改变 代码 执行 路径 | ||
1.一种用于重定向正在运行的进程中的代码执行路径的方法,包括:
将指令注入所述代码执行路径内;
将控制传递给内核句柄;
执行由所述内核句柄调用的替换函数;以及
返回至所述代码执行路径。
2.如权利要求1所述的方法,其特征在于,所述指令为中断。
3.如权利要求2所述的方法,其特征在于,所述中断为INT 3中断指令,且所述中断指令长为1字节。
4.如权利要求2所述的方法,其特征在于,所述内核句柄包括使得自所述中断指令的返回继续进入所述替换函数的机制。
5.如权利要求1所述的方法,其特征在于,还包括插入所述指令,使得仅重写所述代码路径中的所述原始代码的一个字节。
6.如权利要求1所述的方法,其特征在于,还包括将所述替换函数加载到可由所述内核函数访问的存储器空间内。
7.如权利要求1所述的方法,其特征在于,还包括在无需重新引导其上所述正运行的进程正在执行的计算设备的情况下执行所述方法。
8.一种通过使用中断来替换现有函数而改变代码执行路径的方法,包括:
将所述中断注入到所述现有函数内;
将控制传递给内核句柄;
执行由所述内核句柄调用的替换函数;以及
返回至所述代码执行路径。
9.如权利要求8所述的方法,其特征在于,所述中断为INT3中断指令,而所述中断指令长为1字节。
10.如权利要求9所述的方法,其特征在于,所述内核句柄包括使得自所述中断指令的返回继续进入所述替换函数的机制。
11.如权利要求8所述的方法,其特征在于,还包括插入所述中断使得仅重写所述代码路径的所述原始代码中的一个字节。
12.如权利要求8所述的方法,其特征在于,还包括将所述替换函数加载到可由所述内核函数访问的存储器空间内。
13.如权利要求8所述的方法,其特征在于,还包括在无需重新引导其上正执行所述现有函数的进程正运行的计算设备的情况下执行所述方法。
14.一种其上含有用于重新引导正运行的进程中的代码执行路径的计算机可执行指令的计算机可读介质,所述计算机可执行指令执行一种方法,包括:
将指令插入所述代码执行路径;
将控制传递给内核句柄;
执行由所述内核句柄调用的替换函数;以及
返回至所述代码路径。
15.如权利要求14所述的计算机可读介质,其特征在于,所述指令为中断。
16.如权利要求15所述的计算机可读介质,其特征在于,所述中断为INT3中断指令,且所述中断指令长为1字节。
17.如权利要求15所述的计算机可读介质,其特征在于,所述内核句柄包括使得自所述中断指令的返回继续进入所述替换函数的机制。
18.如权利要求14所述的计算机可读介质,其特征在于,还包括用于插入所述指令使得仅重写所述代码路径中的所述原始代码的一个字节的指令。
19.如权利要求14所述的计算机可读介质,其特征在于,还包括用于将所述替换函数加载到可由所述内核函数访问的存储器空间内的指令。
20.如权利要求14所述的计算机可读介质,其特征在于,还包括用于在无需重新引导其上所述正运行的进程正在执行的计算设备的情况下执行所述方法的指令。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680024258.9/1.html,转载请声明来源钻瓜专利网。