本发明涉及文件外发,具体地涉及一种文件外发管控方法、系统、电子设备及存储介质。
背景技术:
1、随着信息化程度的不断提升,企业机构在日常运营中产生了大量敏感文件,这些文件的安全管理成为了亟待解决的问题。传统的文件外发管控手段,如设置访问权限、拦截特定网络协议数据包等,虽然在一定程度上保障文件安全,但往往难以全面覆盖所有可能的泄露途径,特别是通过用户主动选择文件并外发的行为。
2、而且,通过设置文件访问权限实现外发文件拦截的方案灵活度较差,体现为:1、无法基于文件内容包含敏感文本进行自动拦截;2、为了不让应用程序外发某个文件而禁用了应用程序的读文件内容权限,使得任务颗粒度太大。通过拦截网络协议包实现外发文件拦截的方案则有着较大的局限性,体现为:1、无法对采用加密协议外发文件的途径进行拦截;2、从数据包中获取的信息十分有限,比如,难以甚至无法获取完整路径等。
技术实现思路
1、本发明实施例的目的是提供一种文件外发管控方法、系统、电子设备及存储介质,用于全部或至少部分的解决上述现有技术中存在的技术问题。
2、为了实现上述目的,本发明实施例提供一种文件外发管控方法,包括:
3、在第三方应用的进程开始运行时,采用消息钩子的方式将包含api绕道函数的dll文件注入到该进程中;
4、当用户选择文件试图外发时,api绕道函数开始执行,以提取api函数的参数信息,其中,所述参数信息包含文件路径信息;
5、将提取的api函数的参数信息报告给内容识别组件,以使所述内容识别组件依据文件路径信息访问将要外发的文件并判断是否包含敏感内容,若包含敏感内容则阻断文件选择行为,防止文件外发。
6、可选的,windows操作系统为文件选择阶段的复制粘贴、拖曳以及文件打开对话框三种途径均提供了已正式文档化的api函数,api绕道函数表征为与api函数签名一致的伪api函数。
7、可选的,当用户选择文件试图外发时,api绕道函数开始执行,以提取api函数的参数信息之前,所述文件外发的管控方法还包括:
8、在dll文件初始化阶段,dll文件修改api入口处被转存的指令的字节将跳转至api绕道函数的指令写入,以使绕道函数先于api函数执行。
9、可选的,dll文件注入目标进程之后,所述文件外发的管控方法还包括:跳板函数的构建过程包括:
10、dll文件找到文件选择api的真实地址,并在虚拟地址空间中开辟一块内存,其中,挂钩文件选择api发生在dll文件注入完毕后;
11、将api函数入口处的指令存储至该内存中,并在存储的指令末尾添加一个无条件跳转指令,指回原api指令的剩余字节部分,并为这块内存加上可执行保护属性,并去除写保护属性,获得跳板函数,其中,原api指令的剩余字节部分表征为dll文件修改api入口处被转存的指令中未修改的指令剩余字节部分。
12、可选的,将提取的api函数的参数信息报告给内容识别组件,以使所述内容识别组件依据文件路径信息访问将要外发的文件是否包含敏感内容,若包含敏感内容则阻断文件选择行为,防止文件外发,包括:
13、将提取的api函数的参数信息通过rpc的方式报告给内容识别组件,内容识别组件通过特征匹配的方式确定文件格式;
14、若文件是文本类文件,则在文本内容中搜索敏感词,若命中敏感词汇,则以rpc的方式通知跳板函数阻断文件选择行为;
15、若文件是图片类文件,则利用ocr技术将图片中的文本信息提取出来,并搜索敏感词汇,若命中敏感词汇,则以rpc的方式通知跳板函数阻断文件选择行为;
16、若文件是压缩文件,则递归解压缩检查压缩文件,若压缩文件是加密或未知文件格式,则通知管理员。
17、另一方面,本发明还提供一种文件外发管控系统,包括:
18、注入单元,用于在第三方应用的进程开始运行时,采用消息钩子的方式将包含api绕道函数的dll文件注入到该进程中;
19、提取单元,用于当用户选择文件试图外发时,api绕道函数开始执行,以提取api函数的参数信息,其中,所述参数信息包含文件路径信息;
20、识别单元,用于将提取的api函数的参数信息报告给内容识别组件,以使所述内容识别组件依据文件路径信息访问将要外发的文件并判断是否包含敏感内容,若包含敏感内容则阻断文件选择行为,防止文件外发。
21、可选的,所述文件外发管理系统还包括构建单元,用于构建跳板函数:
22、dll文件找到文件选择api的真实地址,并在虚拟地址空间中开辟一块内存,其中,挂钩文件选择api发生在dll文件注入完毕后;
23、将api函数入口处的指令存储至该内存中,并在存储的指令末尾添加一个无条件跳转指令,指回原api指令的剩余字节部分,并为这块内存加上可执行保护属性,并去除写保护属性,获得跳板函数,其中,原api指令的剩余字节部分表征为dll文件修改api入口处被转存的指令中未修改的指令剩余字节部分。
24、可选的,所述识别单元具体用于:
25、将提取的api函数的参数信息通过rpc的方式报告给内容识别组件,内容识别组件通过特征匹配的方式确定文件格式;
26、若文件是文本类文件,则在文本内容中搜索敏感词,若命中敏感词汇,则以rpc的方式通知跳板函数阻断文件选择行为;
27、若文件是图片类文件,则利用ocr技术将图片中的文本信息提取出来,并搜索敏感词汇,若命中敏感词汇,则以rpc的方式通知跳板函数阻断文件选择行为;
28、若文件是压缩文件,则递归解压缩检查压缩文件,若压缩文件是加密或未知文件格式,则通知管理员。
29、另一方面,本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上进行运行的计算机程序,所述处理器执行所述程序时实现上述所述的文件外发管控方法的步骤。
30、另一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述所述的文件外发管控方法的步骤。
31、通过上述技术方案,在文件选择阶段追踪外发文件的路径信息,能最大化获取外发文件信息,而且通过将文件中是否包含敏感内容作为外发文件阻断标准的能力,进行文件外发拦截,实现自动拦截,进一步保障了文件安全。
32、本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
1.一种文件外发管控方法,其特征在于,包括:
2.根据权利要求1所述的文件外发管控方法,其特征在于,windows操作系统为文件选择阶段的复制粘贴、拖曳以及文件打开对话框三种途径均提供了已正式文档化的api函数,api绕道函数表征为与api函数签名一致的伪api函数。
3.根据权利要求1所述的文件外发管控方法,其特征在于,当用户选择文件试图外发时,api绕道函数开始执行,以提取api函数的参数信息之前,所述文件外发的管控方法还包括:
4.根据权利要求1所述的文件外发管控方法,其特征在于,dll文件注入目标进程之后,所述文件外发的管控方法还包括:跳板函数的构建过程,包括:
5.根据权利要求4所述的文件外发管控方法,其特征在于,将提取的api函数的参数信息报告给内容识别组件,以使所述内容识别组件依据文件路径信息访问将要外发的文件是否包含敏感内容,若包含敏感内容则阻断文件选择行为,防止文件外发,包括:
6.一种文件外发管控系统,其特征在于,包括:
7.根据权利要求6所述的文件外发管控系统,其特征在于,所述文件外发管理系统还包括构建单元,用于构建跳板函数:
8.根据权利要求7所述的文件外发管控系统,其特征在于,所述识别单元具体用于:
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上进行运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-5任一项所述的文件外发管控方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5任一项所述的文件外发管控方法的步骤。
