CN107015982A - 一种监控系统文件完整性的方法、装置和设备 - Google Patents

一种监控系统文件完整性的方法、装置和设备 Download PDF

Info

Publication number
CN107015982A
CN107015982A CN201610056252.5A CN201610056252A CN107015982A CN 107015982 A CN107015982 A CN 107015982A CN 201610056252 A CN201610056252 A CN 201610056252A CN 107015982 A CN107015982 A CN 107015982A
Authority
CN
China
Prior art keywords
metadata
file
file system
stored
memory
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
Application number
CN201610056252.5A
Other languages
English (en)
Inventor
刘自龙
董侃
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Banma Zhixing Network Hongkong Co Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610056252.5A priority Critical patent/CN107015982A/zh
Publication of CN107015982A publication Critical patent/CN107015982A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1847File system types specifically adapted to static storage, e.g. adapted to flash memory or SSD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • G06F16/152File search processing using file content signatures, e.g. hash values
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1734Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs

Abstract

本发明提供了一种监控系统文件完整性的方法、装置和设备,其中方法包括:在文件系统初始化时,获取并存储文件系统元数据;在文件系统运行过程中,获取文件系统元数据,将获取的系统文件元数据与已存储的系统文件元数据进行比对,依据对比结果确定该文件系统的文件完整性。本发明既适用于磁盘文件系统,也适用于内存文件系统,提高了通用性。另外,相比较对所有文件进行比对的方式,处理更简单高效,降低了对设备性能的影响。

Description

