CN112084489A - 可疑应用检测方法及装置 - Google Patents

可疑应用检测方法及装置 Download PDF

Info

Publication number
CN112084489A
CN112084489A CN202010953285.6A CN202010953285A CN112084489A CN 112084489 A CN112084489 A CN 112084489A CN 202010953285 A CN202010953285 A CN 202010953285A CN 112084489 A CN112084489 A CN 112084489A
Authority
CN
China
Prior art keywords
random
developer
name
value
participle
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
CN202010953285.6A
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 Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Original Assignee
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software 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 Topsec Technology Co Ltd, Beijing Topsec Network Security Technology Co Ltd, Beijing Topsec Software Co Ltd filed Critical Beijing Topsec Technology Co Ltd
Priority to CN202010953285.6A priority Critical patent/CN112084489A/zh
Publication of CN112084489A publication Critical patent/CN112084489A/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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Machine Translation (AREA)

Abstract

本申请涉及一种可疑应用检测方法及装置,该可疑应用检测方法包括:获取应用程序的开发者名称;对所述开发者名称进行分词处理得到所述开发者名称的分词序列,其中,所述分词序列包括多个分词;基于所述分词序列计算所述开发者名称的随机值;将所述随机值与所述开发者名称的随机阈值比较,判断所述开发者名称是否随机;若所述开发者名称随机,则所述应用程序为可疑应用程序。本申请提供的可疑应用检测方法基于对开发者名称进行分词后得到的分词序列,判断开发者名称的随机性,从而检测可疑应用程序,检测特征便于提取,无需代码逆向和分析等复杂过程,能够有效提高可疑应用程序检测效率和检测效果。

Description

