CN111062030A - 一种应用程序被篡改的识别方法及装置 - Google Patents

一种应用程序被篡改的识别方法及装置 Download PDF

Info

Publication number
CN111062030A
CN111062030A CN201911291461.8A CN201911291461A CN111062030A CN 111062030 A CN111062030 A CN 111062030A CN 201911291461 A CN201911291461 A CN 201911291461A CN 111062030 A CN111062030 A CN 111062030A
Authority
CN
China
Prior art keywords
application program
identification
identified
content
tampered
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
CN201911291461.8A
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.)
Beijing IQIYI Science and Technology Co Ltd
Original Assignee
Beijing IQIYI Science and Technology Co 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 Beijing IQIYI Science and Technology Co Ltd filed Critical Beijing IQIYI Science and Technology Co Ltd
Priority to CN201911291461.8A priority Critical patent/CN111062030A/zh
Publication of CN111062030A publication Critical patent/CN111062030A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例提供了一种应用程序被篡改的识别方法及装置,该方法通过获取待识别应用程序的指定标识的当前标识内容;从本地已存储的各应用程序的各标识的初始标识内容中,查找待识别应用程序的指定标识的第一初始标识内容;若当前标识内容和第一初始标识内容不一致,则确定待识别应用程序已被篡改,由于指定标识表征的是应用程序是否被编辑的特征,本地存储的待识别应用程序的指定标识的第一初始标识内容保持不变,而待识别应用程序被恶意篡改后,获取到的待识别应用程序的指定标识的当前标识内容一定会发生改变,通过比较当前标识内容和第一初始标识内容是否一致,可快速识别出应用程序是否被恶意篡改,提高了待识别应用程序被篡改的识别效率。

Description