一种监控系统文件完整性的方法、装置和设备
【技术领域】
本发明涉及计算机应用技术领域,特别涉及一种监控系统文件完整性的方法、装置和设备。
【背景技术】
随着移动互联网及物联网技术的发展,其相关安全事件不断出现,逐渐成为关注的焦点。
Linux内核中的IMA(Integrity Measurement Architecture,完整性度量架构)通过系统钩子技术实现对可执行文件、库文件和可加载内核文件等磁盘文件进行完整性度量。当上述磁盘文件被加载到内存时,IMA计算磁盘文件的哈希值并进行存储。通过磁盘文件的哈希值是否变化来验证磁盘文件的完整性是否被破坏。
然而,IMA机制存在以下缺陷:
IMA机制需要针对所有文件都进行哈希计算及校验,对于设备性能将会产生较大影响,并不适用于移动类设备或物联网设备等性能较低的设备。
【发明内容】
有鉴于此,本发明提供了一种监控系统文件完整性的方法、装置和设备,以降低对设备性能的影响。
具体技术方案如下:
本发明提供了一种监控系统文件完整性的方法,该方法包括:
在文件系统初始化时,获取并存储文件系统元数据;
在文件系统运行过程中,获取文件系统元数据,将获取的系统文件元数据与已存储的系统文件元数据进行比对,依据比对结果确定该文件系统的文件完整性。
根据本发明一优选实施方式,所述存储文件系统元数据和所述将获取的系统文件元数据与已存储的系统文件元数据进行比对在可信执行环境中执行。
根据本发明一优选实施方式,所述存储文件系统元数据包括:对获取的系统文件元数据进行哈希处理并存储哈希值;
所述将获取的系统文件元数据与已存储的系统文件元数据进行比对包括:对获取的系统文件元数据进行哈希处理,将得到的哈希值与已存储的哈希值进行比对。
根据本发明一优选实施方式,所述文件系统包括磁盘文件系统或内存文件系统。
根据本发明一优选实施方式,若所述文件系统为磁盘文件系统,则所述文件系统初始化包括:被监控设备被激活或第一次开机启动所述被监控设备时执行的初始化。
根据本发明一优选实施方式,若所述文件系统为内存文件系统,则所述文件系统初始化包括:被监控设备的操作系统每次启动时执行的初始化。
根据本发明一优选实施方式,若所述文件系统为磁盘文件系统,则该方法还包括:
在文件系统更新后,获取文件系统元数据,利用获取的系统文件元数据替换已存储的系统文件元数据。
根据本发明一优选实施方式,若所述文件系统为内存文件系统,则在文件系统初始化时,所述存储文件系统元数据包括:
若尚未存储该内存文件系统元数据,则存储该内存文件系统元数据;
若已存储有该内存文件系统元数据,则利用获取的系统文件元数据替换已存储的系统文件元数据。
根据本发明一优选实施方式,所述文件系统元数据包括:
超级块和块组描述符。
根据本发明一优选实施方式,所述可信执行环境包括:
可信芯片,或者,
利用虚拟化机制隔离出的安全环境。
根据本发明一优选实施方式,采用轮询或者事件触发的方式,执行所述获取文件系统元数据。
根据本发明一优选实施方式,所述依据比对结果确定该文件系统的文件完整性包括:
若获取的系统文件元数据与已存储的系统文件元数据一致,则确定该文件系统的文件完整,否则确定该文件系统的文件不完整。
根据本发明一优选实施方式,该方法还包括:
将对获取的系统文件元数据的执行结果上传至服务器。
本发明还提供了一种监控系统文件完整性的装置,该装置包括:元数据获取单元、元数据执行单元和结果接收单元;
所述元数据获取单元,用于在文件系统初始化时以及在文件系统运行过程中,获取文件系统元数据,并提供给所述元数据执行单元;
所述元数据执行单元,用于在文件系统初始化时,对接收到的元数据进行存储;在文件系统运行过程中,将接收到的元数据与已存储的元数据进行比对,确定该文件系统的文件完整性;还用于将执行结果发送给所述结果接收单元;
所述结果接收单元,用于接收所述元数据执行单元的执行结果。
根据本发明一优选实施方式,所述元数据执行单元位于可信执行环境中。
根据本发明一优选实施方式,所述元数据执行单元,具体用于:在文件系统初始化时,对接收到的元数据进行哈希处理并存储哈希值;在文件系统运行过程中,对接收到的元数据进行哈希处理,将得到的哈希值与已存储的哈希值进行比对。
根据本发明一优选实施方式,所述文件系统包括磁盘文件系统或内存文件系统。
根据本发明一优选实施方式,若所述文件系统为磁盘文件系统,则所述文件系统初始化包括:被监控设备被激活或第一次开机启动所述被监控设备时执行的初始化。
根据本发明一优选实施方式,若所述文件系统为内存文件系统,则所述文件系统初始化包括:被监控设备的操作系统每次启动时执行的初始化。
根据本发明一优选实施方式,若所述文件系统为磁盘文件系统,则所述元数据获取单元,还用于在文件系统更新后,获取文件系统元数据并提供给所述元数据执行单元;
所述元数据执行单元,还用于在文件系统更新后,利用接收到的元数据替换已存储的元数据。
根据本发明一优选实施方式,若所述文件系统为内存文件系统,则所述元数据执行单元在文件系统初始化时执行的所述对接收到的元数据进行存储,包括:
若尚未存储该内存文件系统的元数据,则存储接收到的元数据;
若已存储有该内存文件系统的元数据,则利用接收到的元数据替换已存储的元数据。
根据本发明一优选实施方式,所述文件系统元数据包括:
超级块和块组描述符。
根据本发明一优选实施方式,所述元数据执行单元包括:
可信芯片,或者,
利用虚拟化机制隔离出的安全模块。
根据本发明一优选实施方式,所述元数据获取单元采用轮询或者事件触发的方式,执行所述获取文件系统元数据。
根据本发明一优选实施方式,所述元数据执行单元在确定该文件系统的文件完整性时,具体执行:
若接收到的元数据与已存储的元数据一致,则确定该文件系统的文件完整,否则确定该文件系统的文件不完整。
根据本发明一优选实施方式,该装置还包括:
结果上报单元,用于将所述结果接收单元接收到的执行结果上传至服务器。
本发明还提供了一种设备,包括
一个或者多个处理器;
存储器;
一个或者多个程序,所述一个或者多个程序存储在所述存储器中,被所述一个或者多个处理器执行以实现如下操作:
在文件系统初始化时,获取并存储文件系统元数据;
在文件系统运行过程中,获取文件系统元数据,将获取的系统文件元数据与已存储的系统文件元数据进行比对,依据比对结果确定该文件系统的文件完整性。
由以上技术方案可以看出,本发明通过对文件系统的元数据进行存储,并通过对文件系统的元数据的比对来确定文件系统的文件完整性,这种方式相比较对所有文件进行比对的方式,处理更简单高效,降低了对设备性能的影响。
【附图说明】
图1为本发明实施例提供的主要方法流程图;
图2为本发明实施例提供的针对磁盘文件系统的方法流程图;
图3为本发明实施例提供的Ext4的结构示意图;
图4为本发明实施例提供的针对内存文件系统的方法流程图;
图5为本发明实施例提供的装置结构图;
图6为本发明实施例提供的一种在初始化阶段以及更新阶段的示意图;
图7为本发明实施例提供的一种在运行阶段的示意图;
图8为本发明实施例提供的一种设备结构图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
为了方便对本发明的理解,首先对操作系统中的文件系统进行简单介绍。操作系统中的文件系统主要包括磁盘文件系统和内存文件系统。其中,磁盘文件系统包括FAT16、FAT32、NTFS、Minix、ext、ext2、xiafs、HPFS、VFAT等文件系统,磁盘文件通常比较大,包含系统可执行文件、库文件、配置文件等,在移动操作系统中,磁盘系统文件通常在系统内核启动后进行写保护挂载。而内存文件系统主要包括romfs、ramdisk、ramfs、tmpfs等文件系统,内存文件通常较小,主要包含操作系统启动所必须的一些文件,比如硬件配置文件等。内存文件通常在操作系统内核启动时从存储设备解压读取并驻留在内存中,并且相关改变不会复写到存储设备中。
不同的文件系统在存储设备中以一定的结构进行存储,但均有描述文件的元数据。元数据是用来描述文件特征的系统数据,诸如访问权限、文件拥有者、文件数据块的分布信息、文件在使用过程中的变化等等。基于此,本发明可以通过监控文件系统元数据的变化来实现对系统文件完整性的监控。
本发明所涉及的监控系统文件完整性,包括监控诸如系统文件是否被篡改,其中,系统文件被篡改,包括:系统文件发生各种变化,例如,系统文件中部分或全部被删除、修改、对系统文件增加部分内容等等,只要系统文件被篡改,则该系统文件就不完整。
图1为本发明实施例提供的主要方法流程图,如图1中所示,该方法主要包括以下步骤:
在101中,在文件系统初始化时,获取并存储文件系统元数据。
在本步骤中,可以在普通系统环境中存储获取的文件系统元数据,也可以在可信执行环境中存储获取的文件系统元数据,其中,在可信执行环境中存储元数据的方式,可以提高存储的元数据的安全性。本发明实施例所涉及的可信执行环境,可以是利用诸如ARM TrustZone或TI M-Shield等机制在硬件上隔离出的安全区域,通常体现为一个可信芯片,具有独立的处理器和存储单元。也可以是利用虚拟化机制隔离出一个独立的安全环境。无论采用哪种方式,目的是为了提供一个可信执行环境来对获取的文件系统元数据进行存储和比对,从而保证可信执行环境中的数据不被篡改。
在本发明实施例中获取的文件系统元数据可以包括超级块和块组描述符,具体将在后续实施例中详细描述。
在102中,在文件系统运行过程中,获取文件系统元数据,将获取的系统文件元数据与已存储的系统文件元数据进行比对,依据对比结果确定该文件系统的文件完整性。
本步骤中执行的比对处理可以在普通系统环境中执行,也可以在可信执行环境中执行,在可信执行环境中执行,可以提高执行过程的安全性。
另外,在步骤101中,可以对文件系统元数据进行处理,该处理可以包括对文件系统元数据进行哈希处理,存储得到的哈希值。其中,可以在普通系统环境中存储得到的哈希值,也可以在可信执行环境中存储得到的哈希值,其中,在可信执行环境中存储哈希值的方式,可以提高存储的哈希值的安全性。相应地,在步骤102中可以对获取的元数据进行哈希处理,将得到的哈希值与已存储的哈希值进行比对,依据比对结果确定该文件系统的文件完整性。其中,将得到的哈希值与已存储的哈希值进行比对过程,可以在普通系统环境中执行,也可以在可信执行环境中执行。
在进行比对时,若得到的哈希值与已存储的哈希值一致,则可以确定该文件系统的文件完整,没有被篡改。若得到的哈希值与已存储的哈希值不一致,则可以确定该文件系统的文件不完整,可能被篡改。
下面结合实施例,分别以磁盘文件系统和内存文件系统为例对本发明提供的方法进行详细描述。
图2为本发明实施例提供的针对磁盘文件系统的方法流程图,对于磁盘文件系统而言,主要涉及三种独立的阶段:文件系统初始化(步骤201至步骤203)、文件系统的运行过程(步骤204至步骤206)以及文件系统的升级过程(步骤207至步骤209),针对这三种阶段会涉及到不同的处理。如图2中所示,该方法可以具体包括以下步骤:
在201中,在磁盘文件系统初始化时,获取磁盘文件系统元数据。
本步骤可以在被监控设备被激活或第一次开机时执行。当被监控设备被激活或第一次开机时,操作系统初始化过程中会进行磁盘文件系统的初始化,此时对磁盘文件系统的元数据进行采集。
以移动操作系统普遍采用的Ext4(Fourth extended filesystem,第四代扩展文件系统)为例,Ext4由多个块组(Group)组成,如图3中所示。块组0主要包括引导块、超级块、块组描述符、预留块组描述符、数据块位图、inode位图、inode表和数据块。其中,引导块主要包含1024字节,用于磁盘文件系统的启动引导。超级块和块组描述符(包括预留块组描述符)是用于描述磁盘文件系统的元数据,任何添加、删除文件等操作均会对元数据进行修改,为了防止意外,元数据在其他块组中会有相应的备份。
本步骤中就是采集超级块和块组描述符。
在202中,在可信执行环境中对获取的元数据进行哈希处理并存储该磁盘文件系统对应的哈希值。
在本步骤中,可以将获取的元数据传入可信执行环境,在可信执行环境中执行对元数据的哈希以及哈希值的存储。例如,将元数据传入可信芯片,该可信芯片具有独立的处理器和存储单元,可信芯片将元数据进行哈希处理后,将该磁盘文件系统对应的哈希值存入自身的存储单元,从而保证了哈希值的保密和不可篡改。
本发明实施例采用的哈希处理方式可以包括但不限于MD4、MD5、SHA-1等。
需要说明的是,对于目前的移动操作系统而言,其磁盘文件系统通常只有一个,因此在可信芯片中针对该磁盘文件系统进行哈希值的存储即可。但对于PC等所使用的操作系统而言,或者移动操作系统可能逐渐发展出的操作系统而言,可能挂接多个磁盘文件系统,那么可以分别针对各磁盘文件系统执行本发明的流程,并针对各磁盘文件系统分别对应存储哈希值。
在203中,将可信执行环境的执行结果上传至服务器。
本步骤中,可以将可信执行环境中哈希处理和哈希值的存储成功与否的结果上传至服务器,如果存储成功,则服务器可以获知该被监控设备的磁盘文件系统开始被监控,且目前处于正常状态。若存储不成功,则服务器可以进行相关告警功能,通知服务人员对被监控设备进行处理,或者服务器也可以针对被监控设备下发针对该磁盘文件系统的更新。
在204中,在磁盘文件系统运行过程中,采用轮询的方式或事件触发的方式获取磁盘文件系统元数据。
由于通常的操作系统中(包括移动操作系统)中磁盘只读挂载,其元数据在运行时(除了系统升级之外)不会发生变化,因此在运行过程中可以采用轮询的方式或事件触发的方式采集磁盘文件系统元数据,以进行磁盘文件的完整性监控。其中上述的事件可以是由服务器端产生的触发事件,也可以是由人为产生的触发事件,具体可以根据具体应用场景或需求进行配置。
在205中,在可信执行环境中对步骤204获取的元数据进行哈希处理,将得到的哈希值与已存储的该磁盘文件系统对应的哈希值进行比对,依据比对结果确定该磁盘文件系统的文件完整性。
同样,将元数据传入可信执行环境,在可信执行环境中进行对元数据的哈希处理以及哈希值的比对,若得到的哈希值与已存储的该磁盘文件系统对应的哈希值一致,则可以确定该磁盘文件系统的文件完整,否则可以确定该磁盘文件系统的文件不完整。
在206中,将可信执行环境的执行结果上传至服务器。
本步骤中可以将确定磁盘文件系统的文件是否完整的结果上报给服务器,服务器就可以获知被监控设备的磁盘文件系统是否完整,并可以进一步采取措施。例如若服务器获知被监控设备的磁盘文件系统不完整,则可以下发针对该磁盘文件系统的更新。
在207中,在磁盘文件系统更新后,获取磁盘文件系统的元数据。
当服务器下发针对磁盘文件系统的更新(包括升级)使得磁盘文件系统更新后,或者人为触发磁盘文件系统更新或者在操作系统升级过程中磁盘文件系统进行更新后,可以采集磁盘文件系统的元数据并传入可信执行环境。
在208中,在可信执行环境中对步骤207获取的元数据进行哈希处理,利用得到的哈希值替换已存储的该磁盘文件系统对应的哈希值。
在磁盘文件系统更新后,磁盘文件可能会发生变化(该变化是合法的),相应地,元数据也会发生变化,那么就需要在本步骤中重新计算元数据的哈希值,利用得到的哈希值替换已存储的该磁盘文件系统对应的哈希值,即以该哈希值作为后续运行过程中验证文件完整性的依据。
在209中,将可信执行环境的执行结果上传至服务器。
在本步骤中,可以将升级后对该磁盘文件系统对应的哈希值替换成功与否的结果上报给服务器,服务器可以获知被监控设备磁盘文件系统的当前状态,并确定是否执行进一步操作。例如如果升级失败,则服务器可以重新针对该磁盘文件系统下发更新。
另外,除了将各阶段可信执行环境的执行结果上传至服务器之外,还可以将执行结果展现给用户。例如在执行结果为存储失败、磁盘文件系统不完整或升级失败时,可以向用户进行告警。
后续在磁盘文件系统运行过程中,转至执行步骤204。
作为本申请的一个实施方式,图2对应流程的步骤202、步骤205、步骤208中,对磁盘文件系统的元数据进行了哈希处理,以提高元数据的安全性。作为本申请的其他实施方式,步骤202、步骤205、步骤208中的全部或部分步骤,可以不对磁盘文件系统的元数据执行哈希处理,而直接对元数据执行相应的保存、对比过程。
作为本申请的一个实施方式,图2对应流程的步骤202、步骤205、步骤208是在可信执行环境中进行,以提高各执行过程的安全性。作为本申请的其他实施方式,步骤202、步骤205、步骤208涉及的全部或部分执行过程也可以在普通系统环境下执行。
图4为本发明实施例提供的针对内存文件系统的方法流程图,对于内存文件系统而言,主要涉及两个阶段:文件系统初始化和文件系统的运行阶过程,针对这两种阶段如图4所示,可以具体包括以下步骤:
在401中,在内存文件系统初始化时,获取内存文件系统元数据。
不同于磁盘文件系统,本步骤是指内存文件系统每次启动时(通常由操作系统的启动引起)对内存文件系统的初始化流程,包括内存系统文件的解压缩和挂载两部分。在内存系统文件挂载结束后,采集内存文件系统元数据。
在402中,在可信执行环境中对获取的元数据进行哈希处理,若尚未存储该内存文件系统对应的哈希值,则存储该哈希值;若已经存储有该内存文件系统对应的哈希值,则利用哈希处理得到的哈希值替换已存储的该内存文件系统对应的哈希值。
本步骤的处理不同于磁盘文件系统,内存文件系统在每次操作系统启动时,都会对元数据进行哈希处理并重新写入哈希值。
在403中,将可信执行环境的执行结果上传至服务器。
在本步骤中,可以将可信执行环境中哈希处理和哈希值的存储成功与否的结果上传至服务器,使得服务器获知该被监控设备的磁盘文件系统开始被监控,且目前处于正常状态。若存储不成功,则服务器可以进行相关告警功能,通知服务人员对被监控设备进行处理,或者服务器也可以针对被监控设备下发针对该内存文件系统的更新。
在404中,在内存文件系统运行过程中,采用轮询的方式或事件触发的方式获取内存文件系统元数据。
内存文件系统在运行过程中不会发生变化,除非重新启动,因此在运行过程中可以采用轮询的方式或事件触发的方式采集内存文件系统元数据,以进行内存文件的完整性监控。其中上述的事件可以是由服务器端产生的触发事件,也可以是由人为产生的触发事件,具体可以根据具体应用场景或需求进行配置。
在405中,在可信执行环境中对步骤404获取的元数据进行哈希处理,将得到的哈希值与已存储的该内存文件系统对应的哈希值进行比对,依据比对结果确定该内存文件系统的文件完整性。
同样,将元数据传入可信执行环境,在可信执行环境中进行对元数据的哈希处理以及哈希值的比对,若得到的哈希值与已存储的该内存文件系统对应的哈希值一致,则可以确定该内存文件系统的文件完整,否则可以确定该内存文件系统的文件不完整。
在406中,将可信执行环境的执行结果上传至服务器。
本步骤中可以将确定内存文件系统的文件是否完整的结果上报给服务器,服务器就可以获知被监控设备的内存文件系统是否完整,并可以进一步采取措施。例如若服务器获知被监控设备的内存文件系统不完整,则可以下发针对该内存文件系统的更新,使内存文件系统更新后重新启动。
作为本申请的一个实施方式,图4对应流程的步骤402、步骤405中,对内存文件系统的元数据进行了哈希处理,以提高元数据的安全性。作为本申请的其他实施方式,步骤402、步骤405中的全部或部分步骤,可以不对内存文件系统的元数据执行哈希处理,而直接对元数据执行相应的保存、对比过程。
作为本申请的一个实施方式,图4对应流程的步骤402、步骤405是在可信执行环境中进行,以提高各执行过程的安全性。作为本申请的其他实施方式,步骤402、步骤405涉及的全部或部分执行过程也可以在普通系统环境下执行。
以上是对本发明提供的方法进行的描述,下面结合实施例对本发明提供的装置进行详细描述。图5为本发明实施例提供的装置结构图,如图5中所示,该装置可以包括:元数据获取单元01、元数据执行单元10和结果接收单元02,还可以进一步包括结果上报单元03,各组成单元的主要功能如下:
元数据获取单元01负责在文件系统初始化时以及在文件系统运行过程中,获取文件系统元数据,并提供给元数据执行单元10。其中,文件系统元数据可以包括:超级块和块组描述符。
元数据执行单元10在文件系统初始化时,对接收到的元数据进行存储;优选地,对接收到的元数据进行哈希处理并存储哈希值。
元数据执行单元10在文件系统运行过程中,将接收到的元数据与已存储的元数据进行比对,确定该文件系统的文件完整性。优选地,对接收到的元数据进行哈希处理,将得到的哈希值与已存储的哈希值进行比对,确定该文件系统的文件完整性;具体地,若得到的哈希值与已存储的哈希值一致,则确定该文件系统的文件完整,否则确定该文件系统的文件不完整。其中元数据执行单元10采用的哈希处理方式可以包括但不限于MD4、MD5、SHA-1等。
元数据执行单元10将执行结果发送给结果接收单元02。结果接收单元02接收元数据执行单元10的执行结果。
其中,上述的文件系统可以包括磁盘文件系统或内存文件系统。
若文件系统为磁盘文件系统,则上述的文件系统初始化可以包括:被监控设备被激活或第一次开机时执行的初始化。若文件系统为内存文件系统,则上述的文件系统初始化可以包括:被监控设备的操作系统每次启动时执行的初始化。
若文件系统为磁盘文件系统,则元数据获取单元01还可以在文件系统更新后,获取文件系统元数据并提供给元数据执行单元10。元数据执行单元10在文件系统更新后,利用接收到的元数据替换已存储的元数据。优选地,可以对接收到的元数据进行哈希处理,并利用哈希处理得到的哈希值替换已存储的哈希值。
若文件系统为内存文件系统,则元数据执行单元10在文件系统初始化时执行的存储元数据,包括:若尚未存储该内存文件系统的元数据,则存储接收到的元数据;若已存储有该内存文件系统的元数据,则利用接收到元数据替换已存储的元数据。
优选地,若尚未存储该内存文件系统对应的哈希值,则存储哈希值;若已存储有该内存文件系统对应的哈希值,则利用哈希处理得到的哈希值替换已存储的哈希值。
上述的元数据获取单元10可以采用轮询或者事件触发的方式,执行获取文件系统元数据。
结果上报单元03将结果接收单元02接收到的执行结果上传至服务器。在初始化阶段的执行结果为哈希处理和哈希值的存储成功与否的结果,如果存储成功,则服务器可以获知该被监控设备的该文件系统开始被监控,且目前处于正常状态。若存储不成功,则服务器可以进行相关告警功能,通知服务人员对被监控设备进行处理,或者服务器也可以针对被监控设备下发针对该文件系统的更新。在运行阶段的执行结果为比对结果,也就是文件系统是否完整的结果,服务器就可以获知被监控设备的磁盘文件系统是否完整,并可以进一步采取措施。例如若服务器获知被监控设备的该文件系统不完整,则可以下发针对该文件系统的更新。
上述的元数据获取单元01、结果接收单元02和结果上报单元03可以设置于常规环境,用于在常规环境中执行操作,元数据执行单元10设置于可信执行环境,用于在可信执行环境中执行操作。具体地,元数据执行单元10可以是利用诸如ARM TrustZone或TI M-Shield等机制在硬件上隔离出的安全区域,通常体现为一个可信芯片,或者,是利用虚拟化机制隔离出的安全模块。无论采用哪种方式,目的是为了提供一个可信执行环境来进行哈希处理、哈希值的存储和比对,从而保证可信执行环境中的数据不被篡改。
图6为本发明实施例提供的一种在初始化阶段以及更新阶段的示意图,如图6中所示,操作系统内核工作于常规环境,操作系统内核中的Collect线程负责获取元数据,然后通过硬件抽象层提供给可信芯片的硬件抽象层。并进一步由可信芯片的硬件抽象层提供给可信执行环境中的处理器负责执行对元数据进行哈希处理、存储至可信执行环境的存储单元以及执行结果的反馈。操作系统内核中的反馈模块负责接收可信芯片的执行结果,并通过云服务模块上传至服务器。
图7为本发明实施例提供的一种在运行阶段的示意图,如图7中所示,操作系统内核工作于常规环境,操作系统内核中的Monitor线程负责获取元数据,然后通过硬件抽象层提供给可信芯片的硬件抽象层。并进一步由可信芯片的硬件抽象层提供给可信执行环境中的处理器负责执行对元数据进行哈希处理、存储至可信执行环境的存储单元、比对以及执行结果的反馈。操作系统内核中的反馈模块负责接收可信芯片的执行结果,并通过云服务模块上传至服务器。
本发明实施例中所涉及的被监控设备可以是任意的用户设备,包括但不限于诸如:智能移动终端、智能家电设备、网络设备、可穿戴式设备、智能医疗设备、PC(个人计算机)等。其中智能移动设备可以包括诸如手机、平板电脑、笔记本电脑、PDA(个人数字助理)等。智能家电设备可以包括诸如智能电视、智能空调、智能热水器、智能冰箱、智能空气净化器等等。网络设备可以包括诸如交换机、无线AP、服务器等。可穿戴式设备可以包括诸如智能手表、智能眼镜、智能手环等等。智能医疗设备可以包括诸如智能体温计、智能血压仪、智能血糖仪等等。
特别地,诸如可以应用于互联网汽车中的中央控制装置、智能导航装置等搭载了移动操作系统的装置,也可以应用于具有可信芯片的智能手表等。
本发明实施例提供的上述方法和装置可以以设置并运行于设备中的计算机程序体现。该设备可以包括一个或多个处理器,还包括存储器和一个或多个程序,如图8中所示。其中该一个或多个程序存储于存储器中,被上述一个或多个处理器执行以实现本发明上述实施例中所示的方法流程和/或装置操作。例如,被上述一个或多个处理器执行的方法流程,可以包括:
在文件系统初始化时,获取并存储文件系统元数据;
在文件系统运行过程中,获取文件系统元数据,将获取的系统文件元数据与已存储的系统文件元数据进行比对,依据比对结果确定该文件系统的文件完整性。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (27)