可疑应用检测方法及装置
技术领域
本申请涉及网络安全技术领域,具体涉及一种可疑应用检测方法及装置。
背景技术
基于安卓的车载娱乐系统,其娱乐和信息功能日益增强。特别是随着WIFI、蓝牙、4G/5G网络等车机互联模式的引入,多种高端车型集成了手机互联、热点分享、远程操作、车内游戏、大屏视频等炫酷功能。随着车机应用程序的种类和数量的增多,恶意应用程序也逐渐增多。一些恶意应用程序的开发者会采用随机串的方式隐藏程序的开发者名称,通过非法手段绕过未知来源安装检测等,在用户不知情的情况下,安装一些可疑应用,如此,可能会导致车机系统被远程控制或非法盗取,为车机系统引入了风险。
现有技术中,在进行可疑应用检测时一般将应用程序的未知来源安装、应用包基本信息、开发者信誉信息、黑白样本产出等作为风险因子,分别设置其权重,结合风险因子计算风险值,综合评估应用是否可疑。现有检测技术虽然能够结合风险因子评估车机应用是否存在风险,但需要分别获取每一项风险因子及其参数,然后基于检测算法去综合评估应用是否可疑,此过程涉及到多种风险因子的提取与计算。一些恶意开发者为躲避此项检测技术,故意将开发者名称随机化,这样就会导致无法获得开发者信息及其参数,即风险因子获取不到,则会导致基于开发者信息来分析可疑应用的方法难以有效检测出可疑应用。
应用程序开发时,为防止应用包被篡改,应用在发布之前需要进行签名,并将应用包签名信息和开发者信息写入到签名证书中。证书中有关于应用开发者和所有者的相关信息,用以验证应用程序开发者的唯一性。应用程序开发者是指进行应用程序功能设计和实现的技术人员。正常情况下,应用开发者需要将自己的基本信息存入证书文件中,如个人或团队的姓名、所属机构、地理位置等。由于应用程序开发者的唯一性,基于开发者信息来分析可疑应用的方法仍较为有效。由此可知,如何基于开发者信息有效地检测出可疑应用程序是亟待解决的。
发明内容
鉴于现有技术存在的上述问题,本申请的目的在于提供一种可疑应用检测方法及装置,能够快速、准确检测出开发者信息,从而有效检测出可疑应用程序。
为了实现上述目的,本申请实施例提供一种可疑应用检测方法,包括:
获取应用程序的开发者名称;
对所述开发者名称进行分词处理得到所述开发者名称的分词序列,其中,所述分词序列包括多个分词;
基于所述分词序列计算所述开发者名称的随机值;
将所述随机值与所述开发者名称的随机阈值比较,判断所述开发者名称是否随机;
若所述开发者名称随机,则所述应用程序为可疑应用程序。
在一些实施例中,基于所述分词序列计算所述开发者名称的随机值,包括:
获取所述分词序列中每个分词在其余每个分词上的概率;
基于所述概率,计算所述开发者名称的随机值。
在一些实施例中,基于所述分词序列利用二元语言模型计算所述开发者名称的随机值,所述方法包括:
获取所述分词序列中每个分词的词频;
根据每个所述分词的词频计算相邻两个分词之间的条件概率;
根据相邻两个分词之间的条件概率,计算所述开发者名称的随机值。
在一些实施例中,获取分词序列中每个分词在其余每个分词上的概率,还包括:
对所述概率进行数据平滑处理。
在一些实施例中,基于所述分词序列计算所述开发者名称的随机值,包括:
计算每个所述分词的随机值;
确定相邻两个所述分词之间的相关关系;
根据每个所述分词的随机值和相邻两个所述分词之间的相关关系,计算所述开发者名称的随机值。
在一些实施例中,所述开发者名称的随机阈值基于训练获得,包括:
获取训练语料样本数据,其中,所述训练语料样本数据包括由非随机字符串组成的第一样本集和由随机字符串组成的第二样本集;
将所述第一样本集分为多个第一样本子集,计算第一样本子集中各字符串的概率均值;
基于所述第一样本子集中各字符串的概率均值,计算所述第一样本集中非随机字符串的第一概率均值;
将所述第二样本集分为多个第二样本子集,计算第二样本子集中各字符串的概率均值;
基于所述第二样本子集中各字符串的概率均值,计算所述第二样本集中随机字符串的第二概率均值;
将所述非随机字符串的第一概率均值的最小值与所述随机字符串的第二概率均值的最大值进行比较,确定出随机阈值,其中,所述第一概率均值和第二概率均值中的最小值为所述随机阈值。
在一些实施例中,所述分词序列包括至少两个分词,所述方法包括:
计算每个分词的随机值;
确定每个所述分词对应的随机阈值;
将每个所述分词的随机值与对应的随机阈值依次进行比较,判断所述开发者名称是否随机。
在一些实施例中,在判断出开发者名称的随机性后,所述方法还包括:
基于所述开发者名称更新语料样本库。
本申请实施例还提供一种可疑应用检测装置,包括:
获取模块,其配置为获取应用程序的开发者名称;
分词模块,其配置为对所述开发者名称进行分词处理得到所述开发者名称的分词序列,其中,所述分词序列包括多个分词;
计算模块,其配置为基于所述分词序列计算所述开发者名称的随机值;
比较模块,其配置为将所述随机值与所述开发者名称的随机阈值比较,判断所述开发者名称是否随机;
确定模块,若所述开发者名称随机,则所述应用程序为可疑应用程序。
在一些实施例中,所述计算模块还配置为:
获取分词序列中每个分词在其余每个分词上的概率;
基于所述概率,计算所述开发者名称的随机值。
本申请实施例还提供一种可疑应用检测设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述的可疑应用检测方法的步骤。
本申请实施例还提供一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的可疑应用检测方法的步骤。
与现有技术相比较,本申请实施例提供的可疑应用检测方法及装置,本申请实施例提供的可疑应用检测方法基于对开发者名称进行分词后得到的分词序列,判断开发者名称的随机性,从而检测可疑应用程序,检测特征便于提取,无需代码逆向和分析等复杂过程,能够有效提高可疑应用程序检测效率和检测效果。
附图说明
在不一定按比例绘制的附图中,相同的附图标记可以在不同的视图中描述相似的部件。具有字母后缀或不同字母后缀的相同附图标记可以表示相似部件的不同实例。附图大体上通过举例而不是限制的方式示出各种实施例,并且与说明书以及权利要求书一起用于对所申请的实施例进行说明。在适当的时候,在所有附图中使用相同的附图标记指代同一或相似的部分。这样的实施例是例证性的,而并非旨在作为本装置或方法的穷尽或排他实施例。
图1为本申请实施例的可疑应用检测方法的流程图;
图2为本申请实施例的开发者名称的随机值的计算方法的流程图;
图3为本申请实施例的开发者名称的随机值的计算方法的另一流程图;
图4为本申请实施例的开发者名称的随机值的计算方法的又一流程图;
图5为本申请实施例的开发者名称的随机阈值的获得方法的流程图;
图6为本申请实施例的可疑应用检测装置的结构示意图。
具体实施方式
下面,结合附图对本申请的具体实施例进行详细的描述,但不作为本申请的限定。
应理解的是,可以对此处公开的实施例做出各种修改。因此,上述说明书不应该视为限制,而仅是作为实施例的范例。本领域的技术人员将想到在本申请的范围和精神内的其他修改。
包含在说明书中并构成说明书的一部分的附图示出了本申请的实施例,并且与上面给出的对本申请的大致描述以及下面给出的对实施例的详细描述一起用于解释本申请的原理。
通过下面参照附图对给定为非限制性实例的实施例的优选形式的描述,本申请的这些和其它特征将会变得显而易见。
还应当理解,尽管已经参照一些具体实例对本申请进行了描述,但本领域技术人员能够确定地实现本申请的很多其它等效形式,它们具有如权利要求所述的特征并因此都位于借此所限定的保护范围内。
当结合附图时,鉴于以下详细说明,本申请的上述和其他方面、特征和优势将变得更为显而易见。
此后参照附图描述本申请的具体实施例;然而,应当理解,所公开的实施例仅仅是本申请的实例,其可采用多种方式实施。熟知和/或重复的功能和结构并未详细描述以避免不必要或多余的细节使得本申请模糊不清。因此,本文所公开的具体的结构性和功能性细节并非意在限定,而是仅仅作为权利要求的基础和代表性基础用于教导本领域技术人员以实质上任意合适的详细结构多样地使用本申请。
图1为本申请实施例的可疑应用检测方法的流程图。如图1所示,本申请实施例提供一种可疑应用检测方法,包括:
步骤S1:获取应用程序的开发者名称。
其中,应用程序为未知应用程序,该未知应用程序可以为安装于终端的未知来源的应用程序。本实施例中,可以通过获取的应用程序的开发者名称对可疑应用进行检测。开发者名称以字符串的方式存储于应用程序,该字符串可以为中文、英文、数字或者符号中的一种或几种的组合。例如,开发者名称可以为“苹果”、“I want to eat apple”、或者“苹果apple”。
步骤S2:对所述开发者名称进行分词处理得到所述开发者名称的分词序列,其中,所述分词序列包括多个分词。
本步骤中,开发者名称由多个单词组成,可以利用分词工具将开发者名称分成若干个分词,并将这些分词按照在开发者名称中出现的先后顺序排列,形成分词序列。每个分词中可以包含一个或多个单词。
分词序列包括至少两个分词,例如,当开发者名称为“苹果”时,可以将其分为“苹”和“果”;当开发者名称为“苹果apple”时,可以将其分为“苹果”和“apple”,具体的分词规则根据实际情况确定。
步骤S3:基于所述分词序列计算所述开发者名称的随机值。
开发者名称的随机值表示开发者名称字符串出现的概率。可以基于马尔科夫的二元(2-gram)或多元(N-gram)语言模型,计算开发者名称的随机值,由多个分词组成的开发者名称字符串中,由于字符串按照起名规则确定,因此,多个分词中,按序排列的前、后分词之间具有一定的关联关系,可以基于该关联关系计算开发者名称的随机值。
如图2所示,步骤S3具体包括如下步骤:
步骤S301、获取所述分词序列中每个分词在其余每个分词上的概率。
每个分词在其余每个分词上的概率即为该词与其余每个词组合出现的概率,用以表示前、后分词之间的关联关系。
步骤S302、基于所述概率,计算所述开发者名称的随机值。
以二元语言模型为例,相邻的两个前、后分词具有关联关系,即第N个分词的出现与第N-1个分词有关系,一个由多个分词组成的字符串的概率就是各个分词出现概率的乘积,各个分词的概率可以通过语料库中统计计算得到。
具体地,如图3所示,利用二元语言模型计算开发者名称的随机值,包括如下步骤:
步骤S311、获取所述分词序列中每个分词的词频。
其中,每个所述分词的词频是指每个分词在语料库中出现的次数。具体地,可以将与上述分词相关的语料库作为已知库,统计分词后各分词出现的次数(数量)以及相邻两个分词同时出现的次数。语料库是由大量单词或多词组成的词库,可以包括上述的每个分词以及由分词组成的字符串。当由分词组成的字符串未出现时,可以将词频记为0。
步骤S312、根据每个所述分词的词频计算相邻两个分词之间的条件概率。
相邻两个分词之间的条件概率可以用于表示两个分词一起使用的可能性。该条件概率越高,表明两个分词之间一起使用的可能性越高,反之,条件概率越低,表明两个分词之间一起使用的可能性越低。
本实施例中,在计算相邻两个分词之间的条件概率之前,获取相邻两个分词同时出现的次数时,其中,相邻两个分词为按序排列的相邻两个分词的组合(前、后分词依序组合)。
步骤S313、根据相邻两个分词之间的条件概率,计算开发者名称的随机值。
将步骤S312中计算出的各相邻两个分词之间的条件概率积乘即可得到开发者名称的随机值。
具体地,由m个分词组成的字符串序列,其在语料库中的概率(随机值)可以表示为:
Figure BDA0002677759130000081
其中,p(wi|wi-1)=C(wi-1wi)/C(wi-1),C(wi-1wi)是词wi-1wi在语料库中出现的次数,C(wi-1)是词wi-1在语料库中出现的次数,p(wi|wi-1)=C(wi-1wi)/C(wi-1)为相邻两个词之间的条件概率。
例如,字符串序列为“I want to eat apple”,其中,I为词w1,want为词w2,to为词w3,依次类推,将该字符串分为5个分词。计算相邻两个分词之间的条件概率:
p(want|I)=C(I want)/C(I),
p(to|want)=C(want to)/C(want),
p(eat|to)=C(to eat)/C(to),
p(apple|eat)=C(eat apple)/C(eat),
将上述条件概率积乘便可得到字符串序列为“I want to eat apple”在语料库中的概率。
本实施例中,由于开发者名称字符串的长度一般在预设的长度范围内,因此,采用二元语言模型,当开发者名称字符串的长度较长时,为保证概率计算的准确度,采用多元(N-gram)语言模型,即第N个分词的出现与前面N-1个分词相关,采用多元语言模型的步骤与上述步骤S311至S313类似,在此不再赘述。
步骤S302中,获取分词序列中每个分词在其余每个分词上的概率,还包括:对所述概率进行数据平滑处理。
具体地,步骤S312中,在计算相邻两个分词之间的条件概率时,通过在分子和分母均加1的方式,对条件概率进行数据平滑处理,使数据具有平滑性。
数据平滑处理的公式可以表示为:p(want|I)=(C(I want)+1)/(C(I)+1)。
在另一些实施例中,如图4所示,步骤S3基于所述分词序列计算所述开发者名称的随机值也可以通过如下步骤实现:
步骤S321、计算每个分词的随机值。
将开发者名称进行分词处理后,每个分词中包含一个或多个单词,相邻的分词之间存在一定的相关关系,分词内各相邻的单词之间也存在一定的相关关系,当分词包含的单词的个数较多时,可以先计算每个分词的随机值。
计算每个所述分词的随机值的具体过程与上述基于二元(2-gram)或多元(N-gram)语言模型,计算开发者名称的随机值的方法类似,在此不再赘述。
步骤S322、确定相邻两个所述分词之间的相关关系。
例如,当第一分词为“I want to eat apple”,第二分词为“苹果”时,第一分词和第二分词存在一定的相关性,可以赋予一定的相关系数,进而计算开发者名称的随机值。
当第一分词为“I want to eat apple”,第二分词为“手机”、第三分词为“1243”时,相邻两个分词之间的相关性较弱,相关系数较小,开发者名称字符串为随机字符串的概率较大。
步骤S323、根据每个所述分词的随机值和相邻两个所述分词之间的相关关系,计算所述开发者名称的随机值。
将上述每个所述分词的随机值以及相邻两个分词之间的相关关系综合加权后,得到开发者名称的随机值。
通过先计算每个分词的随机值,再进行综合加权得到开发者名称的随机值,可以预先将相关性低的开发者名称字符串筛选出,降低系统的数据处理量。该方法优选适用于存在多种类别属性的开发者名称字符串中,例如,既包含中文、英文又包含数字的开发者名称。
上述步骤S311至S313通过获取每个分词的词频,进而计算所述开发者名称的随机值的方法优选适用于同一类别属性的开发者名称字符串中。在进行步骤S311至S313时,若每个分词中均仅包含一个单词,则相当于遍历开发者名称字符串中的每一个词,进而计算开发者名称的随机值。当每个分词中包含多个单词时,无需遍历字符串中的每一个词,可以有效提高检测效率。
步骤S4:将所述随机值与所述开发者名称的随机阈值比较,判断所述开发者名称是否随机。
其中,所述开发者名称的随机阈值基于训练获得,如图5所示,开发者名称的随机阈值的具体获得方法包括:
步骤S401、获取训练语料样本数据,其中,所述训练语料样本数据包括由非随机字符串组成的第一样本集和由随机字符串组成的第二样本集。
具体地,获取尽可能多的训练语料样本数据,该训练语料样本数据构成语料样本库。第一样本集和第二样本集可以从训练语料样本数据构成的语料样本库中选取获得。
步骤S4021、将所述第一样本集分为多个第一样本子集,计算第一样本子集中各字符串的概率均值。
将由n个非随机字符串组成的第一样本集分为m个第一样本子集,每个第一样本子集中包含n/m个字符串,计算出每个第一样本子集中每个字符串出现的概率后,通过计算平均值,得到每个第一样本子集中各字符串的概率均值。
步骤S4022、基于所述第一样本子集中各字符串的概率均值,计算所述第一样本集中非随机字符串的第一概率均值。
非随机字符串的第一概率均值是指第一样本集中各字符串的概率均值,通过步骤S4021和S4022可以计算出由非随机字符串组成的第一样本集中,各非随机字符串的概率均值。
概率均值计算的方法可以包括算术平均法、加权平均法、移动平均法或指数平滑平均法等,本申请实施例对此不做限定。
步骤S4031、将所述第二样本集分为多个第二样本子集,计算第二样本子集中各字符串的概率均值。
步骤S4032、基于所述第二样本子集中各字符串的概率均值,计算所述第二样本集中随机字符串的第二概率均值。
步骤S4031与步骤S4021类似,计算出每一第二样本子集中各字符串的概率均值后,通过步骤S4032计算出由随机字符串组成的第二样本集中,各随机字符串的第二概率均值。
步骤S4021、S4022的具体实施顺序与步骤S4031、S4032的具体实施顺序,本申请不具体限定。
步骤S404、将非随机字符串的第一概率均值的最小值与随机字符串的第二概率均值的最大值进行比较,确定出随机阈值。
具体地,将所述第一概率均值和第二概率均值中的最小值,作为随机阈值。
随机阈值为随机性判断的临界值,非随机字符串的第一概率均值越大,表明字符串随机出现的几率越少;随机字符串的第二概率均值越大,表明字符串随机出现的几率越大,因此,通过获取非随机字符串的第一概率均值的最小值和随机字符串的第二概率均值的最大值,并基于二者中的最小值,可以准确确定出随机阈值。
开发者名称的随机值为开发者名称在语料库中出现的概率,因此,随机值越大,表明出现的几率越多,为随机字符的可能性越低。确定出开发者名称的随机阈值后,将步骤S3中计算的开发者名称的随机值与所述开发者名称的随机阈值比较,便可判断所述开发者名称是否随机,当随机值小于该随机阈值时,开发者名称随机,即开发者名称字符串为随机字符串;当随机值大于等于该随机阈值时,开发者名称字符串为非随机字符串。
在又一些实施例中,所述分词序列包括至少两个分词;通过步骤S311计算出每个所述分词的随机值后,可以分别确定每个分词所对应的随机阈值,然后将每个分词的随机值与对应的随机阈值依次进行比较,判断所述开发者名称是否随机。
每个分词所对应的随机阈值的确定方法与步骤S4中开发者名称的随机阈值的获得方式类似,具体方法不再赘述。
具体地,将开发者名称字符串依序分为M个分词,在第一分词的第一随机值小于第一随机阈值时,判断第二分词的第二随机值是否小于第二随机阈值;在第二分词的第二随机值小于第二随机阈值时,判断第三分词的第三随机值是否小于第三随机阈值,…依次类推,直至第N个分词的随机值小于第N随机阈值,则确定出开发者名称字符串为随机字符串,其中,第一分词、第二分词、第三分词…第N分词依序排列,M为大于1的正整数,且M大于等于N。
通过将每一分词的随机值与相应的随机阈值依次进行比较,判断所述开发者名称是否随机,可以在开发者名称字符串存在多个类别属性时,快速判断出开发者名称的随机性,并提高随机性检测的准确性。
步骤S5:若所述开发者名称随机,则所述应用程序为可疑应用程序。
本申请可以基于开发者名称的随机性,将其作为可疑应用程序的检测标准,可疑有效识别开发者名称的随机字符,缩小检测范围,提高检测效率。开发者名称的随机性判断可以单独作为可疑应用程序的一种检测方法,也可以结合开发者名称和样本产出等现有技术一起联合使用,通过结合本申请可有效提高检测效率。例如,可以基于随机性判断检测出可疑应用程序后,获取开发者信息及其参数,将其作为风险因子,进一步判断上述可疑应用程序检测的准确性,从而不断完善本申请的可疑应用检测方法。
在通过步骤S4判断出开发者名称的随机性后,所述方法还包括:
基于所述开发者名称更新语料样本库。
具体地,将与随机阈值比较后确定的随机字符串或非随机字符串更新到语料样本库中,作为后续样本判断标识,便于后续的开发者名称随机性检测。即无论开发者名称是否随机,均根据该检测的开发者名称更新语料样本库。
在一些实施例中,在所述应用程序为可疑应用程序后,所述方法还包括:对所述可疑应用程序进行处理。
具体地,可以向用户发出告警信息,提醒用户此应用程序可疑,为用户后续所做措施提供告警和预筛选机制。
进一步地,可以对可疑应用进行拦截或删除,或者,基于可疑应用程序的危害等级进行相应的处理,以提高应用处理能力。
本申请实施例提供的可疑应用检测方法基于对开发者名称进行分词后得到的分词序列,判断开发者名称的随机性,从而检测可疑应用程序,检测特征便于提取,无需代码逆向和分析等复杂过程,能够有效提高可疑应用程序检测效率和检测效果。
图6为本申请实施例的可疑应用检测装置的结构示意图。如图6所示,基于同一申请构思,本申请实施例提供一种可疑应用检测装置,包括:
获取模块10,其配置为获取应用程序的开发者名称;
分词模块20,其配置为对所述开发者名称进行分词处理得到所述开发者名称的分词序列,其中,所述分词序列包括多个分词;
计算模块30,其配置为基于所述分词序列计算所述开发者名称的随机值;
比较模块40,其配置为将所述随机值与所述开发者名称的随机阈值比较,判断所述开发者名称是否随机;
确定模块50,其配置为若所述开发者名称随机,则所述应用程序为可疑应用程序。
进一步地,分词模块20包括第一分词模块和第二分词模块,其中,第一分词模块配置为将开发者名称分为多个分词,第二分词模块配置为对每个分词进行分词,即用于每个分词内部的单词分割。
所述计算模块30还配置为:
获取分词序列中每个分词在其余每个分词上的概率;
基于所述概率,计算所述开发者名称的随机值。
该可疑应用检测装置对应于上述实施例的可疑应用检测方法,可疑应用检测方法实施例中的任何可选项也适用于本实施例,这里不再详述。
对应于上述的方法实施例,本申请还提供了一种可疑应用检测设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述的可疑应用检测方法的步骤。
本申请还提供了一种计算机可读介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的可疑应用检测方法的步骤。
该计算机可读介质可以是上述可疑应用检测设备中所包含的;也可以是单独存在,而未装配入该可疑应用检测设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该可疑应用检测设备:获取应用程序的开发者名称;对所述开发者名称进行分词处理得到所述开发者名称的分词序列,其中,所述分词序列包括多个分词;基于所述分词序列计算所述开发者名称的随机值;将所述随机值与所述开发者名称的随机阈值比较,判断所述开发者名称是否随机;若所述开发者名称随机,则所述应用程序为可疑应用程序。
以上实施例仅为本申请的示例性实施例,不用于限制本申请,本申请的保护范围由权利要求书限定。本领域技术人员可以在本申请的实质和保护范围内,对本申请做出各种修改或等同替换,这种修改或等同替换也应视为落在本申请的保护范围内。

