CN105205409A - 一种防止内存复用中数据泄露的方法及计算机*** - Google Patents
一种防止内存复用中数据泄露的方法及计算机*** Download PDFInfo
- Publication number
- CN105205409A CN105205409A CN201510581997.9A CN201510581997A CN105205409A CN 105205409 A CN105205409 A CN 105205409A CN 201510581997 A CN201510581997 A CN 201510581997A CN 105205409 A CN105205409 A CN 105205409A
- Authority
- CN
- China
- Prior art keywords
- page
- memory
- internal memory
- sensitivity
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Memory System (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种防止内存复用中数据泄露的方法及计算机***,该计算机***包括:内存释放回收模块、待清理内存池和内存清理模块;该方法包括:内存释放回收模块获取至少一个进程分别释放的内存页;内存释放回收模块针对获取的每一个内存页分别判断是否包括敏感信息,并将包括敏感信息的内存页存入待清理内存池中;内存清理模块根据预先创建的清除机制,对存入待清理内存池中的包括敏感信息的内存页进行清除操作。根据本方案,可以提高计算机***的安全性。
Description
技术领域
本发明涉及数据安全技术领域,特别涉及一种防止内存复用中数据泄露的方法及计算机***。
背景技术
在计算机***中,内存是最重要的资源之一,其容量直接影响计算机***的整体性能。随着云计算技术和服务的发展,多任务/进程操作***所处理的数据量越来越多,以至于计算机***中的内存越来越无法满足大量数据的处理需求。
目前,可以采用内存复用技术来解决内存空间的限制,以提高内存的可用率。其中,内存复用是指在计算机***中物理内存一定的情况下,通过综合运用内存复用对内存进行分时复用。该方法可以包括:在某个进程所使用的内存不再需要时,该进程会申请释放这段内存,计算机***回收该内存,并将回收的该内存分配给其他进程使用。
然而,由于进程在释放内存之后,内存中可能会保留一些敏感信息,比如,明文或密文存在的用户名、口令、密钥、证书等信息,其他恶意进程可以通过频繁申请该内存,以获取到该内存中保留的敏感信息,从而影响计算机***的安全。
发明内容
有鉴于此,本发明提供一种防止内存复用中数据泄露的方法及计算机***,以提高计算机***的安全性。
本发明提供了一种防止内存复用中数据泄露的方法,应用于计算机***,该计算机***包括:内存释放回收模块、待清理内存池和内存清理模块;所述方法包括:
内存释放回收模块获取至少一个进程分别释放的内存页;
内存释放回收模块针对获取的每一个内存页分别判断是否包括敏感信息,并将包括敏感信息的内存页存入待清理内存池中;
内存清理模块根据预先创建的清除机制,对存入待清理内存池中的包括敏感信息的内存页进行清除操作。
优选地,所述计算机***进一步包括:可用内存池和内存分配模块;
进一步包括:内存释放回收模块将不包括敏感信息的内存页存入可用内存池中;
进一步包括:内存清理模块将清除操作之后的内存页存入可用内存池中;
进一步包括:内存分配模块在接收到进程发送的内存请求时,根据该内存请求,将可用内存池中的内存页分配给该进程。
优选地,
所述内存清理模块根据预先创建的清除机制,对存入所述待清理内存池中的包括敏感信息的内存页进行清除操作,包括:确定所述待清理内存池中包括敏感信息的每一个内存页分别对应的敏感程度,并根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作;
进一步包括:在内存分配模块接收到的进程发送的内存请求中携带该进程对应的敏感程度时,内存分配模块根据该进程对应的敏感程度,在为该进程分配的内存页上添加与该敏感程度对应的敏感标记;
所述确定所述待清理内存池中包括敏感信息的每一个内存页分别对应的敏感程度,包括:根据待清理内存池中每一个内存页上的敏感标记确定相应内存页的敏感程度。
优选地,所述根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作,包括:
在内存页的敏感程度对应包括密钥时,对该内存页中密钥所在区域进行清除;
在内存页的敏感程度对应包括用户名、密码时,对该内存页中每隔第一设定个数的字节写入第二设定个数的字节;
在内存页的敏感程度对应包括证书时,对该内存页中所有的内容进行清除。
优选地,
进一步包括:内存清理模块根据当前处理器数量和内存大小,创建相应个数的内存清理线程,以利用创建的相应个数的内存清理线程执行所述对存入所述待清理内存池中的包括敏感信息的内存页进行清除操作;
进一步包括:在创建的内存清理线程的空闲时间段大于设定值时,将该内存清理线程销毁。
本发明提供了一种计算机***,该计算机***包括:内存释放回收模块、待清理内存池和内存清理模块;其中,
内存释放回收模块,用于获取至少一个进程分别释放的内存页;
所述内存释放回收模块,进一步用于针对获取的每一个内存页分别判断是否包括敏感信息,并将包括敏感信息的内存页存入待清理内存池中;
所述内存清理模块,用于根据预先创建的清除机制,对存入待清理内存池中的包括敏感信息的内存页进行清除操作。
优选地,所述计算机***进一步包括:可用内存池和内存分配模块;其中,
所述内存释放回收模块,进一步用于将不包括敏感信息的内存页存入所述可用内存池中;
所述内存清理模块,进一步用于将清除操作之后的内存页存入所述可用内存池中;
所述内存分配模块,用于在接收到进程发送的内存请求时,根据该内存请求,将所述可用内存池中的内存页分配给该进程。
优选地,
所述内存清理模块,具体用于确定所述待清理内存池中包括敏感信息的每一个内存页分别对应的敏感程度,并根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作;
所述内存分配模块,进一步用于在接收到进程发送的内存请求中携带该进程对应的敏感程度时,根据该进程对应的敏感程度,在为该进程分配的内存页上添加与该敏感程度对应的敏感标记;
所述内存清理模块,进一步用于根据待清理内存池中每一个内存页上的敏感标记确定相应内存页的敏感程度。
优选地,所述内存清理模块,具体用于在内存页的敏感程度对应包括密钥时,对该内存页中密钥所在区域进行清除;在内存页的敏感程度对应包括用户名、密码时,对该内存页中每隔第一设定个数的字节写入第二设定个数的字节;在内存页的敏感程度对应包括证书时,对该内存页中所有的内容进行清除。
优选地,
所述内存清理模块,进一步用于根据当前处理器数量和内存大小,创建相应个数的内存清理线程,以利用创建的相应个数的内存清理线程执行所述对存入所述待清理内存池中的包括敏感信息的内存页进行清除操作;
所述内存清理模块,进一步用于在创建的内存清理线程的空闲时间段大于设定值时,将该内存清理线程销毁。
本发明实施例提供了一种防止内存复用中数据泄露的方法及计算机***,通过在计算机***中增加待清理内存池和内存清理模块,使得内存释放回收模块在判断至少一个进程分别释放的内存页中包括敏感信息时,将包括敏感信息的内存页存入待清理内存池中,以使内存清理模块对待清理内存池中的内存页进行清除操作,即使其他进程被分配到该内存页,也不会获取到该内存页中的敏感信息,从而保证了计算机***的安全。
附图说明
图1是本发明实施例提供的方法流程图;
图2是本发明另一实施例提供的方法流程图;
图3是本发明实施例提供的计算机***硬件架构图;
图4是本发明实施例提供的计算机***结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种防止内存复用中数据泄露的方法,应用于计算机***,该计算机***包括:内存释放回收模块、待清理内存池和内存清理模块;该方法可以包括以下步骤:
步骤101:内存释放回收模块获取至少一个进程分别释放的内存页。
步骤102:内存释放回收模块针对获取的每一个内存页分别判断是否包括敏感信息,并将包括敏感信息的内存页存入待清理内存池中。
步骤103:内存清理模块根据预先创建的清除机制,对存入待清理内存池中的包括敏感信息的内存页进行清除操作。
本发明实施例中,通过在计算机***中增加待清理内存池和内存清理模块,使得内存释放回收模块在判断至少一个进程分别释放的内存页中包括敏感信息时,将包括敏感信息的内存页存入待清理内存池中,以使内存清理模块对待清理内存池中的内存页进行清除操作,即使其他进程被分配到该内存页,也不会获取到该内存页中的敏感信息,从而保证了计算机***的安全。
本发明一个优选实施例中,该计算机***中还包括内存分配模块,该内存分配模块在接收到进程发送的内存请求时,根据该内存请求将内存池中的内存页分配给该进程。现有技术中,当不包括为进程分配的内存页时,内存分配模块需要等待内存释放回收模块所回收的内存页,为了减少内存分配模块分配内存页的等待时间,本发明一个优选实施例,内存清理模块对内存页的清除操作过程与内存分配模块的分配过程可以是异步进行,从而使得内存分配模块在分配内存页时,可以直接将内存清理模块进行清除操作的内存页分配给进程,从而减少了内存分配模块分配内存页的等待时间。
在本发明一个优选实施例中,为了提高内存清理模块对包括有敏感信息的内存页的清除操作的效率,可以通过确定每一个内存页分别对应的敏感程度,根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作。对于内存清理模块对每一个内存页敏感程度的确定,可以通过如下方式进行确定:在内存分配模块接收到的进程发送的内存请求中携带该进程对应的敏感程度时,内存分配模块根据该进程对应的敏感程度,在为该进程分配的内存页上添加与该敏感程度对应的敏感标记;内存清理模块根据待清理内存池中每一个内存页上的敏感标记确定相应内存页的敏感程度。
在本发明一个优选实施例中,为了提高内存清理模块对内存页进行清除操作的效率,可以根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作,该消除操作可以包括:在内存页的敏感程度对应包括密钥时,对该内存页中密钥所在区域进行清除;在内存页的敏感程度对应包括证书时,对该内存页中每隔第一设定个数的字节写入第二设定个数的字节;在内存页的敏感程度对应包括敏感文件时,对该内存页中所有的内容进行清除。无需对所有包括敏感信息的内存页进行所有内容的清除,从而提高了清除效率。
在本发明一个优选实施例中,为了减少计算机***内资源的浪费,在内存清理模块需要执行对内存页的清除操作时,可以根据当前处理器数量和内存大小,创建相应个数的内存清理线程对包括敏感信息的内存页进行清除操作,以及在创建的内存清理现场的空闲时间段大于设定值时,将该内存清理线程销毁,从而减少了计算机***内资源的浪费。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步地详细描述。
本发明实施例提供了一种防止内存复用中数据泄露的方法,该方法以进程1释放内存页,进程2申请内存页为例对本实施例进行详细说明,请参考图2,该方法可以包括以下步骤:
步骤201:进程1释放内存页给内存释放回收模块。
内存复用是指在计算机***物理内存一定的情况下,通过综合运用内存复用单项技术(内存气泡、内存共享、内存交换)对内存进行分时复用。通过内存复用,使得虚拟机内存规格总和大于计算机***规格内存总和,提高计算机***中虚拟机密度。
在用户态,当进程1运行结束后,不需要为其分配的内存页时,可以将该内存页释放。
在核心态,内存释放回收模块获取到进程1释放的内存页。
步骤202:内存释放回收模块判断该内存页是否包括敏感信息,若不包括,执行步骤203;若包括,执行步骤204。
其中,该敏感信息可以包括:明文或密文存在的用户名、口令、密钥、证书等信息。若该敏感信息被恶意进程获取到,可能会对计算机***的安全造成影响。
在本实施例中,内存是否回收模块可以通过如下几种方式判断内存页中是否包括敏感信息:
1、根据内存页上是否包括敏感标记若不包括敏感标记,则确定该内存页中不包括敏感信息;若包括敏感标记,则确定该内存页中包括敏感信息,以及可以根据该内存页上的敏感信息确定该内存页的敏感程度。
其中,该敏感标记可以是进程在申请内存页时,由内存分配模块根据内存申请上携带的敏感程度,在为进程分配的内存页上添加的标记,用来标记该内存页中包括敏感信息。
2、利用关键字遍历内存页中的内容,以确定该内存页中是否包括敏感信息。
3、可以确定内存页是否包括敏感信息的其他方式。
步骤203:将该内存页存入可用内存池中。
在本实施例中,可用内存池用于存储待分配的内存页。
步骤204:将该内存页存入待清理内存池中。
在本实施例中,待清理内存池用于存储待清理的内存页。
在本实施例中,内存释放回收模块在将待清理内存页存入待清理内存池之前,可以在待清理内存页上标记待清理状态,以表征该内存页的状态为待清理状态。
本实施例以进程1释放的内存页包括敏感信息为例进行说明。
步骤205:内存清理模块确定待清理内存池中内存页包括敏感信息的敏感程度,并根据计算机***的资源状况,创建内存清理线程。
在本实施例中,对于内存页中包括的敏感信息对应不同的敏感程度,例如,内存页对应的敏感程度可以包括但不限于:对应密钥、对应用户名密码、对应证书三个敏感程度。
例如,可以通过如下方式利用内存页上包括的敏感标记来确定对应的敏感程度:敏感标记为0,对应的敏感程度为对应密钥;敏感标记为1,对应的敏感程度为对应用户名密码;敏感标记为2,对应的敏感程度为对应证书。
进一步的,为了减少计算机***资源的浪费,本实施例中,在需要对内存页执行清除操作时,可以根据当前计算机***的资源状况动态创建内存清理线程,其中,该计算机***的资源状况可以包括处理器数量、内存大小等信息。
进一步的,在本实施例中,可以在创建的内存清理现场的空闲时间段大于设定值时,将该内存清理线程销毁,从而减少了计算机***内资源的浪费。例如,该设定值可以为1min。
步骤206:内存清理模块利用创建的内存清理线程,以及根据预先创建的清除机制,对该内存页进行清除操作,将清除操作之后的内存页的待清理标记修改为可用标记,并将该内存页存入可用内存池中。
在本实施例中,可以创建如下但不限于如下的清除机制:
1、在内存页的敏感程度对应包括密钥时,对该内存页中密钥所在区域进行清除;
2、在内存页的敏感程度对应包括用户名、密码时,对该内存页中每隔第一设定个数的字节写入第二设定个数的字节;
3、在内存页的敏感程度对应包括证书时,对该内存页中所有的内容进行清除。
内存清理模块根据创建的该清除机制对内存页执行清除操作。
需要说明的是,在计算机***启动时,内存清理模块即可被启动起来,以执行对待清理内存池中内存页的清除操作,也可以设定时间段,以使内存清理模块按照该设定的时间段扫描待清理内存池,在扫描到待清理内存池中包括待清理的内存页时,即可对内存页执行清除操作;还可以由内存分配模块在确定可用内存池中不包括待分配的内存页时,触发内存清理模块对待清理内存池中内存页的清除操作。
步骤207:进程2向内存分配模块发送内存请求,以请求内存页。
步骤208:内存分配模块根据该内存请求判断可用内存池中是否包括待分配的内存页,若不包括,执行步骤209;若包括,执行步骤210。
步骤209:内存分配模块触发内存清理模块对待清理内存池中的内存页的清除操作,返回步骤208。
步骤210:内存分配模块根据内存请求中携带的敏感程度,将可用内存池中的内存页分配给该进程2,并在该内存页上添加与该敏感程度对应的敏感标记。
如图3、图4所示,本发明实施例提供了一种计算机***。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例计算机***所在设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的计算机***包括:
内存释放回收模块401、待清理内存池402和内存清理模块403;其中,
内存释放回收模块401,用于获取至少一个进程分别释放的内存页;
所述内存释放回收模块401,进一步用于针对获取的每一个内存页分别判断是否包括敏感信息,并将包括敏感信息的内存页存入待清理内存池402中;
所述内存清理模块403,用于根据预先创建的清除机制,对存入待清理内存池402中的包括敏感信息的内存页进行清除操作。
该计算机***进一步包括:可用内存池404和内存分配模块405;其中,
所述内存释放回收模块401,进一步用于将不包括敏感信息的内存页存入所述可用内存池404中;
所述内存清理模块403,进一步用于将清除操作之后的内存页存入所述可用内存池404中;
所述内存分配模块405,用于在接收到进程发送的内存请求时,根据该内存请求,将所述可用内存池404中的内存页分配给该进程。
进一步地,所述内存清理模块403,具体用于确定所述待清理内存池402中包括敏感信息的每一个内存页分别对应的敏感程度,并根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作;
所述内存分配模块405,进一步用于在接收到进程发送的内存请求中携带该进程对应的敏感程度时,根据该进程对应的敏感程度,在为该进程分配的内存页上添加与该敏感程度对应的敏感标记;
所述内存清理模块403,进一步用于根据待清理内存池402中每一个内存页上的敏感标记确定相应内存页的敏感程度。
进一步地,所述内存清理模块403,具体用于在内存页的敏感程度对应包括密钥时,对该内存页中密钥所在区域进行清除;在内存页的敏感程度对应包括用户名、密码时,对该内存页中每隔第一设定个数的字节写入第二设定个数的字节;在内存页的敏感程度对应包括证书时,对该内存页中所有的内容进行清除。
进一步地,所述内存清理模块403,进一步用于根据当前处理器数量和内存大小,创建相应个数的内存清理线程,以利用创建的相应个数的内存清理线程执行所述对存入所述待清理内存池402中的包括敏感信息的内存页进行清除操作;
所述内存清理模块403,进一步用于在创建的内存清理线程的空闲时间段大于设定值时,将该内存清理线程销毁。
综上,本发明实施例至少可以实现如下有益效果:
1、本发明实施例中,通过在计算机***中增加待清理内存池和内存清理模块,使得内存释放回收模块在判断至少一个进程分别释放的内存页中包括敏感信息时,将包括敏感信息的内存页存入待清理内存池中,以使内存清理模块对待清理内存池中的内存页进行清除操作,即使其他进程被分配到该内存页,也不会获取到该内存页中的敏感信息,从而保证了计算机***的安全。
2、本发明实施例中,内存清理模块对内存页的清除操作过程与内存分配模块的分配过程可以是异步进行,从而使得内存分配模块在分配内存页时,可以直接将内存清理模块进行清除操作的内存页分配给进程,从而减少了内存分配模块分配内存页的等待时间。
3、本发明实施例中,可以通过确定每一个内存页分别对应的敏感程度,根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作。对于内存清理模块对每一个内存页敏感程度的确定,可以通过如下方式进行确定:在内存分配模块接收到的进程发送的内存请求中携带该进程对应的敏感程度时,内存分配模块根据该进程对应的敏感程度,在为该进程分配的内存页上添加与该敏感程度对应的敏感标记;内存清理模块根据待清理内存池中每一个内存页上的敏感标记确定相应内存页的敏感程度。从而提高了内存清理模块对包括有敏感信息的内存页的清除操作的效率。
4、本发明实施例中,根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作,该消除操作可以包括:在内存页的敏感程度对应包括密钥时,对该内存页中密钥所在区域进行清除;在内存页的敏感程度对应包括证书时,对该内存页中每隔第一设定个数的字节写入第二设定个数的字节;在内存页的敏感程度对应包括敏感文件时,对该内存页中所有的内容进行清除。无需对所有包括敏感信息的内存页进行所有内容的清除,从而提高了清除效率。
5、本发明实施例中,在内存清理模块需要执行对内存页的清除操作时,可以根据当前处理器数量和内存大小,创建相应个数的内存清理线程对包括敏感信息的内存页进行清除操作,以及在创建的内存清理现场的空闲时间段大于设定值时,将该内存清理线程销毁,从而减少了计算机***内资源的浪费。
上述设备内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个〃〃〃〃〃〃”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种防止内存复用中数据泄露的方法,其特征在于,应用于计算机***,该计算机***包括:内存释放回收模块、待清理内存池和内存清理模块;所述方法包括:
内存释放回收模块获取至少一个进程分别释放的内存页;
内存释放回收模块针对获取的每一个内存页分别判断是否包括敏感信息,并将包括敏感信息的内存页存入待清理内存池中;
内存清理模块根据预先创建的清除机制,对存入待清理内存池中的包括敏感信息的内存页进行清除操作。
2.根据权利要求1所述的方法,其特征在于,所述计算机***进一步包括:可用内存池和内存分配模块;
进一步包括:内存释放回收模块将不包括敏感信息的内存页存入可用内存池中;
进一步包括:内存清理模块将清除操作之后的内存页存入可用内存池中;
进一步包括:内存分配模块在接收到进程发送的内存请求时,根据该内存请求,将可用内存池中的内存页分配给该进程。
3.根据权利要求2所述的方法,其特征在于,
所述内存清理模块根据预先创建的清除机制,对存入所述待清理内存池中的包括敏感信息的内存页进行清除操作,包括:确定所述待清理内存池中包括敏感信息的每一个内存页分别对应的敏感程度,并根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作;
进一步包括:在内存分配模块接收到的进程发送的内存请求中携带该进程对应的敏感程度时,内存分配模块根据该进程对应的敏感程度,在为该进程分配的内存页上添加与该敏感程度对应的敏感标记;
所述确定所述待清理内存池中包括敏感信息的每一个内存页分别对应的敏感程度,包括:根据待清理内存池中每一个内存页上的敏感标记确定相应内存页的敏感程度。
4.根据权利要求3所述的方法,其特征在于,所述根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作,包括:
在内存页的敏感程度对应包括密钥时,对该内存页中密钥所在区域进行清除;
在内存页的敏感程度对应包括用户名、密码时,对该内存页中每隔第一设定个数的字节写入第二设定个数的字节;
在内存页的敏感程度对应包括证书时,对该内存页中所有的内容进行清除。
5.根据权利要求1-4中任一所述的方法,其特征在于,
进一步包括:内存清理模块根据当前处理器数量和内存大小,创建相应个数的内存清理线程,以利用创建的相应个数的内存清理线程执行所述对存入所述待清理内存池中的包括敏感信息的内存页进行清除操作;
进一步包括:在创建的内存清理线程的空闲时间段大于设定值时,将该内存清理线程销毁。
6.一种计算机***,其特征在于,该计算机***包括:内存释放回收模块、待清理内存池和内存清理模块;其中,
内存释放回收模块,用于获取至少一个进程分别释放的内存页;
所述内存释放回收模块,进一步用于针对获取的每一个内存页分别判断是否包括敏感信息,并将包括敏感信息的内存页存入待清理内存池中;
所述内存清理模块,用于根据预先创建的清除机制,对存入待清理内存池中的包括敏感信息的内存页进行清除操作。
7.根据权利要求6所述的计算机***,其特征在于,所述计算机***进一步包括:可用内存池和内存分配模块;其中,
所述内存释放回收模块,进一步用于将不包括敏感信息的内存页存入所述可用内存池中;
所述内存清理模块,进一步用于将清除操作之后的内存页存入所述可用内存池中;
所述内存分配模块,用于在接收到进程发送的内存请求时,根据该内存请求,将所述可用内存池中的内存页分配给该进程。
8.根据权利要求7所述的计算机***,其特征在于,
所述内存清理模块,具体用于确定所述待清理内存池中包括敏感信息的每一个内存页分别对应的敏感程度,并根据预先创建的清除机制,对不同敏感程度的内存页进行清除操作;
所述内存分配模块,进一步用于在接收到进程发送的内存请求中携带该进程对应的敏感程度时,根据该进程对应的敏感程度,在为该进程分配的内存页上添加与该敏感程度对应的敏感标记;
所述内存清理模块,进一步用于根据待清理内存池中每一个内存页上的敏感标记确定相应内存页的敏感程度。
9.根据权利要求8所述的计算机***,其特征在于,所述内存清理模块,具体用于在内存页的敏感程度对应包括密钥时,对该内存页中密钥所在区域进行清除;在内存页的敏感程度对应包括用户名、密码时,对该内存页中每隔第一设定个数的字节写入第二设定个数的字节;在内存页的敏感程度对应包括证书时,对该内存页中所有的内容进行清除。
10.根据权利要求6-9中任一所述的计算机***,其特征在于,
所述内存清理模块,进一步用于根据当前处理器数量和内存大小,创建相应个数的内存清理线程,以利用创建的相应个数的内存清理线程执行所述对存入所述待清理内存池中的包括敏感信息的内存页进行清除操作;
所述内存清理模块,进一步用于在创建的内存清理线程的空闲时间段大于设定值时,将该内存清理线程销毁。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510581997.9A CN105205409A (zh) | 2015-09-14 | 2015-09-14 | 一种防止内存复用中数据泄露的方法及计算机*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510581997.9A CN105205409A (zh) | 2015-09-14 | 2015-09-14 | 一种防止内存复用中数据泄露的方法及计算机*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105205409A true CN105205409A (zh) | 2015-12-30 |
Family
ID=54953083
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510581997.9A Pending CN105205409A (zh) | 2015-09-14 | 2015-09-14 | 一种防止内存复用中数据泄露的方法及计算机*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105205409A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107783908A (zh) * | 2017-11-07 | 2018-03-09 | 晶晨半导体(上海)股份有限公司 | 一种基于Linux内核内存泄露的检测方法 |
CN110321998A (zh) * | 2018-03-31 | 2019-10-11 | 北京深鉴智能科技有限公司 | 卷积神经网络实现方法、装置、加速设备、存储介质 |
CN113626181A (zh) * | 2021-06-30 | 2021-11-09 | 苏州浪潮智能科技有限公司 | 一种内存清理方法、装置、设备及可读存储介质 |
CN115859384A (zh) * | 2022-10-12 | 2023-03-28 | 北京连山科技股份有限公司 | 一种网络安全设备内存敏感数据残余信息的安全保护方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130067163A1 (en) * | 2011-09-09 | 2013-03-14 | Vinu Velayudhan | Methods and structure for transferring ownership of a logical volume by transfer of native-format metadata in a clustered storage environment |
CN104007993A (zh) * | 2014-06-11 | 2014-08-27 | 中国科学院信息工程研究所 | 一种Linux***内存敏感数据的清除方法及装置 |
-
2015
- 2015-09-14 CN CN201510581997.9A patent/CN105205409A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130067163A1 (en) * | 2011-09-09 | 2013-03-14 | Vinu Velayudhan | Methods and structure for transferring ownership of a logical volume by transfer of native-format metadata in a clustered storage environment |
CN104007993A (zh) * | 2014-06-11 | 2014-08-27 | 中国科学院信息工程研究所 | 一种Linux***内存敏感数据的清除方法及装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107783908A (zh) * | 2017-11-07 | 2018-03-09 | 晶晨半导体(上海)股份有限公司 | 一种基于Linux内核内存泄露的检测方法 |
CN110321998A (zh) * | 2018-03-31 | 2019-10-11 | 北京深鉴智能科技有限公司 | 卷积神经网络实现方法、装置、加速设备、存储介质 |
CN110321998B (zh) * | 2018-03-31 | 2022-06-14 | 赛灵思公司 | 卷积神经网络实现方法、装置、加速设备、存储介质 |
CN113626181A (zh) * | 2021-06-30 | 2021-11-09 | 苏州浪潮智能科技有限公司 | 一种内存清理方法、装置、设备及可读存储介质 |
CN113626181B (zh) * | 2021-06-30 | 2023-07-25 | 苏州浪潮智能科技有限公司 | 一种内存清理方法、装置、设备及可读存储介质 |
CN115859384A (zh) * | 2022-10-12 | 2023-03-28 | 北京连山科技股份有限公司 | 一种网络安全设备内存敏感数据残余信息的安全保护方法 |
CN115859384B (zh) * | 2022-10-12 | 2023-11-10 | 北京连山科技股份有限公司 | 一种网络安全设备内存敏感数据残余信息的安全保护方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101986285B (zh) | 虚拟机存储空间管理方法、***及物理主机 | |
US8108649B2 (en) | Method of memory management for server-side scripting language runtime system | |
CN105205409A (zh) | 一种防止内存复用中数据泄露的方法及计算机*** | |
JP3910573B2 (ja) | 連続したメモリ・アドレスを提供する方法、システムおよびコンピュータ・ソフトウェア | |
CN112685333B (zh) | 一种堆内存管理方法及装置 | |
CN114327917A (zh) | 内存管理方法、计算设备及可读存储介质 | |
CN112579251A (zh) | 虚拟机内存管理的方法及设备 | |
CN111679914A (zh) | 一种内存管理方法、***、计算机设备及存储介质 | |
CN110750336A (zh) | 一种OpenStack虚拟机内存热扩容方法 | |
CN112000484A (zh) | 栈帧地址随机化方法及相关设备 | |
CN107391028B (zh) | 一种虚拟卷权限的控制方法及装置 | |
CN112199042A (zh) | 存储空间管理方法、装置、芯片、设备及存储介质 | |
Calderón et al. | Understanding and exploiting the internals of GPU resource allocation for critical systems | |
CN112231053A (zh) | 一种负载均衡服务分配方法及装置 | |
CN109062781B (zh) | 一种报文缓冲区管理方法及装置 | |
US11886332B2 (en) | Dynamic memory allocation methods and systems | |
CN108121602B (zh) | 一种确定垃圾收集触发点的方法、电子设备及存储介质 | |
US8131772B2 (en) | Method and apparatus for improving the performance of object-oriented queues | |
CN113568581A (zh) | 一种嵌入式设备的多应用资源回收方法及*** | |
CN103530239A (zh) | 一种使用内存池提升通信服务器性能的方法 | |
CN110851181B (zh) | 数据处理方法、装置及计算设备 | |
EP0262301B1 (en) | Paging supervisor | |
CN112817766B (zh) | 一种内存管理方法、电子设备及介质 | |
CN113448958B (zh) | 数据处理方法和装置、电子设备、存储介质 | |
CN106547603B (zh) | 减少golang语言***垃圾回收时间的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20151230 |