发明名称 用于代码迷惑的方法及设备
摘要 通过利用具有至少一个参数的函数调用来替换(410)第一基本块(360;370)中的跳转指令,来迷惑包括以多个基本块(310-370)组织的计算机代码指令的编译的计算机代码(300),其中,该函数调用在执行时依赖于该参数来确定要执行的下一函数的地址;向编译的计算机代码(300)插入(440)向参数分配值的指令,所述值使得由该函数调用所确定的地址与被替换的跳转指令的地址对应。优选地使用来自控制流程图(CFG)的信息,将分配函数插入至与第一基本块(360;370)不同的第二基本块(320-350)中的计算机代码中。在不能够从迷惑的代码中生成CFG的同时,这可以确保在没有来自CFG的信息的情况下不能对迷惑后的代码进行反汇编。还提供了一种用于代码迷惑的设备。
申请公布号 CN102132289B 申请公布日期 2014.06.18
申请号 CN200980132311.0 申请日期 2009.08.17
申请人 汤姆森特许公司 发明人 安托万.蒙西夫罗特;费边.拉霍德雷
分类号 G06F21/14(2013.01)I 主分类号 G06F21/14(2013.01)I
代理机构 北京市柳沈律师事务所 11105 代理人 吕晓章
主权项 一种用于迷惑编译的计算机代码(300)的方法,所述编译的计算机代码(300)包括以多个基本块(310‑370)组织的计算机代码指令,该方法包括如下步骤:‑以具有至少一个参数的函数调用来替换(410)第一基本块(360;370)中的跳转指令,其中所述函数调用在执行时依赖于所述参数来确定要执行的下一函数的地址;‑向所述编译的计算机代码(300)插入(440)向所述参数分配值的指令,所述值使得由所述函数调用确定的地址与被替换的跳转指令的目的地地址对应;其特征在于,将分配指令插入至与所述第一基本块(360;370)不同的并意图要在第一基本块之前执行的第二基本块(320‑350)中的计算机代码。
地址 法国伊西莱穆利诺