实时预警应用程序文件被篡改的方法、系统、设备及介质与流程

文档序号:30583619发布日期:2022-06-29 13:59阅读:136来源:国知局
实时预警应用程序文件被篡改的方法、系统、设备及介质与流程

1.本发明属于计算机安全技术领域,更具体地,涉及一种实时预警应用 程序文件被篡改的方法、系统、设备及介质。


背景技术:

2.目前,对于重要网络的安全防护要求逐步提升,尤其是针对各应用服 务和网站的后台网页、应用程序进行远程攻击后,对相关内容进行篡改后 会给运营商、服务商和社会带来很大的危害。
3.现有的一种应用程序防篡改的检测方法为:首先,从ca认证机构申请 数字证书,并将其加入到ca认证机构发布的数字证书库;然后,进行软件 安装包的数字签名验证,在安装目录下对数字签名验证不通过或没有数字 签名的可执行文件和库文件用自己的数字证书进行数字签名,在程序运行 过程中对要加载运行的文件进行实时数字签名验证,只有通过数字签名验 证的文件才允许加载运行。该方法需要ca认证机构获取数字证书,且需要 三次签名验证,方法较为复杂。
4.现有的另一种应用程序防篡改的检测方法为:接收由应用程序发送的 验证请求;查询存储于共享钥匙串组内与应用程序目标开发者对应的目标 身份信息;对当前身份信息与目标身份信息执行一致性比对;基于一致性 比对结果,确认应用程序的篡改结果,通过验证应用程序开发者的当前身 份信息,判断应用程序是否被二次发布,避免应用程序被篡改。该方法只 能够在应用程序主动发送的验证请求时才启动身份信息验证流程,若应用 程序被篡改后无法发送验证请求,则无法启动验证流程,因此无法保证被 篡改的应用程序不被启动,存在安全隐患。


技术实现要素:

