-
公开(公告)号:CN114661344A
公开(公告)日:2022-06-24
申请号:CN202210151101.3
申请日:2022-02-14
Applicant: 中国科学院信息工程研究所
IPC: G06F8/74
Abstract: 一种二进制文件的指令恢复方法、系统、电子设备和存储介质,所述方法通过二进制文件的数据空间获取疑似函数入口的地址;按照程序控制流路径遍历程序路径,对于程序中未遍历的部分,选择控制流转移指令的紧邻的下一个地址继续遍历,并结合预定策略分析出第一指令;将控制流转移指令的紧邻的下一个地址和第一指令的地址之间的范围作为函数间隙,将落入函数间隙的疑似函数入口的地址确定为合法起始地址;自合法起始地址处开始反汇编,将恢复出的指令地址和函数间隙范围能够对齐的指令,作为恢复出的第二指令。保证识别的指令语义的正确性,也可以提高处理二进制文件的效率并保证对二进制文件全路径覆盖。
-
公开(公告)号:CN109409086B
公开(公告)日:2021-04-13
申请号:CN201811109582.1
申请日:2018-09-21
Applicant: 中国科学院信息工程研究所
IPC: G06F21/54 , G06F16/901
Abstract: 本发明实施例提供一种基于新增指令的检测堆栈中返回地址被篡改的装置,本发明将返回地址和哈希值都通过一个链式结构来存储并验证,本发明实施例具有安全性高、性能损耗小、设计复杂度低等有益效果。
-
公开(公告)号:CN109409083B
公开(公告)日:2021-04-13
申请号:CN201811108316.7
申请日:2018-09-21
Applicant: 中国科学院信息工程研究所
IPC: G06F21/54 , G06F16/901
Abstract: 本发明实施例提供一种检测堆栈中返回地址被篡改的装置,本发明将返回地址和哈希值都通过一个链式结构来存储并验证,本发明实施例具有安全性高、性能损耗小、设计复杂度低等有益效果。
-
公开(公告)号:CN110363006B
公开(公告)日:2020-12-18
申请号:CN201910559217.9
申请日:2019-06-26
Applicant: 中国科学院信息工程研究所
Abstract: 本发明实施例提供一种多链哈希栈结构及检测函数返回地址被篡改的方法,所述多链哈希栈结构包括:N条链式结构,每条链式结构对应一个用于存储哈希值的top寄存器,多链哈希栈结构的任一帧中存储了当前帧所对应的函数体的返回地址和当前帧所在链式结构所对应的top寄存器中的哈希值;其中,当前帧所在的链式结构是根据当前帧所对应的函数体在多链哈希栈结构中的深度来确定的;当前帧所在链式结构所对应的top寄存器存储的是所述当前帧所在链式结构上的最新的哈希值;N为大于1的自然数。本发明实施例有效地缓解了由于相近的哈希运算的冲突造成的流水线停顿,减少了链式哈希栈的性能损耗。
-
公开(公告)号:CN111898119A
公开(公告)日:2020-11-06
申请号:CN202010599864.5
申请日:2020-06-28
Applicant: 中国科学院信息工程研究所
IPC: G06F21/52
Abstract: 本发明实施例提供一种控制流完整性保护方法、装置、设备及存储介质,所述方法包括:将待保护程序的控制流中的当前间接分支指令的所有合法目标地址的预设位更改至相同;将当前间接分支指令的当前目标地址的预设位改写为与合法目标地址的预设位相同,以使待保护程序在当前目标地址被篡改时终止执行。本发明实施例通过将当前间接分支指令的所有合法目标地址的预设位更改至相同;并将当前目标地址的预设位改写为与合法目标地址的预设位一致,用预设位覆盖操作替代传统的标签比对,减小性能开销,提高攻击防御效率;使程序被篡改时由于目标指令的错误而触发异常终止执行,实现了细粒度控制流完整性保护,提高了控制流完整性保护的安全性与可靠性。
-
公开(公告)号:CN111680289A
公开(公告)日:2020-09-18
申请号:CN202010357761.8
申请日:2020-04-29
Applicant: 中国科学院信息工程研究所
Abstract: 本发明实施例提供一种链式哈希栈运算方法及装置,该方法包括在函数调用时,将处理器保留栈中目标数据项返回地址保存到栈中,并用新的返回地址覆盖处理器保留栈中目标数据项返回地址;将目标数据项指向下一项,得到新的目标数据项,直至处理器保留栈存满新的返回地址;若依然存在函数调用,则将处理器保留栈中保存的所有返回地址进行批量哈希运算,得到当前哈希值信息。在函数返回时没有进入过栈中的处理器保留栈的返回地址直接用于函数返回,并用栈中取出的返回地址覆盖它。直到取出栈中的返回地址覆盖了处理器保留栈的初始数据项时,对处理器保留栈中的多个返回地址进行一次哈希校验。这种方式有效降低了处理器的功耗和性能损耗。
-
公开(公告)号:CN110348250A
公开(公告)日:2019-10-18
申请号:CN201910559199.4
申请日:2019-06-26
Applicant: 中国科学院信息工程研究所
IPC: G06F21/72
Abstract: 本发明实施例提供一种多链式哈希栈的硬件开销优化方法及系统,该方法包括:在硬件上添加发射队列;其中,发射队列包括顺序排列的多个项目,每一个项目代表一条链式哈希栈,每一条链式哈希栈用于存储一次哈希运算的输入及输出;当哈希运算的输入送入发射队列中对应的项目时,将该项目置为排队计算状态;当哈希模块结束计算状态后,查询发射队列中是否还存在处于排队计算状态的项目;若存在,则哈希模块根据排队顺序计算下一个项目中的哈希运算。本发明实施例相比于现有技术中使用N倍哈希模块的技术方案减少了硬件开销,起到了多链和影子缓存的加速效果。
-
-
公开(公告)号:CN117992334A
公开(公告)日:2024-05-07
申请号:CN202311824642.9
申请日:2023-12-27
Applicant: 中国科学院信息工程研究所
Abstract: 本发明提供一种面向硬件模糊测试的种子变异方法及装置,涉及硬件模糊测试技术领域,所述方法包括:从种子池中选取待变异种子;根据待变异种子的历史变异信息,确定待变异种子的来源方式;在确定待变异种子的来源方式为确定性变异的情况下,增加待变异种子的非确定性变异次数和减小待变异种子的确定性变异次数。本发明使在相同时间内产生更多的有效种子,从而提高状态空间的探索效率,减少无效测试用例的生成,降低了时间成本,进而提高硬件模糊测试的质量和效率。
-
-
-
-
-
-
-
-
-