Claims (10)

1.一种可疑应用检测方法,其特征在于,包括:
获取应用程序的开发者名称;
对所述开发者名称进行分词处理得到所述开发者名称的分词序列,其中,所述分词序列包括多个分词;
基于所述分词序列计算所述开发者名称的随机值;
将所述随机值与所述开发者名称的随机阈值比较,判断所述开发者名称是否随机;
若所述开发者名称随机,则所述应用程序为可疑应用程序。
2.根据权利要求1所述的可疑应用检测方法,其特征在于,基于所述分词序列计算所述开发者名称的随机值,包括:
获取所述分词序列中每个分词在其余每个分词上的概率;
基于所述概率,计算所述开发者名称的随机值。
3.根据权利要求2所述的可疑应用检测方法,其特征在于,基于所述分词序列利用二元语言模型计算所述开发者名称的随机值,所述方法包括:
获取所述分词序列中每个分词的词频;
根据每个所述分词的词频计算相邻两个分词之间的条件概率;
根据相邻两个分词之间的条件概率,计算所述开发者名称的随机值。
4.根据权利要求2所述的可疑应用检测方法,其特征在于,获取分词序列中每个分词在其余每个分词上的概率,还包括:
对所述概率进行数据平滑处理。
5.根据权利要求1所述的可疑应用检测方法,其特征在于,基于所述分词序列计算所述开发者名称的随机值,包括:
计算每个分词的随机值;
确定相邻两个所述分词之间的相关关系;
根据每个所述分词的随机值和相邻两个所述分词之间的相关关系,计算所述开发者名称的随机值。
6.根据权利要求1所述的可疑应用检测方法,其特征在于,所述开发者名称的随机阈值基于训练获得,包括:
获取训练语料样本数据,其中,所述训练语料样本数据包括由非随机字符串组成的第一样本集和由随机字符串组成的第二样本集;
将所述第一样本集分为多个第一样本子集,计算第一样本子集中各字符串的概率均值;
基于所述第一样本子集中各字符串的概率均值,计算所述第一样本集中非随机字符串的第一概率均值;
将所述第二样本集分为多个第二样本子集,计算第二样本子集中各字符串的概率均值;
基于所述第二样本子集中各字符串的概率均值,计算所述第二样本集中随机字符串的第二概率均值;
将所述非随机字符串的第一概率均值的最小值与所述随机字符串的第二概率均值的最大值进行比较,确定出随机阈值,其中,所述第一概率均值和第二概率均值中的最小值为所述随机阈值。
7.根据权利要求1所述的可疑应用检测方法,其特征在于,所述分词序列包括至少两个分词,所述方法包括:
计算每个分词的随机值;
确定每个所述分词对应的随机阈值;
将每个所述分词的随机值与对应的随机阈值依次进行比较,判断所述开发者名称是否随机。
8.根据权利要求1所述的可疑应用检测方法,其特征在于,在判断出开发者名称的随机性后,所述方法还包括:
基于所述开发者名称更新语料样本库。
9.一种可疑应用检测装置,其特征在于,包括:
获取模块,其配置为获取应用程序的开发者名称;
分词模块,其配置为对所述开发者名称进行分词处理得到所述开发者名称的分词序列,其中,所述分词序列包括多个分词;
计算模块,其配置为基于所述分词序列计算所述开发者名称的随机值;
比较模块,其配置为将所述随机值与所述开发者名称的随机阈值比较,判断所述开发者名称是否随机;
确定模块,其配置为若所述开发者名称随机,则所述应用程序为可疑应用程序。
10.根据权利要求9所述的可疑应用检测装置,其特征在于,所述计算模块还配置为:
获取分词序列中每个分词在其余每个分词上的概率;
基于所述概率,计算所述开发者名称的随机值。
CN202010953285.6A 2020-09-11 2020-09-11 可疑应用检测方法及装置 Pending CN112084489A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010953285.6A CN112084489A (zh) 2020-09-11 2020-09-11 可疑应用检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010953285.6A CN112084489A (zh) 2020-09-11 2020-09-11 可疑应用检测方法及装置

