[发明专利]使用释放后内存的检测方法、系统、设备及存储介质有效

专利信息
申请号: 201811013000.X 申请日: 2018-08-31
公开(公告)号: CN109426723B 公开(公告)日: 2020-12-22
发明(设计)人: 肖枭;时清凯;周金果;范刚 申请(专利权)人: 深圳市源伞新科技有限公司
主分类号: G06F21/57 分类号: G06F21/57
代理公司: 北京博思佳知识产权代理有限公司 11415 代理人: 林祥
地址: 518055 广东省深圳市南山区西丽街道*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 使用 释放 内存 检测 方法 系统 设备 存储 介质
【说明书】:

发明提供了使用释放后内存的检测方法、系统、设备及存储介质,该方法包括以下步骤:输入待检测的程序;生成程序中每个函数的符号表达式图,符号表达式图包括节点和连接节点的边,节点包括值节点和运算符节点,边包括数据依赖性边和控制依赖性边,其中,数据依赖性边是将节点连接到与其有直接数据依赖关系的值节点的有方向性的边,控制依赖性边是当存在限定变量的条件时将变量连接到条件的有向边;检测符号表达式图中进行内存释放操作源的源节点到进行内存释放操作对象的对象节点的路径的约束条件是否都满足,若是,则发现使用释放后内存缺陷,本发明利用符号表达式图中路径和路径约束条件的判断,能够高效地检测使用释放后内存的缺陷。

技术领域

本发明涉及程序检测领域,具体地说,涉及使用释放后内存的检测方法、系统、设备及存储介质。

背景技术

UAF(UseAfterFree,释放后重引用)漏洞是一类危害很大的漏洞。UAF漏洞能导致被释放的内存空间被写入可控数据后,被再次作为指针引用,进而使得攻击者有机会控制系统的执行流程,执行恶意代码。为了提升系统的安全性,有必要对移动终端操作系统中的UAF漏洞进行验证,以判断移动终端操作系统是否存在特定的UAF漏洞,并找出可利用路径,对此漏洞的可利用性进行评估。

使用已释放的内存(Use after Free)可以导致不同的后果,包括程序崩溃或程序被控制执行。

使用释放后的内存的主要原因是程序的缺陷设计。

可以由一个例子简单说明:

代码第4行free了ptr指针指向的内存,但在代码第8行使用了ptr。该类型漏洞会产生无法预料的意外结果。

在经修复的代码版本中,将free(ptr)指针的代码挪到了使用ptr的代码之后,可以避免发生使用释放后的代码的问题。除此之外,通常采用在释放一个指针后,将其置为空指针的方法来预防使用释放后的内存的问题。

Use-After-Free(UAF)漏洞是一种内存数据破坏缺陷,是由程序试图访问或操作已经被释放的内存引起的。该类型漏洞通常会导致程序崩溃,任意代码执行等危害。分析程序可以分为静态和动态两类。

动态分析程序具体使用的方法则较为多样,大致分为三类:影子内存,即将程序所使用的内存映射到可控内存;动态插桩,即在指令之间插入分析代码;Debug Allocators,即通过HOOK分配函数,强制分配冗余数据。动态分析的局限在于代码覆盖率会比较低。动态插桩是目前最为流行的动态分析技术。在应用该技术检测UAF漏洞时,具体的检测算法可分为空间算法和时间算法。空间算法指的是处理悬垂指针指向的堆内存(例如将其设置为无访问权限或添加隔离区),从而确保目标程序在试图访问该内存时出错。这种算法有两个局限:一是只能在直接访问堆内存即发生UAF漏洞时触发;二是无法检测堆内存被重分配的情况。时间算法基于一个直觉,即长期存在的悬垂指针是不安全的。时间算法首先设置生命阈值,然后记录和跟踪所有悬垂指针的生命周期,并在该周期超过阈值时发出预警。时间算法能在早期检测出悬垂指针,其代价是较大的开销和一定的误报率。

静态分析程序多是针对源代码进行分析,源代码经过编译、优化等处理所得可执行程序的实际执行动作可能与源码语义不完全一致,造成缺陷分析不够精确。另外由于程序本身的复杂性,复杂的堆栈,数据流结构,使得静态分析工具或者无法检测深入的问题,或者无法保证精度。所以虽然保证检测完备,但是误报也很高。

有鉴于此,本发明提供了一种使用释放后内存的检测方法、系统、设备及存储介质。

发明内容

针对现有技术中的问题,本发明的目的在于提供使用释放后内存的检测方法、系统、设备及存储介质,克服了现有技术的困难,通过符号表达式图中路径和路径约束条件的判断,能够高效地检测使用释放后内存的缺陷。

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

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市源伞新科技有限公司,未经深圳市源伞新科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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