[发明专利]一种数据流完整性检测方法、装置、设备及介质在审

专利信息
申请号: 202211699802.7 申请日: 2022-12-28
公开(公告)号: CN115982028A 公开(公告)日: 2023-04-18
发明(设计)人: 陈李维;聂晓帆;史岗;孟丹 申请(专利权)人: 中国科学院信息工程研究所
主分类号: G06F11/36 分类号: G06F11/36;G06F11/34
代理公司: 北京路浩知识产权代理有限公司 11002 代理人: 张正秋
地址: 100093 *** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 数据流 完整性 检测 方法 装置 设备 介质
【说明书】:

发明涉及一种数据流完整性检测方法、装置、设备及介质,其方法包括:接收用户输入的待检测源代码生成带有行号信息的原汇编文件;根据原汇编文件中的读指令和写指令,利用预设数据的EUI属性,定义为sdDFIx指令和ldDFIx指令;再对原汇编文件进行代码插桩,生成新汇编文件;利用原指令集架构,扩展执行编译后含有所述sdDFIx指令和ldDFIx指令的所述新汇编文件的所述新指令集架构;利用扩展后的所述新指令集架构,执行编译和链接后的所述新汇编文件,得出对待检查代码的检查结果;本发明的目的是解决现有技术中性能开销很大,不能更加高效地监测程序异常行为的缺陷,无法实现对程序运行时进行有效的保护的问题。

技术领域

本发明涉及计算机软件技术领域,尤其涉及一种数据流完整性检测方法、装置、设备及介质。

背景技术

C/C++语言编写的程序,会存在各种内存漏洞。内存漏洞是指程序员在软件编写的过程中,对内存的操作有时间或空间上的失误,产生使得程序可能做出违反程序本身设计的行为的安全问题。攻击者通常利用这些漏洞,修改内存数据,实施攻击,严重威胁计算机系统的运行时安全。

攻击者进行攻击的关键点是在程序运行时损坏内存数据,对其进行任意读写。目前主流的防御技术是数据流完整性DFI(Data Flow Integrity)保护,其可以在程序运行时保护内存数据,发现程序的异常行为,阻止此类攻击。它通过静态分析获取数据的合法写集合。之后其采用标签检查机制对程序进行运行时行为检测。具体地,DFI首先使用静态分析来生成数据流图(DFG)去表达变量的定义-使用关系,给每条内存写指令(store)分配唯一标签,进而得到数据合法的标签集合。之后,其采用代码插桩的方式对数据的内存读写指令进行指令插桩,得到可执行文件。在程序运行时,实时计算内存写指令(store)的标签;遇到内存读指令(load)时,进行标签检查,即检查最新一次写此数据的内存写指令(store)的标签值是否在静态分析得到的合法写集合中,若在,则继续执行;若不在,说明数据被非法损坏,产生异常行为,则终止程序执行。

目前,软件DFI给被检测程序的虚拟内存分为1GB,额外的1GB/2的内存分配给数据的标签RDT。每32bit分配16bit的标签,即每条store指令都会分配唯一的16bit的标签,每个数据也会分配一个16bit的标签。DFI执行会产生超过100%的性能开销以及50%的内存开销,使其不能在实践中应用。目前,采用硬件支持来简化和加速DFI。例如,现有技术采用硬件辅助的TMDFI为被检测程序的虚拟内存每64bit,分配8bit的标签,即每条store指令都会分配唯一的8bit的标签,每个数据也会分配一个8bit的标签。硬件辅助的TMDFI通过基于标签的方法执行DFI,性能开销为39%,内存开销为12.5%。硬件辅助的PIM-DFI和软件DFI一致,每32bit内存空间分配16bit的标签。硬件辅助的PIM-DFI也是一种引入硬件支持加速DFI的方案,其性能开销约为37%,内存开销为25%。同时,现有的RVDFI也是一种引入硬件支持来加速DFI的方案,其性能开销约为18%,内存开销为25%。性能开销来源于代码膨胀导致的缓存未命中和频繁的内存访问。现有的性能开销仍然很大,不能更加高效地监测程序异常行为,难以对程序运行时进行有效的保护。

发明内容

本发明提供一种数据流完整性检测方法、装置、设备及介质。用以解决现有技术中性能开销很大,不能更加高效地监测程序异常行为的缺陷,无法实现对程序运行时进行有效的保护的问题。

本发明提供一种数据流完整性检测方法,包括:

接收用户输入的待检测源代码,利用交叉编译器生成带有行号信息的原汇编文件;

根据所述原汇编文件中的读指令和写指令,利用预设数据的EUI属性,定义为sdDFIx指令和ldDFIx指令;

根据所述sdDFIx指令和ldDFIx指令对原汇编文件进行代码插桩,生成新汇编文件;

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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