1.一种监控系统文件完整性的方法,其特征在于,该方法包括:
在文件系统初始化时,获取并存储文件系统元数据;
在文件系统运行过程中,获取文件系统元数据,将获取的系统文件元数据与已存储的系统文件元数据进行比对,依据比对结果确定该文件系统的文件完整性。
2.根据权利要求1所述的方法,其特征在于,所述存储文件系统元数据和所述将获取的系统文件元数据与已存储的系统文件元数据进行比对在可信执行环境中执行。
3.根据权利要求1或2所述的方法,其特征在于,所述存储文件系统元数据包括:对获取的系统文件元数据进行哈希处理并存储哈希值;
所述将获取的系统文件元数据与已存储的系统文件元数据进行比对包括:对获取的系统文件元数据进行哈希处理,将得到的哈希值与已存储的哈希值进行比对。
4.根据权利要求1所述的方法,其特征在于,所述文件系统包括磁盘文件系统或内存文件系统。
5.根据权利要求4所述的方法,其特征在于,若所述文件系统为磁盘文件系统,则所述文件系统初始化包括:被监控设备被激活或第一次开机启动所述被监控设备时执行的初始化。
6.根据权利要求4所述的方法,其特征在于,若所述文件系统为内存文件系统,则所述文件系统初始化包括:被监控设备的操作系统每次启动时执行的初始化。
7.根据权利要求4所述的方法,其特征在于,若所述文件系统为磁盘文件系统,则该方法还包括:
在文件系统更新后,获取文件系统元数据,利用获取的系统文件元数据替换已存储的系统文件元数据。
8.根据权利要求4所述的方法,其特征在于,若所述文件系统为内存文件系统,则在文件系统初始化时,所述存储文件系统元数据包括:
若尚未存储该内存文件系统元数据,则存储该内存文件系统元数据;
若已存储有该内存文件系统元数据,则利用获取的系统文件元数据替换已存储的系统文件元数据。
9.根据权利要求1、2、4至8任一权项所述的方法,其特征在于,所述文件系统元数据包括:
超级块和块组描述符。
10.根据权利要求2所述的方法,其特征在于,所述可信执行环境包括:
可信芯片,或者,
利用虚拟化机制隔离出的安全环境。
11.根据权利要求1、2、4至8任一权项所述的方法,其特征在于,采用轮询或者事件触发的方式,执行所述获取文件系统元数据。
12.根据权利要求1、2、4至8任一权项所述的方法,其特征在于,所述依据比对结果确定该文件系统的文件完整性包括:
若获取的系统文件元数据与已存储的系统文件元数据一致,则确定该文件系统的文件完整,否则确定该文件系统的文件不完整。
13.根据权利要求1、2、4至8任一权项所述的方法,其特征在于,该方法还包括:
将对获取的系统文件元数据的执行结果上传至服务器。
14.一种监控系统文件完整性的装置,其特征在于,该装置包括:元数据获取单元、元数据执行单元和结果接收单元;
所述元数据获取单元,用于在文件系统初始化时以及在文件系统运行过程中,获取文件系统元数据,并提供给所述元数据执行单元;
所述元数据执行单元,用于在文件系统初始化时,对接收到的元数据进行存储;在文件系统运行过程中,将接收到的元数据与已存储的元数据进行比对,确定该文件系统的文件完整性;还用于将执行结果发送给所述结果接收单元;
所述结果接收单元,用于接收所述元数据执行单元的执行结果。
15.根据权利要求14所述的装置,其特征在于,所述元数据执行单元位于可信执行环境中。
16.根据权利要求14或15所述的装置,其特征在于,所述元数据执行单元,具体用于:在文件系统初始化时,对接收到的元数据进行哈希处理并存储哈希值;在文件系统运行过程中,对接收到的元数据进行哈希处理,将得到的哈希值与已存储的哈希值进行比对。
17.根据权利要求14所述的装置,其特征在于,所述文件系统包括磁盘文件系统或内存文件系统。
18.根据权利要求17所述的装置,其特征在于,若所述文件系统为磁盘文件系统,则所述文件系统初始化包括:被监控设备被激活或第一次开机启动所述被监控设备时执行的初始化。
19.根据权利要求17所述的装置,其特征在于,若所述文件系统为内存文件系统,则所述文件系统初始化包括:被监控设备的操作系统每次启动时执行的初始化。
20.根据权利要求17所述的装置,其特征在于,若所述文件系统为磁盘文件系统,则所述元数据获取单元,还用于在文件系统更新后,获取文件系统元数据并提供给所述元数据执行单元;
所述元数据执行单元,还用于在文件系统更新后,利用接收到的元数据替换已存储的元数据。
21.根据权利要求17所述的装置,其特征在于,若所述文件系统为内存文件系统,则所述元数据执行单元在文件系统初始化时执行的所述对接收到的元数据进行存储,包括:
若尚未存储该内存文件系统的元数据,则存储接收到的元数据;
若已存储有该内存文件系统的元数据,则利用接收到的元数据替换已存储的元数据。
22.根据权利要求14、15、17至21任一权项所述的装置,其特征在于,所述文件系统元数据包括:
超级块和块组描述符。
23.根据权利要求15所述的装置,其特征在于,所述元数据执行单元包括:
可信芯片,或者,
利用虚拟化机制隔离出的安全模块。
24.根据权利要求14、15、17至21任一权项所述的装置,其特征在于,所述元数据获取单元采用轮询或者事件触发的方式,执行所述获取文件系统元数据。
25.根据权利要求14、15、17至21任一权项所述的装置,其特征在于,所述元数据执行单元在确定该文件系统的文件完整性时,具体执行:
若接收到的元数据与已存储的元数据一致,则确定该文件系统的文件完整,否则确定该文件系统的文件不完整。
26.根据权利要求14、15、17至21任一权项所述的装置,其特征在于,该装置还包括:
结果上报单元,用于将所述结果接收单元接收到的执行结果上传至服务器。
27.一种设备,包括
一个或者多个处理器;
存储器;
一个或者多个程序,所述一个或者多个程序存储在所述存储器中,被所述一个或者多个处理器执行以实现如下操作:
在文件系统初始化时,获取并存储文件系统元数据;
在文件系统运行过程中,获取文件系统元数据,将获取的系统文件元数据与已存储的系统文件元数据进行比对,依据比对结果确定该文件系统的文件完整性。
CN201610056252.5A 2016-01-27 2016-01-27 一种监控系统文件完整性的方法、装置和设备 Pending CN107015982A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610056252.5A CN107015982A (zh) 2016-01-27 2016-01-27 一种监控系统文件完整性的方法、装置和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610056252.5A CN107015982A (zh) 2016-01-27 2016-01-27 一种监控系统文件完整性的方法、装置和设备

