-
公开(公告)号:CN111898120B
公开(公告)日:2023-10-10
申请号:CN202010611766.9
申请日:2020-06-29
Applicant: 中国科学院信息工程研究所
IPC: G06F21/52
Abstract: 本发明实施例提供一种控制流完整性保护方法及装置,该方法包括:获取待保护程序的控制流图,确定所有间接分支指令和对应的合法目标地址;在每个合法目标地址前插入带有标签信息的NOP指令,并将对应的间接分支指令的跳转目标地址,指向NOP指令所在地址,所述标签信息根据间接分支指令所在地址确定;其中,NOP指令用于间接分支指令执行时,通过验证NOP指令中的标签信息和间接分支指令的源地址一致后,执行跳转后的指令。由于每个合法目标地址前插入带有标签信息的NOP指令,可以对不同间接转移的合法目的地址进行区分,实现了细粒度的控制流完整性保护;通过NOP指令实现,硬件开销小,不影响性能,并且具有较好的兼容性。
-
公开(公告)号:CN111898120A
公开(公告)日:2020-11-06
申请号:CN202010611766.9
申请日:2020-06-29
Applicant: 中国科学院信息工程研究所
IPC: G06F21/52
Abstract: 本发明实施例提供一种控制流完整性保护方法及装置,该方法包括:获取待保护程序的控制流图,确定所有间接分支指令和对应的合法目标地址;在每个合法目标地址前插入带有标签信息的NOP指令,并将对应的间接分支指令的跳转目标地址,指向NOP指令所在地址,所述标签信息根据间接分支指令所在地址确定;其中,NOP指令用于间接分支指令执行时,通过验证NOP指令中的标签信息和间接分支指令的源地址一致后,执行跳转后的指令。由于每个合法目标地址前插入带有标签信息的NOP指令,可以对不同间接转移的合法目的地址进行区分,实现了细粒度的控制流完整性保护;通过NOP指令实现,硬件开销小,不影响性能,并且具有较好的兼容性。
-
公开(公告)号:CN111898119B
公开(公告)日:2024-08-09
申请号:CN202010599864.5
申请日:2020-06-28
Applicant: 中国科学院信息工程研究所
IPC: G06F21/52
Abstract: 本发明实施例提供一种控制流完整性保护方法、装置、设备及存储介质,所述方法包括:将待保护程序的控制流中的当前间接分支指令的所有合法目标地址的预设位更改至相同;将当前间接分支指令的当前目标地址的预设位改写为与合法目标地址的预设位相同,以使待保护程序在当前目标地址被篡改时终止执行。本发明实施例通过将当前间接分支指令的所有合法目标地址的预设位更改至相同;并将当前目标地址的预设位改写为与合法目标地址的预设位一致,用预设位覆盖操作替代传统的标签比对,减小性能开销,提高攻击防御效率;使程序被篡改时由于目标指令的错误而触发异常终止执行,实现了细粒度控制流完整性保护,提高了控制流完整性保护的安全性与可靠性。
-
公开(公告)号:CN111898119A
公开(公告)日:2020-11-06
申请号:CN202010599864.5
申请日:2020-06-28
Applicant: 中国科学院信息工程研究所
IPC: G06F21/52
Abstract: 本发明实施例提供一种控制流完整性保护方法、装置、设备及存储介质,所述方法包括:将待保护程序的控制流中的当前间接分支指令的所有合法目标地址的预设位更改至相同;将当前间接分支指令的当前目标地址的预设位改写为与合法目标地址的预设位相同,以使待保护程序在当前目标地址被篡改时终止执行。本发明实施例通过将当前间接分支指令的所有合法目标地址的预设位更改至相同;并将当前目标地址的预设位改写为与合法目标地址的预设位一致,用预设位覆盖操作替代传统的标签比对,减小性能开销,提高攻击防御效率;使程序被篡改时由于目标指令的错误而触发异常终止执行,实现了细粒度控制流完整性保护,提高了控制流完整性保护的安全性与可靠性。
-
-
-