[发明专利]一种基于指针加密机制和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)中保存在随机数寄存器中的真随机数进行异或后,将密文传回主处理器,存入内存;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202110907332.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top