[发明专利]一种基于指针加密机制和RISC-V协处理器的内存溢出防御方法有效
| 申请号: | 202110907332.8 | 申请日: | 2021-08-09 |
| 公开(公告)号: | CN113673002B | 公开(公告)日: | 2023-05-16 |
| 发明(设计)人: | 张雨昕;芮志清;吴敬征;罗天悦;武延军 | 申请(专利权)人: | 中国科学院软件研究所 |
| 主分类号: | G06F21/73 | 分类号: | G06F21/73;G06F21/52 |
| 代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 李文涛 |
| 地址: | 100190 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 指针 加密 机制 risc 处理器 内存 溢出 防御 方法 | ||
本发明公开一种基于指针加密机制和RISC‑V协处理器的内存溢出防御方法,涉及计算机系统安全技术领域,通过加密返回地址以及函数指针,阻止通过缓冲区溢出修改此类数据跳转到目的地址的目的,以实现对RISC‑V架构安全防护,在提高RISC‑V系统的安全性的同时未对程序造成显著影响。
技术领域
本发明涉及计算机系统安全技术领域,具体涉及一种基于指针加密机制和RISC-V协处理器的内存溢出防御方法。
背景技术
缓冲区溢出是一种计算机系统中十分常见的安全漏洞。由于软件开发者编写代码时的疏忽等原因,导致内存缓冲区未作边界检查。攻击者利用此注入数据,溢出后覆盖重要数据,达到掌握程序控制流,甚至获取整个系统root权限的目的。而根据CommonVulnerabilities and Exposures网站的数据显示,仅2020年一年便有1600多个缓冲区溢出的漏洞被披露。因此如何防御利用此类漏洞的攻击是值得研究的问题。
目前主要的防御机制包括:1.数据不可执行,即阻止程序中的数据页被当作可执行代码执行;2.内存地址空间随机化,即进程的栈和堆等区域加载到内存时被加载到随机的地址;3.Stack canary,即在栈上缓冲区后插入一个对攻击者保密的随机值,如果栈溢出数值变化,则立刻终止程序;4.程序控制流完整性,提前确定程序流图,在程序块中增加tag,使得运行的程序只能按照流图跳转等。
然而目前的防御机制,均存在如下问题,包括可被绕过攻击,无法防御某些种类的溢出攻击,或实现方式对于程序的运行效率会造成很大影响等。
发明内容
基于上述问题,本发明提供一种基于指针加密机制和RISC-V协处理器的内存溢出防御机制。该方法通过加密返回地址以及函数指针,阻止通过缓冲区溢出修改此类数据跳转到目的地址的目的,以实现对RISC-V架构安全防护,在提高RISC-V系统的安全性的同时未对程序造成显著影响。
为实现上述目的,本发明采用如下技术方案:
一种基于指针加密机制和RISC-V协处理器的内存溢出防御方法,包括以下步骤:
1)使用SoC生成器RocketChip的RoCC(Rocket Custom Coprocessor)接口向RISC-V主处理器接入基于物理不可克隆函数PUF和真随机数生成器TRNG设计的协处理器;
2)分析程序源码,定位到向返回地址ra赋值的代码,在向ra赋值的代码前插入加密ra的RISC-V扩展指令即指令四,再定位到使用ra的代码,在使用ra的代码前插入解密ra的RISC-V扩展指令即指令四;
3)分析程序源码,定位到向函数指针fp赋值的代码,在向fp赋值的代码前插入加密fp的RISC-V扩展指令即指令四,定位到使用fp的代码,在使用fp的代码前插入解密fp的RISC-V扩展指令即指令四;
4)执行步骤2)和3)处理后的程序代码,当程序初次被操作系统加载进内存成为一个新进程时,操作系统向协处理器发送指令一,使协处理器中的TRNG生成真随机数并保存在协处理器的随机数寄存器中;
5)当所述新进程被切出时,操作系统向协处理器发送指令二,从随机数寄存器中取出随机数并存入印制电路板PCB中;
6)当所述新进程被切入时,操作系统向协处理器发送指令三,从PCB中取出随机数并存入随机数寄存器中;
7)在所述新进程运行的过程中,当代码向ra或fp赋值时,该新进程向协处理器发送指令四,向协处理器传入ra或fp,以及ra或fp在内存中的地址,地址作为PUF的激励,PUF产生响应;ra或fp与前述响应以及步骤4)中保存在随机数寄存器中的真随机数进行异或后,将密文传回主处理器,存入内存;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110907332.8/2.html,转载请声明来源钻瓜专利网。





