本申请涉及一种敏感数据检测方法及装置、计算机可读存储介质和计算机设备,本申请是通过在内存调用函数中预先加载钩子函数,当应用程序打开文件并进行内容解析时,需要通过内存调用函数进行内存调用,此时,通过钩子函数确定该应用程序所调用的内存块,将被调用的内存块更新至内存块列表,对更新的内存块列表中数据进行敏感数据识别。一方面,本申请无需对文件进行格式转换,另一方面,本申请通过内存块追踪可以快速确定需要进行识别的数据,从而可以提高敏感数据检测效率,且由于不受文件格式的限制,适用范围更广。
Sensitive data detection methods, devices, storage media and equipment
【技术实现步骤摘要】
敏感数据检测方法、装置、存储介质及设备
本申请涉及信息安全
,特别是涉及一种敏感数据检测方法及装置、计算机可读存储介质和计算机设备。
技术介绍
随着信息技术的发展,各类数据平台和信息系统(如医疗、人社、保险、税务、银行和社交网络等)所汇集的数据量越来越庞大,其中包含有例如用户姓名、联系方式、家庭住址等各类敏感数据。当敏感数据被泄露时,可能对用户的生活造成一定的影响。在实际应用中,当获取到某一份新的文件时,首先需要对其进行敏感数据检测以避免该文件中的敏感数据被泄露。现有技术在进行敏感数据检测时,通常首先将该文件转换为明文,然后根据转换得到的明文内容进行检测。然而,随着文件格式种类越来越多,采用现有的方法进行检测时,由于需要进行文件格式转换,不仅会降低检测效率,而且可能出现由于文件格式少见而无法正常进行格式转换、导致检测失败的情况。
技术实现思路
基于此,有必要针对现有技术存在的问题,提供一种可以提高检测效率、增大适用范围的敏感数据检测方法及装置、计算机可读存储介质和计算机设备。一种敏感数据检测方法,包括:当监测到应用程序通过内存调用函数进行内存调用事件时,执行预先加载在所述内存调用函数中的钩子函数;通过所述内存调用函数中的钩子函数,识别所述应用程序在进行所述内存调用事件的过程中调用的内存块;将所述应用程序调用的内存块更新至内存块列表;对更新的内存块列表中数据进行敏感数据识别,得到敏感数据检测结果。一种敏感数据检测装置,包括:钩子函数执行模块,用于当监测到应用程序通过内存调用函数进行内存调用事件时,执行预先加载在所述内存调用函数中的钩子函数;内存块识别模块,用于通过所述内存调用函数中的钩子函数,识别所述应用程序在进行所述内存调用事件的过程中调用的内存块;内存块管理模块,用于将所述应用程序调用的内存块更新至内存块列表;敏感数据检测模块,用于对更新的内存块列表中数据进行敏感数据识别,得到敏感数据检测结果。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。上述敏感数据检测方法及装置、计算机可读存储介质和计算机设备,当监测到应用程序通过内存调用函数进行内存调用事件时,执行预先加载在内存调用函数中的钩子函数;通过内存调用函数中的钩子函数,识别应用程序在进行内存调用事件的过程中调用的内存块;将应用程序调用的内存块更新至内存块列表;对更新的内存块列表中数据进行敏感数据识别,得到敏感数据检测结果。本申请是通过在内存调用函数中预先加载钩子函数,当应用程序打开文件并进行内容解析时,需要通过内存调用函数进行内存调用,此时,通过钩子函数确定该应用程序所调用的内存块,将被调用的内存块更新至内存块列表,对更新的内存块列表中数据进行敏感数据识别。一方面,本申请无需对文件进行格式转换,另一方面,本申请通过内存块追踪可以快速确定需要进行识别的数据,从而可以提高敏感数据检测效率,且由于不受文件格式的限制,适用范围更广。附图说明图1为一个实施例中用于实现敏感数据检测方法的电子设备的内部结构图;图2为一个实施例中敏感数据检测方法的流程示意图;图3为一个实施例中分块式内存管理的原理示意图;图4为一个实施例中对内存块列表中内存块的内容进行敏感数据识别,得到敏感数据检测结果的流程示意图;图5为一个实施例中建立预设敏感词库的流程示意图;图6为另一个实施例中对内存块列表中内存块的内容进行敏感数据识别,得到敏感数据检测结果的流程示意图;图7为一个实施例中进行模型训练得到数据属性分类模型的流程示意图;图8为另一个实施例中敏感数据检测方法的流程示意图;图9为又一个实施例中敏感数据检测方法的流程示意图;图10为一个实施例中敏感数据检测装置的结构示意图;图11为另一个实施例中敏感数据检测装置的结构示意图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。如图1所示,在一个实施例中,提供了一种电子设备,该电子设备包括通过系统总线连接的处理器、内存、存储介质和网络接口。其中,该电子设备的存储介质存储有操作系统、数据库,还存储有敏感数据检测装置。该敏感数据检测装置用于实现一种敏感数据检测方法。该电子设备的处理器被配置为执行一种敏感数据检测方法。该电子设备可以通过网络接口获取未进行敏感数据检测的文件。该操作系统中安装有可以打开不同格式的文件并进行文件内容解析的应用程序。当操作系统中的应用程序进行文件内容解析时,电子设备为该应用程序分配相应的内存块,当处理器检测到应用程序通过内存调用函数进行内存调用事件时,处理器执行本申请的敏感数据检测方法。该电子设备可以是一个独立的设备,或者可以是多个可互联通信的电子设备组成的电子设备群,敏感数据检测装置的各个功能模块可以分别部署在电子设备群中的各个电子设备上。该电子设备可以是台式计算机。如图2所示,在一个实施例中,提供一种敏感数据检测方法,本实施例以该方法应用于上述图1中的电子设备来举例说明,该方法具体包括以下步骤:步骤S100,当监测到应用程序通过内存调用函数进行内存调用事件时,执行预先加载在内存调用函数中的钩子函数。其中,内存调用函数是指在动态内存管理过程中所使用的函数。钩子函数也称hook函数,是windows消息处理机制的一部分,通过设置钩子函数,可在操作系统的层次上对所有消息、事件进行过滤,并访问在正常情况下无法访问的消息。在本步骤中,在内存调用函数中预先加载有钩子函数,可以理解为将原内存调用函数“包装”为一个新的函数。在原内存调用函数被hook后,会设置一个回调函数,应用程序在通过内存调用程序进行内存调用事件时,该回调函数被触发,从而可以认为是监测到应用程序通过内存调用函数进行内存调用事件,从而可以执行该钩子函数。可以理解,本申请可以是在应用层对内存调用函数进行hook,也可以是在内核层对内存调用函数进行hook,在此不作限定,具体可以根据实际情况进行选择。另外,本步骤中的内存调用事件为应用程序基于待检测文件的文件格式打开待检测文件后、对待检测文件的内容进行解析时发生的。具体地,对于待检测的非纯文本文件(如word、excel、ppt、xml、json、pdf、chm、各类压缩文件格式、各类数据库的存储文件格式等),本申请并不是通过自身对待检测的文件进行格式转换,而是通过相应的应用程序来打开待检测文件,当该应用程序进行文件内容解析时,该应用程序必然会调用内存来存放解析内容,从而,只需通过钩子函数对应用程序所调用的内存块的内容进行敏感数据检测即可,本申请的方法无需进行待检测文件的格式转换。本文档来自技高网...
【技术保护点】
1.一种敏感数据检测方法,其特征在于,包括:/n当监测到应用程序通过内存调用函数进行内存调用事件时,执行预先加载在所述内存调用函数中的钩子函数;/n通过所述内存调用函数中的钩子函数,识别所述应用程序在进行所述内存调用事件的过程中调用的内存块;/n将所述应用程序调用的内存块更新至内存块列表;/n对更新的内存块列表中数据进行敏感数据识别,得到敏感数据检测结果。/n
【技术特征摘要】
1.一种敏感数据检测方法,其特征在于,包括:
当监测到应用程序通过内存调用函数进行内存调用事件时,执行预先加载在所述内存调用函数中的钩子函数;
通过所述内存调用函数中的钩子函数,识别所述应用程序在进行所述内存调用事件的过程中调用的内存块;
将所述应用程序调用的内存块更新至内存块列表;
对更新的内存块列表中数据进行敏感数据识别,得到敏感数据检测结果。
2.根据权利要求1所述的方法,其特征在于,所述内存调用函数包括内存申请函数以及内存访问函数。
3.根据权利要求1所述的方法,其特征在于,所述通过所述钩子函数,识别所述应用程序在进行所述内存调用事件的过程中调用的内存块包括:
通过所述钩子函数,监测所述应用程序在进行所述内存调用事件的过程中申请或者访问的目标内存块,并获取所述目标内存块对应的内存块标识。
4.根据权利要求1所述的方法,其特征在于,所述对所述内存块列表中内存块的内容进行敏感数据识别,得到敏感数据检测结果包括:
将所述内存块列表中内存块的内容与预设敏感词库中的预设敏感数据进行匹配,得到所述敏感数据检测结果。
5.根据权利要求4所述的方法,其特征在于,所述将所述内存块列表中内存块的内容与预设敏感词库中的预设敏感数据进行匹配之前,还包括:
获取已确定为敏感数据的初始数据;
对所述初始数据进行特征提取,得到敏感特征;
基于所述敏感特征进行数据扩充,得到扩充数据;
根据所述初始数据以及所述扩充数据,建立所述预设...
【专利技术属性】
技术研发人员:罗易,
申请(专利权)人:腾讯云计算北京有限责任公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。