Publications (1)

Publication Number Publication Date
CN107015982A true CN107015982A (zh) 2017-08-04

Family

ID=59438770

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610056252.5A Pending CN107015982A (zh) 2016-01-27 2016-01-27 一种监控系统文件完整性的方法、装置和设备

Country Status (1)

Country Link
CN (1) CN107015982A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107480562A (zh) * 2017-08-18 2017-12-15 郑州云海信息技术有限公司 一种磁盘管理方法及装置
CN108829492A (zh) * 2018-06-20 2018-11-16 郑州云海信息技术有限公司 一种虚拟机镜像的检测方法及装置
CN110677388A (zh) * 2019-09-03 2020-01-10 东南大学 一种基于TrustZone的物联网终端进程完整性度量方法
CN111797063A (zh) * 2020-06-28 2020-10-20 中孚信息股份有限公司 一种流式数据处理方法与系统
CN112199682A (zh) * 2020-11-03 2021-01-08 上海思赞博微信息科技有限公司 一种基于可信计算的白名单库文件保护方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976322A (zh) * 2010-11-11 2011-02-16 清华大学 基于一种完整性校验的安全元数据管理方法
CN102014133A (zh) * 2010-11-26 2011-04-13 清华大学 在云存储环境下一种安全存储系统的实现方法
US20110099462A1 (en) * 2009-10-28 2011-04-28 Metaglue Corporation Content Integrity Management System
CN103136243A (zh) * 2011-11-29 2013-06-05 中国电信股份有限公司 基于云存储的文件系统去重方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110099462A1 (en) * 2009-10-28 2011-04-28 Metaglue Corporation Content Integrity Management System
CN101976322A (zh) * 2010-11-11 2011-02-16 清华大学 基于一种完整性校验的安全元数据管理方法
CN102014133A (zh) * 2010-11-26 2011-04-13 清华大学 在云存储环境下一种安全存储系统的实现方法
CN103136243A (zh) * 2011-11-29 2013-06-05 中国电信股份有限公司 基于云存储的文件系统去重方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DANIELP.BOVET,MARCOCESATI著: "《深入理解LINUX内核 第3版》", 30 September 2007 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107480562A (zh) * 2017-08-18 2017-12-15 郑州云海信息技术有限公司 一种磁盘管理方法及装置
CN108829492A (zh) * 2018-06-20 2018-11-16 郑州云海信息技术有限公司 一种虚拟机镜像的检测方法及装置
CN110677388A (zh) * 2019-09-03 2020-01-10 东南大学 一种基于TrustZone的物联网终端进程完整性度量方法
CN111797063A (zh) * 2020-06-28 2020-10-20 中孚信息股份有限公司 一种流式数据处理方法与系统
CN112199682A (zh) * 2020-11-03 2021-01-08 上海思赞博微信息科技有限公司 一种基于可信计算的白名单库文件保护方法
CN112199682B (zh) * 2020-11-03 2022-08-02 上海思赞博微信息科技有限公司 一种基于可信计算的白名单库文件保护方法