5.本发明的目的是提出一种实时预警应用程序文件被篡改的方法、系统、 设备及介质,实现实时有效的对应用程序文件进行监控及预警处理,增加 系统运行安全性,防止后台应用程序文件被篡改后继续运行。
6.第一方面,本发明提出了一种实时预警应用程序文件被篡改的方法, 包括:
7.配置应用程序的不同源文件的路径信息、不同源文件的监控频率策略 以及预警处理策略;
8.计算所述应用程序的各源文件的初始哈希值,并将所述初始哈希值写 入专属保护文件;
9.在所述应用程序运行时,对于不同的源文件多线程执行以下步骤:
10.步骤s1:根据所述路径信息获取所述应用程序的源文件;
11.步骤s2:计算所述源文件的当前哈希值;
12.步骤s3:从所述专属保护文件中获取对应的所述初始哈希值,并比对 所述当前哈希值与所述初始哈希值是否一致,若不一致,则根据所述预警 处理策略进行预警;
13.步骤s4:根据所述扫描频策略次定期执行步骤s1-s3。
14.可选地,所述应用程序的源文件包括核心程序文件、第一非核心程序 文件和第二非核心程序文件,所述第一非核心程序文件的字节数小于所述 第二非核心程序文件的字节数;
15.配置对不同源文件的监控频率策略包括:
16.配置所述核心程序文件的监控频率为f0,所述第一非核心程序文件的 监控频率为f1,所述第二非核心程序文件的监控频率为f2,其中,f0》f1》f2。
17.可选地,所述预警处理策略包括:
18.若比对所述当前哈希值与所述初始哈希值一致,则不做任何处理;
19.若比对所述当前哈希值与所述初始哈希值不一致,则推送预警邮件、 发送预警短信或紧急停止所述应用程序运行。
20.可选地,还包括:
21.监测所述应用程序是否更新,若更新,则重新计算所述应用程序的源 文件的初始哈希值,并对所述专属保护文件中的所述初始哈希值进行更新。
22.可选地,在所述步骤s3中,从所述专属保护文件中获取对应的所述初 始哈希值包括:
23.通过专属权限验证的方式从所述专属保护文件中获取对应的所述初始 哈希值。
24.可选地,所述专属权限验证的方式包括签名验证、用户名密码验证。
25.可选地,通过md5哈希算法计算所述源文件的所述初始哈希值和所述 当前哈希值。
26.第二方面,本发明提出一种实时预警后台服务应用程序文件被篡改的 系统,包括监控策略配置模块和运行安全监控模块;
27.所述监控策略配置模块用于:配置所述应用程序的不同源文件的路径 信息、对不同源文件的监控频率以及预警处理策略;
28.所述运行安全监控模块用于:
29.计算所述应用程序的各源文件的初始哈希值,并将所述初始哈希值写 入专属保护文件;
30.在所述应用程序运行时,针对不同的源文件多线程执行以下步骤:
31.步骤s1:根据所述路径信息获取所述应用程序的源文件;
32.步骤s2:计算所述源文件的当前哈希值;
33.步骤s3:从所述专属保护文件中获取对应的所述初始哈希值,并比对 所述当前哈希值与所述初始哈希值是否一致,若不一致,则根据所述预警 处理策略进行预警;
34.步骤s4:根据所述监控频率定期执行步骤s1-s3。
35.第三方面,本发明提出一种电子设备,所述电子设备包括:
36.至少一个处理器;以及,
37.与所述至少一个处理器通信连接的存储器;其中,
38.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被 所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所 述的实时预警应用程序文件被篡改的方法。
39.第四方面,本发明提出一种非暂态计算机可读存储介质,该非暂态计 算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行第一 方面所述的实时预警应用程序文件被篡改的方法。
40.本发明的有益效果在于:
41.通过配置应用程序的不同源文件的路径信息、不同源文件的监控频率 策略以及预警处理策略;计算所述应用程序的各源文件的初始哈希值,并 将所述初始哈希值写入专属保护文件;在所述应用程序运行时,对于不同 的源文件按照配置的监控频率多线程执行当前哈希值与初始哈希值的比对, 若比对不一致则根据所述预警处理策略进行预警,实现了对应用程序的有 效实时监控及预警处理,增加了系统运行安全性,防止后台应用程序文件 被篡改后继续运行,通过专属的安全监控程序和保护文件,保障应用程序 源文件哈希值的安全,解决了应用系统后台程序文件发生篡改后,缺乏实 时预警或紧急处理的问题,有效的保障了应用的系统的安全运行。
42.进一步地,本发明能够根据实际应用程序文件的情况,灵活配置策略, 不同受监控应用程序文件类型可配置不同监控频率,预警机制等,同时兼 顾监控效果和应用性能。
43.本发明的系统具有其它的特性和优点,这些特性和优点从并入本文中 的附图和随后的具体实施方式中将是显而易见的,或者将在并入本文中的 附图和随后的具体实施方式中进行详细陈述,这些附图和具体实施方式共 同用于解释本发明的特定原理。
附图说明
44.通过结合附图对本发明示例性实施例进行更详细的描述,本发明的上 述以及其它目的、特征和优势将变得更加明显,在本发明示例性实施例中, 相同的参考标号通常代表相同部件。
45.图1示出了根据本发明实施例1的一种实时预警应用程序文件被篡改 的方法的步骤图。
46.具体实施方式
47.下面将参照附图更详细地描述本发明。虽然附图中显示了本发明的优 选实施例,然而应该理解,可以以各种形式实现本发明而不应被这里阐述 的实施例所限制。相反,提供这些实施例是为了使本发明更加透彻和完整, 并且能够将本发明的范围完整地传达给本领域的技术人员。
48.实施例1
49.图1示出了根据本发明的一种实时预警应用程序文件被篡改的方法的 步骤图。
50.如图1所示,一种实时预警应用程序文件被篡改的方法,包括:
51.步骤s101:配置应用程序的不同源文件的路径信息、不同源文件的监 控频率策略以及预警处理策略;
52.步骤s102:计算应用程序的各源文件的初始哈希值,并将初始哈希值 写入专属保护文件;
53.步骤s103:在应用程序运行时,对于不同的源文件多线程执行以下步 骤:
54.步骤s201:根据路径信息获取应用程序的源文件;
55.步骤s202:计算源文件的当前哈希值;
56.步骤s203:从专属保护文件中获取对应的初始哈希值,并比对当前哈 希值与初始哈希值是否一致,若不一致,则根据预警处理策略进行预警;
57.步骤s204:根据扫描频策略次定期执行步骤s201-s203。
58.其中,优选地,通过md5哈希算法计算源文件的初始哈希值和当前哈 希值。
59.本实施例中,应用程序的源文件为应用运行的源代码文件,应用程序 的源文件包括核心程序文件、第一非核心程序文件和第二非核心程序文件, 第一非核心程序文件的字节数小于第二非核心程序文件的字节数;
60.在步骤s101中,配置对不同源文件的监控频率策略包括:
61.配置核心程序文件的监控频率为f0,第一非核心程序文件的监控频率 为f1,第二非核心程序文件的监控频率为f2,其中,优选地,f0》f1》f2。
62.具体地,应用程序的源文件包括高安全级别的核心程序文件和低安全 级别的非核心文件,其中非核心文件可以分为非核心小文件(第一非核心 程序文件)和非核心大文件(第二非核心程序文件),为了有效保证系统的 性能,可以根据不同源文件的类型配置不同监控频率,将核心程序文件的 哈希值监控比对频率设置为高频率,非核心小文件的哈希值监控比对频率 设置为中频率,非核心大文件的哈希值监控比对频率设置为低频率,具体 地监控比对频率值的大小根据实际需求设置。
63.本实施例中,步骤s203中的预警处理策略包括:
64.若比对当前哈希值与初始哈希值一致,则不做任何处理;
65.若比对当前哈希值与初始哈希值不一致,则推送预警邮件、发送预警 短信或紧急停止应用程序运行。
66.具体地,根据实际应用程序源文件的情况灵活配置策略,不同受监控 应用程序文件类型配置不同监控频率,预警处理机制等,能够同时兼顾监 控效果和应用性能。
67.本实施例中,还包括:
68.步骤s104:监测应用程序是否更新,若更新,则重新计算应用程序的 源文件的初始哈希值,并对专属保护文件中的初始哈希值进行更新。
69.本实施例中,在步骤s203中,从专属保护文件中获取对应的初始哈希 值包括:
70.通过专属权限验证的方式从专属保护文件中获取对应的初始哈希值, 专属权限验证的方式可以包括签名验证、用户名密码验证等。
71.具体地,通过专属权限的安全监控程序及保护文件,保障应用程序源 文件哈希值的安全。需要说明的是,将源文件的初始哈希值写入专属保护 文件的同时也将该源文件对应的路径信息同时写入专属保护文件,路径信 息与初始哈希值关联存储,在监控比对哈希值的过程时,可以通过路径信 息匹配找到被监控的源文件对应的初始哈希值,进而实现当前哈希值与对 应初始哈希值的比对。
72.实施例2
73.本实施例提出一种实时预警后台服务应用程序文件被篡改的系统,包 括监控策略配置模块和运行安全监控模块;
74.监控策略配置模块用于:配置应用程序的不同源文件的路径信息、对 不同源文件
的监控频率以及预警处理策略,并生成策略文件;
75.运行安全监控模块用于:
76.计算应用程序的各源文件的初始哈希值,并将初始哈希值写入专属保 护文件;
77.并在应用程序运行时,针对不同的源文件多线程执行以下步骤:
78.步骤s1:根据策略文件中的路径信息获取应用程序的源文件;
79.步骤s2:计算源文件的当前哈希值;
80.步骤s3:从专属保护文件中获取对应的初始哈希值,并比对当前哈希 值与初始哈希值是否一致,若不一致,则根据策略文件中对应的预警处理 策略进行预警;
81.步骤s4:根据策略文件中对应的监控频率定期执行步骤s1-s3。
82.本实施例中,还包括更新检测模块,用于监测应用程序是否更新,若 更新,则重新计算应用程序的源文件的初始哈希值,并对专属保护文件中 的初始哈希值进行更新。
83.在一个具体应用示例中,基于python实现本实施例的系统。
84.具体实施过程为:
85.1、使用python语言进行系统功能开发
86.2、基于os模块包执行shell命令获取应用文件属性
87.3、基于sched模块包执行多线程进行实时监控、预警处理
88.4、安全监控模块的权限配置
89.5、后台服务应用程序核心文件的策略配置
90.6、后台服务应用程序核心文件的hash运算
91.7、安全监控模块对核心文件文件hash进行专属权限写入保护文件
92.8、运行安全监控模块,实时扫描比对,保障后台服务应用程序文件防 篡改。
93.实现安全监控模块的一种python代码示例如下:
94.95.[0096][0097]
本实施例的实时预警后台服务应用程序文件被篡改的系统,基于sched 模块执行多线程进行实时监控、预警处理,在保障应用程序文件的安全之 外,还兼顾了性能考虑,各类文件可根据实际安全级别,大小等,可配置 多线程不同频率的实时比对;安全监控模块与被监控应用程序文件不属于 同一服务下,权限独立、配置文件独立,有效的保障了后台应用程序的安 全性,且安全监控程序对比源可随应用程序文件更新,存放在专属权限下 受保护的独立文件中;灵活配置策略,对应用程序文件进行实时监控、实 时,实时预警,根据应用程序文件的核心程度可进行不同处理机制。
[0098]
综上,利用本发明提供的实时预警后台服务应用程序文件被篡改的方 法及系统,具有如下优点:
[0099]
1、可以根据实际应用程序文件的情况,可灵活配置策略,不同受监控 应用程序文件类型可配置不同监控频率,预警机制等,同时兼顾监控效果 和应用性能。
[0100]
2、进行有效的实时监控及预警处理,增加系统运行安全性,防止后台 应用程序文件被篡改后继续运行。
[0101]
3、通过专属的安全监控程序和保护文件,保障应用程序源文件hash 值的安全。
[0102]
通过以上的方法与思路解决了应用系统后台程序文件发生篡改后,缺 乏实时预警或紧急处理的问题,有效的保障了应用的系统的安全运行。
[0103]
实施例3
[0104]
本发明实施例提出一种电子设备,电子设备包括:
[0105]
至少一个处理器;以及,
[0106]
与至少一个处理器通信连接的存储器;其中,
[0107]
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理 器执行,以使至少一个处理器能够执行实施例1的实时预警应用程序文件 被篡改的方法。
[0108]
根据本公开实施例的电子设备包括存储器和处理器,该存储器用于存 储非暂时
性计算机可读指令。具体地,存储器可以包括一个或多个计算机 程序产品,该计算机程序产品可以包括各种形式的计算机可读存储介质, 例如易失性存储器和/或非易失性存储器。该易失性存储器例如可以包括随 机存取存储器(ram)和/或高速缓冲存储器(cache)等。该非易失性存储 器例如可以包括只读存储器(rom)、硬盘、闪存等。
[0109]
该处理器可以是中央处理单元(cpu)或者具有数据处理能力和/或指 令执行能力的其它形式的处理单元,并且可以控制电子设备中的其它组件 以执行期望的功能。在本公开的一个实施例中,该处理器用于运行该存储 器中存储的该计算机可读指令。
[0110]
本领域技术人员应能理解,为了解决如何获得良好用户体验效果的技 术问题,本实施例中也可以包括诸如通信总线、接口等公知的结构,这些 公知的结构也应包含在本公开的保护范围之内。
[0111]
有关本实施例的详细说明可以参考前述各实施例中的相应说明,在此 不再赘述。
[0112]
实施例4
[0113]
本发明实施例提出一种非暂态计算机可读存储介质,该非暂态计算机 可读存储介质存储计算机指令,该计算机指令用于使计算机执行实施例1 的实时预警应用程序文件被篡改的方法。
[0114]
根据本公开实施例的计算机可读存储介质,其上存储有非暂时性计算 机可读指令。当该非暂时性计算机可读指令由处理器运行时,执行前述的 本公开各实施例方法的全部或部分步骤。
[0115]
上述计算机可读存储介质包括但不限于:光存储介质(例如:cd-rom 和dvd)、磁光存储介质(例如:mo)、磁存储介质(例如:磁带或移动 硬盘)、具有内置的可重写非易失性存储器的媒体(例如:存储卡)和具有 内置rom的媒体(例如:rom盒)。
[0116]
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽 性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范 围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更 都是显而易见的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1