Publications (1)

Publication Number Publication Date
CN112084489A true CN112084489A (zh) 2020-12-15

Family

ID=73736661

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010953285.6A Pending CN112084489A (zh) 2020-09-11 2020-09-11 可疑应用检测方法及装置

Country Status (1)

Country Link
CN (1) CN112084489A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113691492A (zh) * 2021-06-11 2021-11-23 杭州安恒信息安全技术有限公司 违法应用程序的确定方法、系统、装置及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108710911A (zh) * 2018-05-21 2018-10-26 华东师范大学 一种基于半监督的应用市场刷榜应用检测方法
CN109726554A (zh) * 2017-10-30 2019-05-07 武汉安天信息技术有限责任公司 一种恶意程序的检测方法、装置及相关应用
CN110555304A (zh) * 2018-05-31 2019-12-10 武汉安天信息技术有限责任公司 恶意包名检测方法、恶意应用检测方法及相应装置
CN110941818A (zh) * 2018-09-21 2020-03-31 武汉安天信息技术有限责任公司 移动应用程序开发者的信誉获取方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109726554A (zh) * 2017-10-30 2019-05-07 武汉安天信息技术有限责任公司 一种恶意程序的检测方法、装置及相关应用
CN108710911A (zh) * 2018-05-21 2018-10-26 华东师范大学 一种基于半监督的应用市场刷榜应用检测方法
CN110555304A (zh) * 2018-05-31 2019-12-10 武汉安天信息技术有限责任公司 恶意包名检测方法、恶意应用检测方法及相应装置
CN110941818A (zh) * 2018-09-21 2020-03-31 武汉安天信息技术有限责任公司 移动应用程序开发者的信誉获取方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113691492A (zh) * 2021-06-11 2021-11-23 杭州安恒信息安全技术有限公司 违法应用程序的确定方法、系统、装置及可读存储介质
CN113691492B (zh) * 2021-06-11 2023-04-07 杭州安恒信息安全技术有限公司 违法应用程序的确定方法、系统、装置及可读存储介质

