一种防止内存复用中数据泄露的方法及计算机系统技术方案

技术编号:12613878 阅读:86 留言:0更新日期:2015-12-30 12:15
本发明专利技术提供一种防止内存复用中数据泄露的方法及计算机系统,该计算机系统包括:内存释放回收模块、待清理内存池和内存清理模块;该方法包括:内存释放回收模块获取至少一个进程分别释放的内存页;内存释放回收模块针对获取的每一个内存页分别判断是否包括敏感信息,并将包括敏感信息的内存页存入待清理内存池中;内存清理模块根据预先创建的清除机制,对存入待清理内存池中的包括敏感信息的内存页进行清除操作。根据本方案,可以提高计算机系统的安全性。

【技术实现步骤摘要】

本专利技术涉及数据安全
,特别涉及一种防止内存复用中数据泄露的方法及计算机系统
技术介绍
在计算机系统中,内存是最重要的资源之一,其容量直接影响计算机系统的整体性能。随着云计算技术和服务的发展,多任务/进程操作系统所处理的数据量越来越多,以至于计算机系统中的内存越来越无法满足大量数据的处理需求。目前,可以采用内存复用技术来解决内存空间的限制,以提高内存的可用率。其中,内存复用是指在计算机系统中物理内存一定的情况下,通过综合运用内存复用对内存进行分时复用。该方法可以包括:在某个进程所使用的内存不再需要时,该进程会申请释放这段内存,计算机系统回收该内存,并将回收的该内存分配给其他进程使用。然而,由于进程在释放内存之后,内存中可能会保留一些敏感信息,比如,明文或密文存在的用户名、口令、密钥、证书等信息,其他恶意进程可以通过频繁申请该内存,以获取到该内存中保留的敏感信息,从而影响计算机系统的安全。
技术实现思路
有鉴于此,本专利技术提供一种防止内存复用中数据泄露的方法及计算机系统,以提高计算机系统的安全性。本专利技术提供了一种防止内存复用中数据泄露的方法,应用于计算机系统,该计算机系统包括:内存释放回收模块、待清理内存池和内存清理模块;所述方法包括:内存释放回收模块获取至少一个进程分别释放的内存页;内存释放回收模块针对获取的每一个内存页分别判断是否包括敏感信息,并将包括敏感信息的内存页存入待清理内存池中;内存清理模块根据预先创建的清除机制,对存入待清理内存池中的包括敏感信息的内存页进行清除操作。优选地,所述计算机系统进一步包括:可用内存池和内存分配模块;进一步包括:内存释放回收模块将不包括敏感信息的内存页存入可用内存池中;进一步包括:内存清理模块将清除操作之后的内存页存入可用内存池中;进一步包括:内存分配模块在接收到进程发送的内存请求时,根据该内存请求,将可用内存池中的内存页分配给该进程。优选地,所述内存清理模块根据预先创建的清除机制,对存入所述待清理内存池中的包括敏感信息的内存页进行清除操作,包括:确定所述待清理内存池中包括敏感信息的每一个内存页分别对应的敏感程度,并根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作;进一步包括:在内存分配模块接收到的进程发送的内存请求中携带该进程对应的敏感程度时,内存分配模块根据该进程对应的敏感程度,在为该进程分配的内存页上添加与该敏感程度对应的敏感标记;所述确定所述待清理内存池中包括敏感信息的每一个内存页分别对应的敏感程度,包括:根据待清理内存池中每一个内存页上的敏感标记确定相应内存页的敏感程度。优选地,所述根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作,包括:在内存页的敏感程度对应包括密钥时,对该内存页中密钥所在区域进行清除;在内存页的敏感程度对应包括用户名、密码时,对该内存页中每隔第一设定个数的字节写入第二设定个数的字节;在内存页的敏感程度对应包括证书时,对该内存页中所有的内容进行清除。优选地,进一步包括:内存清理模块根据当前处理器数量和内存大小,创建相应个数的内存清理线程,以利用创建的相应个数的内存清理线程执行所述对存入所述待清理内存池中的包括敏感信息的内存页进行清除操作;进一步包括:在创建的内存清理线程的空闲时间段大于设定值时,将该内存清理线程销毁。本专利技术提供了一种计算机系统,该计算机系统包括:内存释放回收模块、待清理内存池和内存清理模块;其中,内存释放回收模块,用于获取至少一个进程分别释放的内存页;所述内存释放回收模块,进一步用于针对获取的每一个内存页分别判断是否包括敏感信息,并将包括敏感信息的内存页存入待清理内存池中;所述内存清理模块,用于根据预先创建的清除机制,对存入待清理内存池中的包括敏感信息的内存页进行清除操作。优选地,所述计算机系统进一步包括:可用内存池和内存分配模块;其中,所述内存释放回收模块,进一步用于将不包括敏感信息的内存页存入所述可用内存池中;所述内存清理模块,进一步用于将清除操作之后的内存页存入所述可用内存池中;所述内存分配模块,用于在接收到进程发送的内存请求时,根据该内存请求,将所述可用内存池中的内存页分配给该进程。优选地,所述内存清理模块,具体用于确定所述待清理内存池中包括敏感信息的每一个内存页分别对应的敏感程度,并根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作;所述内存分配模块,进一步用于在接收到进程发送的内存请求中携带该进程对应的敏感程度时,根据该进程对应的敏感程度,在为该进程分配的内存页上添加与该敏感程度对应的敏感标记;所述内存清理模块,进一步用于根据待清理内存池中每一个内存页上的敏感标记确定相应内存页的敏感程度。优选地,所述内存清理模块,具体用于在内存页的敏感程度对应包括密钥时,对该内存页中密钥所在区域进行清除;在内存页的敏感程度对应包括用户名、密码时,对该内存页中每隔第一设定个数的字节写入第二设定个数的字节;在内存页的敏感程度对应包括证书时,对该内存页中所有的内容进行清除。优选地,所述内存清理模块,进一步用于根据当前处理器数量和内存大小,创建相应个数的内存清理线程,以利用创建的相应个数的内存清理线程执行所述对存入所述待清理内存池中的包括敏感信息的内存页进行清除操作;所述内存清理模块,进一步用于在创建的内存清理线程的空闲时间段大于设定值时,将该内存清理线程销毁。本专利技术实施例提供了一种防止内存复用中数据泄露的方法及计算机系统,通过在计算机系统中增加待清理内存池和内存清理模块,使得内存释放回收模块在判断至少一个进程分别释放的内存页中包括敏感信息时,将包括敏感信息的内存页存入待清理内存池中,以使内存清理模块对待清理内存池中的内存页进行清除操作,即使其他进程被分配到该内存页,也不会获取到该内存页中的敏感信息,从而保证了计算机系统的安全。【附图说明】图1是本专利技术实施例提供的方法流程图;图2是本专利技术另一实施例提供的方法流程图;图3是本专利技术实施例提供的计算机系统硬件架构图;图4是本专利技术实当前第1页1 2 3 4 本文档来自技高网...

【技术保护点】
一种防止内存复用中数据泄露的方法,其特征在于,应用于计算机系统,该计算机系统包括:内存释放回收模块、待清理内存池和内存清理模块;所述方法包括:内存释放回收模块获取至少一个进程分别释放的内存页;内存释放回收模块针对获取的每一个内存页分别判断是否包括敏感信息,并将包括敏感信息的内存页存入待清理内存池中;内存清理模块根据预先创建的清除机制,对存入待清理内存池中的包括敏感信息的内存页进行清除操作。

【技术特征摘要】

【专利技术属性】
技术研发人员:胥榕
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1