Similar Documents

Publication Publication Date Title
US9436556B2 (en) Customizable storage system for virtual databases
US20230105500A1 (en) Anomaly and ransomware detection
US11846980B2 (en) Real-time detection of system threats
US20210044604A1 (en) Anomaly and ransomware detection
CN107015982A (zh) 一种监控系统文件完整性的方法、装置和设备
US11513917B2 (en) Streaming database recovery using cluster live mounts
US20210034398A1 (en) Streaming database cloning using cluster live mounts
US11449607B2 (en) Anomaly and ransomware detection
US11366721B2 (en) Adaptive throttling in a universal backup host
US11709932B2 (en) Realtime detection of ransomware
US11640461B2 (en) Secure runtime for virtual machines
US20210034471A1 (en) Streaming database backup using cluster live mounts
US11238152B2 (en) Data correlation using file object cache
US9734156B1 (en) Systems and methods for leveraging data-deduplication capabilities of file systems
US9749193B1 (en) Rule-based systems for outcome-based data protection
US20230078496A1 (en) Data correlation using file object cache
US9002798B1 (en) Systems and methods for remedying corrupt backup images of host devices
US11550901B2 (en) Real-time detection of misuse of system credentials
US20230177157A1 (en) Malware protection for virtual machines
CN108647118B (zh) 基于存储集群的副本异常恢复方法、装置及计算机设备
US11616805B2 (en) Malware protection for virtual machines
CN106991020B (zh) 对图像级备份的文件系统对象的有效处理
US20220245245A1 (en) Unmasking ransomware attacks
US20210232682A1 (en) Malware protection for virtual machines
US9830471B1 (en) Outcome-based data protection using multiple data protection systems

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1240368

Country of ref document: HK

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201127

Address after: Room 603, 6 / F, Roche Plaza, 788 Cheung Sha Wan Road, Kowloon, China

Applicant after: Zebra smart travel network (Hong Kong) Limited

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170804