一种应用程序被篡改的识别方法及装置
技术领域
本发明涉及通信技术领域,特别是涉及一种应用程序被篡改的识别方法及装置。
背景技术
随着移动互联网时代的到来,智能手机、平板电脑、POS(Point of Sales,销售点情报管理系统)机等各类移动终端的迅速普及,也引发了各类APP(Application,应用程序)的爆炸式增长。然而无论移动终端属于哪种类型,移动终端中安装的APP都会存在被恶意篡改的现象。之所以存在恶意篡改APP的现象,主要是因为很多APP存在一些漏洞,不法分子利用这些漏洞进行恶意篡改,最终损害了APP开发人员的合法权益,并对APP的信誉、市场利益等都造成了恶劣影响。其中,APP被恶意篡改的方式为:原始APP安装之后,对程序动态注入恶意代码,在程序运行过程中改变程序的运行路径及运行参数。
为了识别应用程序是否被篡改,一般会在服务器本地预先记录应用程序初始的源代码,在接收到应用程序后,对应用程序当前的源代码进行编译,比较编译后的当前源代码与该应用程序的初始源代码,如果不一致,则可以确定该应用程序被篡改。但是,随着应用程序功能的不断扩展,源代码越来越复杂,上述通过源代码进行识别的过程具有较低的识别效率。
发明内容
本发明实施例的目的在于提供一种应用程序被篡改的识别方法及装置,以提高应用程序被篡改的识别效率。具体技术方案如下:
第一方面,本发明实施例提供了一种应用程序被篡改的识别方法,应用于服务器,所述方法包括:
获取待识别应用程序的指定标识的当前标识内容,所述指定标识表征应用程序是否被编辑的特征;
从本地已存储的各应用程序的各标识的初始标识内容中,查找所述待识别应用程序的所述指定标识的第一初始标识内容;
若所述当前标识内容和所述第一初始标识内容不一致,则确定所述待识别应用程序已被篡改。
可选的,所述指定标识包括应用程序发布时生成的版本标识,和/或,对应用程序进行开发时标记的编辑者的标识。
可选的,所述获取待识别应用程序的指定标识的当前标识内容,包括:
接收客户端发送的网络请求,所述网络请求包括加密字段,所述加密字段为对所述指定标识的当前标识内容进行加密的字段。
可选的,在所述从本地已存储的各应用程序的各标识的初始标识内容中,查找所述待识别应用程序的所述指定标识的第一初始标识内容之后,所述方法还包括:
对所述第一初始标识内容进行加密,得到加密数据;
从所述网络请求中,提取所述加密字段;
所述确定所述待识别应用程序已被篡改,包括:
若所述加密数据与所述加密字段不一致,则确定所述待识别应用程序已被篡改。
可选的,在所述确定所述待识别应用程序已被篡改之后,所述方法还包括:
向所述客户端反馈所述待识别应用程序已被篡改的提示信息。
第二方面,本发明实施例提供了一种应用程序被篡改的识别装置,应用于服务器,所述装置包括:
获取模块,用于获取待识别应用程序的指定标识的当前标识内容,所述指定标识表征应用程序是否被编辑的特征;
查找模块,用于从本地已存储的各应用程序的各标识的初始标识内容中,查找所述待识别应用程序的所述指定标识的第一初始标识内容;
识别模块,用于若所述当前标识内容和所述第一初始标识内容不一致,则确定所述待识别应用程序已被篡改。
可选的,所述指定标识包括应用程序发布时生成的版本标识,和/或,对应用程序进行开发时标记的编辑者的标识。
可选的,所述获取模块,具体用于接收客户端发送的网络请求,所述网络请求包括加密字段,所述加密字段为对所述指定标识的当前标识内容进行加密的字段。
可选的,所述装置还包括:
加密模块,用于对所述第一初始标识内容进行加密,得到加密数据;
提取模块,用于从所述网络请求中,提取所述加密字段;
所述识别模块,具体用于若所述加密数据与所述加密字段不一致,则确定所述待识别应用程序已被篡改。
可选的,所述装置还包括:
反馈模块,用于向所述客户端反馈所述待识别应用程序已被篡改的提示信息。
第三方面,本发明实施例提供了一种服务器,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的所述计算机程序时,实现上述第一方面任一所述的应用程序被篡改的识别方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面任一所述的应用程序被篡改的识别方法。
本发明实施例提供的应用程序被篡改的识别方法及装置,应用于服务器,通过获取待识别应用程序的指定标识的当前标识内容;从本地已存储的各应用程序的各标识的初始标识内容中,查找待识别应用程序的指定标识的第一初始标识内容;若当前标识内容和第一初始标识内容不一致,则确定待识别应用程序已被篡改,无需匹配数量庞大的代码,并且,由于指定标识表征的是应用程序是否被编辑的特征,本地存储的待识别应用程序的指定标识的第一初始标识内容保持不变,而待识别应用程序被恶意篡改后,获取到的待识别应用程序的指定标识的当前标识内容一定会发生改变,此时通过比较当前标识内容和第一初始标识内容是否一致,可以快速识别出应用程序是否被恶意篡改,从而提高了待识别应用程序被篡改的识别效率。
当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种应用程序被篡改的识别方法的实施例一的流程示意图;
图2为本发明实施例提供的一种应用程序被篡改的识别方法的实施例二的流程示意图;
图3为本发明实施例提供的一种应用程序被篡改的识别方法的实施例三的流程示意图;
图4为本发明实施例提供的一种应用程序被篡改的识别装置的实施例四结构示意图;
图5为本发明实施例提供的一种应用程序被篡改的识别装置的实施例五的结构示意图;
图6为本发明实施例提供的一种应用程序被篡改的识别装置的实施例六的结构示意图;
图7为本发明实施例的服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了提高应用程序被篡改的识别效率,本发明实施例提供了一种应用程序被篡改的识别方法及装置,以下分别进行详细说明。
图1为本发明实施例提供的一种应用程序被篡改的识别方法的实施例一的流程示意图,如图1所示,本发明实施例的方法可以包括:
S101,获取待识别应用程序的指定标识的当前标识内容,其中,指定标识表征应用程序是否被编辑的特征。
本发明实施例提供的应用程序被篡改的识别方法应用于服务器。本发明实施例提供的应用程序被篡改的识别方法针对的是客户端中安装的应用程序。具体实现时,客户端可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等。
其中,上述待识别应用程序的指定标识可以包括对该应用程序进行编辑的编辑者的标识、二次发布的版本标识、发布时间、占用内存大小等。例如,待识别应用程序为“某短视频”,该应用程序的指定标识为端版本号和发布时间,获取到的当前标识内容为:短版本号“Version 7.0.7”、发布时间“2019年9月25日”。
S102,从本地已存储的各应用程序的各标识的初始标识内容中,查找待识别应用程序的指定标识的第一初始标识内容。
在服务器本地预先存储有每个应用程序的各标识的初始标识内容,例如,针对于“某短视频”应用程序,短版本号的初始标识内容为“Version 1”、编辑者的标识为“AAA”等。上述步骤S102在具体实现时,可以基于待识别应用程序的名称,从本地已存储的多个应用程序的各标识的初始标识内容中,先查找出待识别应用程序的各标识的初始标识内容,再基于指定标识的标识名称,从中查找出第一初始标识内容。
S103,若当前标识内容和第一初始标识内容不一致,则确定待识别应用程序已被篡改。
由于本地存储的待识别应用程序的指定标识程序的第一初始标识内容是始终保持不变的,而待识别应用程序被恶意篡改后,待识别应用程序的指定标识的标识内容一定会发生改变,此时可以通过比较当前标识内容和第一初始标识内容是否一致,快速确定待识别应用程序是否已被恶意篡改。
本发明实施例提供的应用程序被篡改的识别方法,应用于服务器,通过获取待识别应用程序的指定标识的当前标识内容;从本地已存储的各应用程序的各标识的初始标识内容中,查找待识别应用程序的指定标识的第一初始标识内容;若当前标识内容和第一初始标识内容不一致,则确定待识别应用程序已被篡改,无需匹配数量庞大的代码,并且,由于指定标识表征的是应用程序是否被编辑的特征,本地存储的待识别应用程序的指定标识的第一初始标识内容保持不变,而待识别应用程序被恶意篡改后,获取到的待识别应用程序的指定标识的当前标识内容一定会发生改变,此时通过比较当前标识内容和第一初始标识内容是否一致,可以快速识别出应用程序是否被恶意篡改,从而提高了待识别应用程序被篡改的识别效率。
可选的,在上述步骤S103确定待识别应用程序已被篡改之后,上述应用程序被篡改的识别方法还可以包括:向客户端反馈待识别应用程序已被篡改的提示信息。该提示信息可以提示用户该待识别应用程序已被篡改,可以避免用户执行恶意篡改后的应用程序所带来的危害。
可选的,上述应用程序被篡改的识别方法还可以包括:若当前标识内容和第一初始标识内容一致,则确定待识别应用程序未被篡改,并且,服务器向客户端返回待识别应用程序未被篡改的提示信息。
图2为本发明实施例提供的一种应用程序被篡改的识别方法的实施例二的流程示意图,如图2所示,本发明实施例的方法可以包括:
S201,接收客户端发送的网络请求,其中网络请求包括加密字段,加密字段为对指定标识的当前标识内容进行加密的字段。
这里的加密字段可以是采用现有的加密方式对指定标识的当前标识内容加密后得到的。例如,指定标识包括待识别应用程序的重签名的编辑者的标识、二次发布的版本标识、发布时间、占用内存大小。这里的加密字段可以是对这些指定标识的当前标识内容进行拼接,然后采用现有的加密方式对拼接后的字段进行加密得到。经过对网络请求的字段进行设置,可以将加密的数据(即加密字段)携带在网络请求中。
S202,从本地已存储的各应用程序的各标识的初始标识中,查找待识别应用程序的指定标识的第一初始标识内容。
S203,对第一初始标识内容进行加密,得到加密数据,并从网络请求中,提取加密字段。
S204,若加密数据与加密字段不一致,则确定待识别应用程序已被篡改。
客户端在发送网络请求时,将待识别应用程序的指定标识的当前标识内容进行加密,携带在网络请求中发至服务器,可以提高识别应用程序被篡改的安全性能。并且,本发明实施例提供的应用程序被篡改的识别方法,无需匹配数量庞大的代码,由于指定标识表征的是应用程序是否被编辑的特征,本地存储的待识别应用程序的指定标识的第一初始标识内容保持不变,而待识别应用程序被恶意篡改后,获取到的待识别应用程序的指定标识的当前标识内容一定会发生改变,此时通过比较当前标识内容和第一初始标识内容是否一致,可以快速识别出应用程序是否被恶意篡改,从而提高了待识别应用程序被篡改的识别效率。
服务器接收到网络请求后,首先从本地已存储的各应用程序的各标识的初始标识中,查找待识别应用程序的指定标识的第一初始标识内容,例如,待识别应用程序为“某短视频”,查找到编辑者的标识、长版本号和短版本号的初始标识内容,将查找到的指定标识的初始标识内容进行拼接,并对拼接后的数据进行加密,得到加密数据,再从网络请求中提取加密字段,如果初始标识内容和当前标识内容一致,则加密数据与加密字段也会一致,如果初始标识内容和当前标识内容一致,则加密数据与加密字段也会不一致,因此,可以直接通过对比加密数据和加密字段,如果不一致,则说明待识别应用程序已被篡改。
通过本实施例,服务器只会获知本地存储的初始标识内容和客户端发送的加密字段,对于加密字段的具体标识内容并不知晓,也能够对客户端的数据信息起到保护作用,以免有非法人员通过在服务器侧对加密字段解密后对指定标识的标识内容进行篡改,使得本来不合法的应用程序被改为合法的应用程序。
当然,在一种实现方式中,服务器可以采用客户端加密相对应的解密方式,对加密字段进行解密。作为一种可以实现的方式,可以根据预设提取规则,从解密后的数据中读取待识别应用程序的指定标识的当前标识内容。例如,对加密字段解密后得到一个字段,预设提取规则中可以设置“*”特殊字符之后的6位为待识别应用程序的短版本号,预设提取规则中也可以设置解密后的字段的前15位为待识别应用程序的长版本号。
由于对APP进行修改或代码注入后,必须要使用第三方开发者自己持有的开发者证书进行重签名。然而利用客户端在APP签名时,编辑者的标识会随着签名证书发生变化,并且长版本号和短版本号都无法维持原状。因此,具体实现时,上述指定标识可以包括应用程序发布时生成的版本标识,和/或,对应用程序进行开发时标记的编辑者的标识。
下面以一个具体的实现方式为例对本发明实施例提供的应用程序被篡改的识别方法进行说明,图3为本发明实施例提供的一种应用程序被篡改的识别方法的实施例三的流程示意图,如图3所示,本发明实施例的方法可以包括:
S301,客户端从待识别应用程序中的数据载体文件中,识别指定长版本号字段,得到当前长版本号,并识别指定短版本号字段,得到当前短版本号;客户端从待识别应用程序中的开发描述文件中,识别编辑者的标识字段,得到当前编辑者的标识。
作为一种可以实现的方式,客户端可以读取mainBundle(一种数据载体文件),识别CFBundleShortVersionString(指定短版本号字段)获取到当前短版本号,识别CFBundleVersion(指定长版本号字段)获取到当前长版本号,并读取mobileprovision(一种开发描述文件)中的com.apple.developer.team-identifier(编辑者的标识字段),读取到待识别应用程序的签名证书中包含的编辑者的标识,该标识随签名证书一并生成并唯一,使用其他证书对应用程序进行重签名将导致编辑者的标识改变。
S302,客户端对待识别应用程序的当前长版本号、当前短版本号以及当前编辑者的标识进行拼接加密,得到加密字段,并将加密字段携带至网络请求发送至服务器。
S303,服务器从本地已存储的各应用程序的各标识的初始标识内容中,查找待识别应用程序的长版本号、短版本号以及编辑者的标识的初始内容。
S304,对长版本号、短版本号以及编辑者的标识的初始内容进行拼接,并对拼接后的数据进行加密,得到加密数据;从网络请求中,提取加密字段。
S305,服务器判断是否合法。
若是,则执行S306;若否,则执行S307。
这里的合法指的是加密数据和加密字段一致;不合法指的是加密数据和加密字段不一致。
S306,服务器向客户端返回所请求的数据。
S307,服务器向客户端发送错误代码。
这里的错误代码相当于阻断了待识别应用程序的运行,即,当客户端接收到错误代码后,无法正常访问数据。
可见,应用本发明实施例,无需匹配数量庞大的代码,并且,由于指定标识表征的是应用程序是否被编辑的特征,本地存储的待识别应用程序的指定标识的第一初始标识内容保持不变,而待识别应用程序被恶意篡改后,获取到的待识别应用程序的指定标识的当前标识内容一定会发生改变,此时通过比较当前标识内容和第一初始标识内容是否一致,可以快速识别出应用程序是否被恶意篡改,从而提高了待识别应用程序被篡改的识别效率。
相应于上述方法实施例,图4为本发明实施例提供的一种应用程序被篡改的识别装置的实施例四的结构示意图,发明实施例提供的应用程序被篡改的识别装置应用于服务器,如图4所示,该识别装置可以包括:获取模块410、查找模块420以及识别模块430。
获取模块410,用于获取待识别应用程序的指定标识的当前标识内容,其中,指定标识表征应用程序是否被编辑的特征;
查找模块420,用于从本地已存储的各应用程序的各标识的初始标识内容中,查找待识别应用程序的指定标识的第一初始标识内容;
识别模块430,用于若当前标识内容和第一初始标识内容不一致,则确定待识别应用程序已被篡改。
可选的,上述指定标识包括应用程序发布时生成的版本标识,和/或,对应用程序进行开发时标记的编辑者的标识。
本发明实施例提供的应用程序被篡改的识别装置,应用于服务器,通过获取待识别应用程序的指定标识的当前标识内容;从本地已存储的各应用程序的各标识的初始标识内容中,查找待识别应用程序的指定标识的第一初始标识内容;若当前标识内容和第一初始标识内容不一致,则确定待识别应用程序已被篡改,无需匹配数量庞大的代码,并且,由于指定标识表征的是应用程序是否被编辑的特征,本地存储的待识别应用程序的指定标识的第一初始标识内容保持不变,而待识别应用程序被恶意篡改后,获取到的待识别应用程序的指定标识的当前标识内容一定会发生改变,此时通过比较当前标识内容和第一初始标识内容是否一致,可以快速识别出应用程序是否被恶意篡改,从而提高了待识别应用程序被篡改的识别效率。
基于图4所示实施例,图5为本发明实施例提供的一种应用程序被篡改的识别装置的实施例五的结构示意图,该识别装置可以包括:获取模块410、查找模块420、加密模块440、提取模块450以及识别模块430。
获取模块410,用于接收客户端发送的网络请求,其中,网络请求包括加密字段,加密字段为对指定标识的当前标识内容进行加密的字段;
查找模块420,用于从本地已存储的各应用程序的各标识的初始标识内容中,查找待识别应用程序的指定标识的第一初始标识内容;
加密模块440,用于对第一初始标识内容进行加密,得到加密数据;
提取模块450,用于从网络请求中,提取加密字段;
识别模块430,用于若加密数据与加密字段不一致,则确定待识别应用程序已被篡改。
本发明实施例提供的应用程序被篡改的识别装置,客户端在发送网络请求时,将待识别应用程序的指定标识的当前标识内容进行加密,携带在网络请求中发至服务器,可以提高识别应用程序被篡改的安全性能。并且,本发明实施例提供的应用程序被篡改的识别方法,无需匹配数量庞大的代码,由于指定标识表征的是应用程序是否被编辑的特征,本地存储的待识别应用程序的指定标识的第一初始标识内容保持不变,而待识别应用程序被恶意篡改后,获取到的待识别应用程序的指定标识的当前标识内容一定会发生改变,此时通过比较当前标识内容和第一初始标识内容是否一致,可以快速识别出应用程序是否被恶意篡改,从而提高了待识别应用程序被篡改的识别效率。并且,服务器只会获知本地存储的初始标识内容和客户端发送的加密字段,对于加密字段的具体标识内容并不知晓,也能够对客户端的数据信息起到保护作用,以免有非法人员通过在服务器侧对加密字段解密后对指定标识的标识内容进行篡改,使得本来不合法的应用程序被改为合法的应用程序。
基于图4所示实施例,图6为本发明实施例提供的一种应用程序被篡改的识别装置的实施例六的结构示意图,该识别装置可以包括:获取模块410、查找模块420、识别模块430和反馈模块460。
获取模块410,用于获取待识别应用程序的指定标识的当前标识内容,其中,指定标识表征应用程序是否被编辑的特征;
查找模块420,用于从本地已存储的各应用程序的各标识的初始标识内容中,查找待识别应用程序的指定标识的第一初始标识内容;
识别模块430,用于若当前标识内容和第一初始标识内容不一致,则确定待识别应用程序已被篡改;
反馈模块460,用于向客户端反馈待识别应用程序已被篡改的提示信息。
本发明实施例提供的应用程序被篡改的识别装置,通过获取待识别应用程序的指定标识的当前标识内容;从本地已存储的各应用程序的各标识的初始标识内容中,查找待识别应用程序的指定标识的第一初始标识内容;若当前标识内容和第一初始标识内容不一致,则确定待识别应用程序已被篡改,无需匹配数量庞大的代码,并且,由于指定标识表征的是应用程序是否被编辑的特征,本地存储的待识别应用程序的指定标识的第一初始标识内容保持不变,而待识别应用程序被恶意篡改后,获取到的待识别应用程序的指定标识的当前标识内容一定会发生改变,此时通过比较当前标识内容和第一初始标识内容是否一致,可以快速识别出应用程序是否被恶意篡改,从而提高了待识别应用程序被篡改的识别效率。并且,通过向客户端反馈提示信息,可以提示用户该待识别应用程序已被篡改,可以避免用户执行恶意篡改后的应用程序所带来的危害。
本发明实施例还提供了一种服务器,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,存储器703,用于存放计算机程序;处理器701,用于执行存储器703上所存放的计算机程序时,实现如下步骤:
获取待识别应用程序的指定标识的当前标识内容,其中,指定标识表征应用程序是否被编辑的特征;
从本地已存储的各应用程序的各标识的初始标识内容中,查找待识别应用程序的指定标识的第一初始标识内容;
若当前标识内容和第一初始标识内容不一致,则确定待识别应用程序已被篡改。
可选的,上述指定标识包括应用程序发布时生成的版本标识,和/或,对应用程序进行开发时标记的编辑者的标识。
可选的,处理器701在执行上述获取待识别应用程序的指定标识的当前标识内容的步骤时,具体可以实现:接收客户端发送的网络请求,其中,网络请求包括加密字段,加密字段为对指定标识的当前标识内容进行加密的字段。
可选的,处理器701还可以实现:对第一初始标识内容进行加密,得到加密数据;从网络请求中,提取加密字段;
处理器701在执行上述确定所述待识别应用程序已被篡改的步骤时,具体可以实现:若加密数据与加密字段不一致,则确定待识别应用程序已被篡改。
可选的,处理器701还可以实现:向客户端反馈待识别应用程序已被篡改的提示信息。
可见,应用本发明实施例,无需匹配数量庞大的代码,并且,由于指定标识表征的是应用程序是否被编辑的特征,本地存储的待识别应用程序的指定标识的第一初始标识内容保持不变,而待识别应用程序被恶意篡改后,获取到的待识别应用程序的指定标识的当前标识内容一定会发生改变,此时通过比较当前标识内容和第一初始标识内容是否一致,可以快速识别出应用程序是否被恶意篡改,从而提高了待识别应用程序被篡改的识别效率。
上述服务器提到的通信总线可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(Extended Industry Standard Architecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述服务器与其他设备之间的通信。
存储器可以包括RAM(Random Access Memory,随机存取存储器),也可以包括NVM(Non-Volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processor,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一应用程序被篡改的识别方法的步骤。
可见,应用本发明实施例,无需匹配数量庞大的代码,并且,由于指定标识表征的是应用程序是否被编辑的特征,本地存储的待识别应用程序的指定标识的第一初始标识内容保持不变,而待识别应用程序被恶意篡改后,获取到的待识别应用程序的指定标识的当前标识内容一定会发生改变,此时通过比较当前标识内容和第一初始标识内容是否一致,可以快速识别出应用程序是否被恶意篡改,从而提高了待识别应用程序被篡改的识别效率。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、服务器实施例以及计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (12)

1.一种应用程序被篡改的识别方法,其特征在于,应用于服务器,所述方法包括:
获取待识别应用程序的指定标识的当前标识内容,所述指定标识表征应用程序是否被编辑的特征;
从本地已存储的各应用程序的各标识的初始标识内容中,查找所述待识别应用程序的所述指定标识的第一初始标识内容;
若所述当前标识内容和所述第一初始标识内容不一致,则确定所述待识别应用程序已被篡改。
2.根据权利要求1所述的方法,其特征在于,所述指定标识包括应用程序发布时生成的版本标识,和/或,对应用程序进行开发时标记的编辑者的标识。
3.根据权利要求1或2所述的方法,其特征在于,所述获取待识别应用程序的指定标识的当前标识内容,包括:
接收客户端发送的网络请求,所述网络请求包括加密字段,所述加密字段为对所述指定标识的当前标识内容进行加密的字段。
4.根据权利要求3所述的方法,其特征在于,在所述从本地已存储的各应用程序的各标识的初始标识内容中,查找所述待识别应用程序的所述指定标识的第一初始标识内容之后,所述方法还包括:
对所述第一初始标识内容进行加密,得到加密数据;
从所述网络请求中,提取所述加密字段;
所述确定所述待识别应用程序已被篡改,包括:
若所述加密数据与所述加密字段不一致,则确定所述待识别应用程序已被篡改。
5.根据权利要求1所述的方法,其特征在于,在所述确定所述待识别应用程序已被篡改之后,所述方法还包括:
向所述客户端反馈所述待识别应用程序已被篡改的提示信息。
6.一种应用程序被篡改的识别装置,其特征在于,应用于服务器,所述装置包括:
获取模块,用于获取待识别应用程序的指定标识的当前标识内容,所述指定标识表征应用程序是否被编辑的特征;
查找模块,用于从本地已存储的各应用程序的各标识的初始标识内容中,查找所述待识别应用程序的所述指定标识的第一初始标识内容;
识别模块,用于若所述当前标识内容和所述第一初始标识内容不一致,则确定所述待识别应用程序已被篡改。
7.根据权利要求6所述的装置,其特征在于,所述指定标识包括应用程序发布时生成的版本标识,和/或,对应用程序进行开发时标记的编辑者的标识。
8.根据权利要求6或7所述的装置,其特征在于,所述获取模块,具体用于接收客户端发送的网络请求,所述网络请求包括加密字段,所述加密字段为对所述指定标识的当前标识内容进行加密的字段。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
加密模块,用于对所述第一初始标识内容进行加密,得到加密数据;
提取模块,用于从所述网络请求中,提取所述加密字段;
所述识别模块,具体用于若所述加密数据与所述加密字段不一致,则确定所述待识别应用程序已被篡改。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
反馈模块,用于向所述客户端反馈所述待识别应用程序已被篡改的提示信息。
11.一种服务器,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的所述计算机程序时,实现权利要求1-5任一所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的方法。
CN201911291461.8A 2019-12-16 2019-12-16 一种应用程序被篡改的识别方法及装置 Pending CN111062030A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911291461.8A CN111062030A (zh) 2019-12-16 2019-12-16 一种应用程序被篡改的识别方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911291461.8A CN111062030A (zh) 2019-12-16 2019-12-16 一种应用程序被篡改的识别方法及装置

Publications (1)

Publication Number Publication Date
CN111062030A true CN111062030A (zh) 2020-04-24

Family

ID=70301923

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911291461.8A Pending CN111062030A (zh) 2019-12-16 2019-12-16 一种应用程序被篡改的识别方法及装置

Country Status (1)

Country Link
CN (1) CN111062030A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434825A (zh) * 2021-07-07 2021-09-24 成都新希望金融信息有限公司 基于计算机视觉的应用程序造假识别方法、装置和电子设备
CN113672920A (zh) * 2021-08-06 2021-11-19 安天科技集团股份有限公司 一种样本篡改行为的识别方法、装置及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123491A (zh) * 2014-07-18 2014-10-29 广州金山网络科技有限公司 一种检测应用程序安装包是否被篡改的方法及装置
US20170308368A1 (en) * 2016-04-22 2017-10-26 Kony, Inc. Preview and publishing of mobile applications
CN109558732A (zh) * 2017-09-27 2019-04-02 武汉斗鱼网络科技有限公司 一种防止应用程序文件被篡改的方法及服务器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123491A (zh) * 2014-07-18 2014-10-29 广州金山网络科技有限公司 一种检测应用程序安装包是否被篡改的方法及装置
US20170308368A1 (en) * 2016-04-22 2017-10-26 Kony, Inc. Preview and publishing of mobile applications
CN109558732A (zh) * 2017-09-27 2019-04-02 武汉斗鱼网络科技有限公司 一种防止应用程序文件被篡改的方法及服务器

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434825A (zh) * 2021-07-07 2021-09-24 成都新希望金融信息有限公司 基于计算机视觉的应用程序造假识别方法、装置和电子设备
CN113672920A (zh) * 2021-08-06 2021-11-19 安天科技集团股份有限公司 一种样本篡改行为的识别方法、装置及电子设备

Similar Documents

Publication Publication Date Title
CN107077557B (zh) 软件应用程序发布和验证的方法及装置
US11523153B2 (en) System and techniques for digital data lineage verification
CN110351239B (zh) 一种基于区块链的电子合同存储方法及装置、电子设备
CN111932426B (zh) 一种基于可信硬件的身份管理方法、装置及设备
CN101444063B (zh) 用于无线设备的安全时间功能
CN110798315B (zh) 基于区块链的数据处理方法、装置及终端
CN106790156B (zh) 一种智能设备绑定方法及装置
US20160330030A1 (en) User Terminal For Detecting Forgery Of Application Program Based On Hash Value And Method Of Detecting Forgery Of Application Program Using The Same
CN111797430A (zh) 数据校验方法、装置、服务器及存储介质
CN110598433B (zh) 基于区块链的防伪信息处理方法、装置
CN110826091B (zh) 一种文件签名方法、装置、电子设备及可读存储介质
CN112199644A (zh) 移动终端应用程序安全检测方法、系统、终端及存储介质
CN110826092A (zh) 一种文件签名处理系统
CN112734361B (zh) 一种分布式协同办公数据处理方法及系统
CN104123488A (zh) 应用程序的验证方法和装置
CN110830256A (zh) 一种文件签名方法、装置、电子设备及可读存储介质
US20230109369A1 (en) First copyright holder authentication system using blockchain, and method therefor
CN111131234A (zh) 供应链中智能合约数据处理方法、装置和计算机设备
CN111062030A (zh) 一种应用程序被篡改的识别方法及装置
CN110969445A (zh) 基于nfc的防伪方法
WO2019134276A1 (zh) 一种保护网页代码的方法、存储介质、电子设备和系统
CN110830257A (zh) 一种文件签名方法、装置、电子设备及可读存储介质
CN115795538A (zh) 脱敏文档的反脱敏方法、装置、计算机设备和存储介质
CN108900472B (zh) 信息的传输方法和装置
CN112100689B (zh) 一种可信数据处理方法、装置及设备

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200424