Similar Documents

Publication Publication Date Title
CN110741388B (zh) 对抗样本检测方法、装置、计算设备及计算机存储介质
CN110851835A (zh) 图像模型检测方法、装置、电子设备及存储介质
CN111291070B (zh) 一种异常sql检测方法、设备及介质
CN108596616B (zh) 用户数据真实性分析方法及装置、存储介质、电子设备
US9824313B2 (en) Filtering content in an online system based on text and image signals extracted from the content
CN110245714B (zh) 图像识别方法、装置及电子设备
CN111680287B (zh) 基于用户隐私保护的应用程序检测方法及装置
CN108304452B (zh) 文章处理方法及装置、存储介质
CN111339531B (zh) 恶意代码的检测方法、装置、存储介质及电子设备
CN111694954B (zh) 图像分类方法、装置和电子设备
CN112667979A (zh) 密码生成方法及装置、密码识别方法及装置、电子设备
CN114140670A (zh) 基于外源特征进行模型所有权验证的方法和装置
CN110717407A (zh) 基于唇语密码的人脸识别方法、装置及存储介质
CN112084489A (zh) 可疑应用检测方法及装置
CN111783812A (zh) 违禁图像识别方法、装置和计算机可读存储介质
JP6777612B2 (ja) コンピュータシステムにおけるデータ損失を防止するためのシステム及び方法
CN113988226B (zh) 数据脱敏有效性验证方法、装置、计算机设备及存储介质
CN113836297B (zh) 文本情感分析模型的训练方法及装置
CN115455386A (zh) 一种操作行为识别方法及装置
CN114969641A (zh) 核数据处理方法、电子设备和计算机可读存储介质
CN114218997A (zh) 一种实验数据的分组方法、装置、介质及电子设备
CN113343699A (zh) 日志安全风险的监测方法、装置、电子设备及介质
CN114528908A (zh) 网络请求数据分类模型训练方法、分类方法及存储介质
CN112836747A (zh) 眼动数据的离群处理方法及装置、计算机设备、存储介质
CN114168788A (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