一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种桌面系统文件管理器远程操作行为管控方法和系统与流程

2022-02-22 17:59:08 来源:中国专利 TAG:


1.本发明属于文件远程管理技术领域,具体涉及一种桌面系统文件管理器远程操作行为管控方法和系统。


背景技术:

2.本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
3.很多系统的桌面系统文件管理器(以linux桌面系统文件管理器redhat系统的nautilus、国产银河麒麟系统的caja、国产uos系统的dde-file-manager等为例)除了可以对本地磁盘文件进行管理以外,还可以通过在菜单或地址栏输入远程服务的地址,通过认证后,像操作本地文件一样在界面中对远程服务的文件进行管理。
4.传统的文件管控技术主要利用内核层钩子(例如系统调用hook、inlinehook等)或者应用层钩子(例如ld_preload技术)hook关键的系统函数,对文件操作进行管控;与此同时,文件管理器操作远程文件是通过利用开源组件实现的,文件管理器通过开源组件相应的服务程序进行协议交互,完成对远程文件的操作。
5.现有这些管控方式基于进程对文件的操作进行分析,仅能识别文件管理器对于本地文件的操作,无法处理文件管理器与开源组件的复杂交互行为,无法对远程文件的操作进行管控。


技术实现要素:

6.本发明为了解决上述问题,提出一种桌面系统文件管理器远程操作行为管控方法和系统,本发明通过对文件管理器与开源组件相关服务的详细交互流程进行分析,对交互流程中的关键节点进行管控,从而达到准确区分文件的本地操作和远程操作,完成对远程文件的操作进行管控的功能。
7.根据一些实施例,本发明采用如下技术方案:
8.一种桌面系统文件管理器远程操作行为管控方法,包括以下步骤:
9.调用相关关键函数;
10.利用其中的打开、读取关键函数,获取文件管理器进程中的相应动作,获取操作的文件信息,并放入到处理队列中等待处理;
11.利用总线监视器监控文件管理器与开源组件的对应接口创建私有连接;
12.对总线监视器的输出进行解析,获取私有连接的返回值;
13.监控新的私有连接的总线交互,获取文件管理器与开源组件的对应接口的开放式写入交互,获取新文件描述符:
14.启用调用的写入关键函数,监控文件管理器对于该新文件描述符的写操作,将写入关键函数传来的数据包与读取关键函数获取的数据信息的哈希值进行比较,在哈希值匹配对应时,将所述读取关键函数获取的数据信息传递以进行业务处理;
15.调用关闭关键函数对数据包和所述数据信息进行回收处理。
16.作为可选择的实施方式,所述相关关键函数至少包括打开、读取、写入和关闭关键函数。
17.作为可选择的实施方式,所述操作的文件信息包括文件路径,且所述信息经过哈希处理。
18.作为可选择的实施方式,获取新文件描述符的具体过程包括:根据文件管理器与开源组件的对应接口的开放式写入交互的输出结果的id返回值,此值即为文件管理器通过进程间文件描述符传递获取到用于和开源组件通信的新文件描述符。
19.作为可选择的实施方式,将所述读取关键函数获取的数据信息传递以进行业务处理的具体过程包括所述读取关键函数获取的数据信息发送给上层业务逻辑模块,进行包含文件权限判断、敏感信息检查的业务处理。
20.作为可选择的实施方式,如果哈希值匹配对应,则证明文件管理器正在与开源组件进程进行文件数据传输操作,如果哈希值匹配不对应,则证明文件管理器正在进行文件本地操作。
21.作为进一步限定的实施方式,根据上层业务逻辑模块的返回结果,修改写入关键函数的返回值进行阻断处理。
22.一种桌面系统文件管理器远程操作行为管控系统,包括:
23.调用模块,被配置为调用相关关键函数,利用其中的打开、读取关键函数,获取文件管理器进程中的相应动作,获取操作的文件信息,并放入到处理队列中等待处理;
24.监视模块,利用总线监视器监控文件管理器与开源组件的对应接口创建私有连接;监控新的私有连接的总线交互,获取文件管理器与开源组件的对应接口的开放式写入交互,获取新文件描述符:
25.匹配模块,被配置为启用调用的写入关键函数,监控文件管理器对于该新文件描述符的写操作,将写入关键函数传来的数据包与读取关键函数获取的数据信息的哈希值进行比较,在哈希值匹配对应时,将所述读取关键函数获取的数据信息传递以进行业务处理;
26.回收模块,被配置为调用关闭关键函数对数据包和所述数据信息进行回收处理。
27.一种计算机可读存储介质,其中存储有多条指令,所述指令适于由终端设备的处理器加载并执行上述一种方法的步骤。
28.一种终端设备,包括处理器和计算机可读存储介质,处理器用于实现各指令;计算机可读存储介质用于存储多条指令,所述指令适于由处理器加载并执行上述一种方法的步骤。
29.与现有技术相比,本发明的有益效果为:
30.本发明可以准确判断处理文件管理器对于远程服务(ftp、smb、ssh)文件的处理过程,可以实现远程文件操作的审计和阻断功能,精准识别区分本地文件操作和远程文件操作行为。
31.为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
32.构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
33.图1为本实施例以ftp服务为例的流程示意图;
34.图2为本实施例的org.gtk.vfs.daemon接口定义示意图;
35.图3为本实施例的org.gtk.vfs.mount接口的“openforwrite”定义示意图。
具体实施方式:
36.下面结合附图与实施例对本发明作进一步说明。
37.应该指出,以下详细说明都是例示性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
38.需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
39.本实施例以linux桌面系统文件管理为例进行说明,但不代表本发明仅能用于该系统。
40.本实施例的文件管理器连接远程服务和拷贝本机文件到远程服务的流程分析,以ftp服务为例进行说明,但是对于其他服务如对于smb、ssh的连接,可采用与ftp相同的方案实现管控:
41.如图1所示,包括以下步骤:
42.步骤(1)使用内核层钩子hook系统调用open、read、write、close等关键函数。
43.步骤(2)使用hook的open、read的函数,获取文件管理器进程(如caja)的open、read动作,获取操作的文件信息(文件路径、读取的数据信息进行hash处理)放入到处理队列中等待处理。
44.步骤(3)使用系统工具命令dbus-monitor监控文件管理与gvfsd-ftp的“org.gtk.vfs.daemon”接口的“getconnection”方法交互,即创建私有连接的过程,获取gvfsd-ftp生成的新的dbus地址。
[0045]“org.gtk.vfs.daemon”接口定义如图2所示。
[0046]
步骤(4)对dbus-monitor的输出进行解析,获取”getconnect”方法返回值address1。
[0047]
步骤(5)监控新的私有连接的dbus交互,获取文件管理器与gvfsd-ftp的“org.gtk.vfs.mount”接口的“openforwrite”方法的交互。
[0048]“org.gtk.vfs.mount”接口的“openforwrite”定义如图3所示。获取输出结果的“fd_id”返回值,此值即为文件管理器通过进程间文件描述符传递获取到用于和gvfsd-ftp通信的socketpair“管道”的新文件描述符fd。
[0049]
步骤(6)获取到fd后,启用hook的write函数,监控文件管理器进程对于该fd的写操作,将write函数传来的数据包与步骤(2)通过read获取的数据信息hash进行比较,如果
值匹配对应,则证明文件管理器正在与gvfs-ftp进程进行文件数据传输操作,此时可以将步骤(2)获取的文件相关信息发送给上层业务逻辑模块,进行业务处理,如文件权限判断、敏感信息检查等,根据上层业务逻辑的返回结果,可以修改hook write函数的返回值进行阻断处理。
[0050]
步骤(7)使用hook的close的函数,对步骤(2)、步骤(6)产生的数据信息进行回收处理,可以处理正常的本地文件访问,防止内存等资源的泄露。
[0051]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0052]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0053]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0054]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0055]
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献