CN108717511A - 一种Android应用威胁度评估模型建立方法、评估方法及系统 - Google Patents

一种Android应用威胁度评估模型建立方法、评估方法及系统 Download PDF

Info

Publication number
CN108717511A
CN108717511A CN201810457339.2A CN201810457339A CN108717511A CN 108717511 A CN108717511 A CN 108717511A CN 201810457339 A CN201810457339 A CN 201810457339A CN 108717511 A CN108717511 A CN 108717511A
Authority
CN
China
Prior art keywords
feature
information
cluster
described eigenvector
algorithm
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
CN201810457339.2A
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.)
Institute of Information Engineering of CAS
Original Assignee
Institute of Information Engineering of CAS
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 Institute of Information Engineering of CAS filed Critical Institute of Information Engineering of CAS
Priority to CN201810457339.2A priority Critical patent/CN108717511A/zh
Publication of CN108717511A publication Critical patent/CN108717511A/zh
Pending legal-status Critical Current

Links

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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2135Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供一种Android应用威胁度评估模型建立方法、评估方法及系统。其中,模型建立方法包括:提取训练样本的特征数据,包括权限信息和附加特征信息,根据特征数据的状态构建特征向量;利用聚类算法,根据权限信息对训练样本的特征向量集进行聚类,分为不同的特征向量簇,得到聚类算法模型;利用数据降维算法对特征向量簇中特征向量进行特征选择,并得到对应的特征选择字典;对特征向量簇中特征向量使用预设的多个机器学习算法进行分类;根据分类结果获取对应的机器学习算法,得到分类算法模型;根据预处理算法、聚类算法模型、特征选择字典和分类算法模型建立Android应用威胁度评估模型。本发明实施例提高了应用威胁度评估的分类精度及普适性。

Description

一种Android应用威胁度评估模型建立方法、评估方法及系统
技术领域
本发明实施例涉及计算机技术领域,具体涉及一种Android应用威胁度评估模型建立方法、评估方法及系统。
背景技术
近几年,随着智能终端设备,尤其是智能手机的发展,智能终端上的应用程序越来越丰富,极大便利了人们的生活。随着智能手机用户的爆发式增长,恶意应用的数量也在不断增长。恶意应用已成为了用户财产、安全及隐私的一大威胁。
在恶意应用的检测方面,论文Quantitative Security Risk Assessment ofAndroid Permission and Applications中,根据贝叶斯公式生成当某个权限下样本A可能是恶意的概率P(A是恶意的|pi),对该样本中所有的P加权求和,即为该样本的威胁度;其中普通权限的权重是1,危险权限的权重是1.5,此时最后计算得出的AUC(Area under theCurve,曲线下方的面积)值最大;开源工具Androguard对权限信息、反射机制、native代码执行等分别赋予不同的得分,一个应用的威胁度是这些元素得分模糊计算之后的结果。
单单以权限作为输入,经过计算得到应用的威胁度,在权限滥用的情况下,生成的威胁度往往过大。现实的情况是,大多数发布的应用都因为应用开发者的不规范开发存在权限滥用的情况。而且,现有的Android应用威胁检测采用单一的威胁评估或者检测系统,而由于不同的Android恶意应用具有不同的特点,单一的威胁评估或者检测系统不一定适用于不同类别的Android恶意应用。另外,开源工具Androguard是根据专家经验得到的每个元素的得分,实际中已经证明Androguard得到的威胁度存在很大的空白区间,即0-100这个分数段有一些区间一直没有被覆盖。
发明内容
为解决现有Android应用威胁度评估精度低及不具有普适性的问题,本发明实施例提供一种Android应用威胁度评估模型建立方法、评估方法及系统。
第一方面,本发明实施例提供一种Android应用威胁度评估模型建立方法,该方法包括:根据预设的预处理算法提取训练样本的特征数据,所述训练样本包括恶意应用和良性应用,所述特征数据包括权限信息和附加特征信息,并根据所述特征数据的状态构建特征向量;利用聚类算法,根据所述权限信息对所述训练样本的特征向量集进行聚类,将所述特征向量集分为不同的特征向量簇,得到聚类算法模型;以所述特征向量簇为单位,利用数据降维算法对所述特征向量簇中所述特征向量进行特征选择,并得到与所述特征向量簇对应的特征选择字典;对所述特征向量簇中所述特征向量使用预设的机器学习算法进行分类,所述机器学习算法为多个;根据分类结果获取各个所述机器学习算法的预设指标;根据所述预设指标获取与所述特征向量簇对应的所述机器学习算法,得到分类算法模型;根据所述预处理算法、所述聚类算法模型、所述特征选择字典和所述分类算法模型建立Android应用威胁度评估模型。
第二方面,本发明实施例提供一种Android应用威胁度评估方法,该方法包括:接收待处理应用;提取所述待处理应用的所述特征数据,所述特征数据包括所述权限信息和所述附加特征信息,根据所述特征数据的状态构建特征向量;将所述权限信息输入到所述聚类算法模型,对所述待处理应用进行预分类,得到与所述待处理应用对应的所述特征向量簇;根据与所述待处理应用对应的所述特征向量簇获取所述特征选择字典,根据所述特征选择字典对所述特征向量进行特征选择;根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应的所述机器学习算法,对所述特征向量使用所述机器学习算法进行分类,根据分类结果评估所述待处理应用的威胁度。
第三方面,本发明实施例提供一种Android应用威胁度评估系统,该系统包括:接收模块,所述接收模块具体用于接收待处理应用;预处理模块,所述预处理模块具体用于提取所述待处理应用的所述特征数据,所述特征数据包括所述权限信息和所述附加特征信息,根据所述特征数据的状态构建特征向量;预分类模块,所述预分类模块具体用于将所述权限信息输入到所述聚类算法模型,对所述待处理应用进行预分类,得到与所述待处理应用对应的所述特征向量簇;特征选择模块,所述特征选择模块具体用于根据与所述待处理应用对应的所述特征向量簇获取所述特征选择字典,根据所述特征选择字典对所述特征向量进行特征选择;评估模块,所述评估模块具体用于根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应的所述机器学习算法,对所述特征向量使用所述机器学习算法进行分类,根据分类结果评估所述待处理应用的威胁度。
第四方面,本发明实施例提供一种计算机设备,包括存储器和处理器,所述处理器和所述存储器通过总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如下方法:接收待处理应用;提取所述待处理应用的所述特征数据,所述特征数据包括所述权限信息和所述附加特征信息,根据所述特征数据的状态构建特征向量;将所述权限信息输入到所述聚类算法模型,对所述待处理应用进行预分类,得到与所述待处理应用对应的所述特征向量簇;根据与所述待处理应用对应的所述特征向量簇获取所述特征选择字典,根据所述特征选择字典对所述特征向量进行特征选择;根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应的所述机器学习算法,对所述特征向量使用所述机器学习算法进行分类,根据分类结果评估所述待处理应用的威胁度。
第五方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如下方法:接收待处理应用;提取所述待处理应用的所述特征数据,所述特征数据包括所述权限信息和所述附加特征信息,根据所述特征数据的状态构建特征向量;将所述权限信息输入到所述聚类算法模型,对所述待处理应用进行预分类,得到与所述待处理应用对应的所述特征向量簇;根据与所述待处理应用对应的所述特征向量簇获取所述特征选择字典,根据所述特征选择字典对所述特征向量进行特征选择;根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应的所述机器学习算法,对所述特征向量使用所述机器学习算法进行分类,根据分类结果评估所述待处理应用的威胁度。
本发明实施例先根据权限信息进行预分类,再利用对应的机器学习算法根据权限信息及附加特征信息进一步分类得到应用的威胁度,通过采用多类特征数据,以及针对不同类型的应用采用不同的机器学习算法进行评估,提高了分类精度,能够实现对恶意样本的高精度检测;同时使得打分规则覆盖了整个打分区间,提高了应用威胁度评估的普适性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的Android应用威胁度评估模型建立方法流程图;
图2为本发明实施例提供的另一Android应用威胁度评估模型建立方法流程图;
图3为本发明实施例提供的基于RBF SVM算法的样本威胁度分布图;
图4为基于本发明实施例提供的Android应用威胁度评估模型的样本威胁度分布图;
图5为基于本发明实施例提供的Android应用威胁度评估模型的Android应用威胁度评估方法流程图;
图6为本发明实施例提供的Android应用威胁度评估系统的结构示意图;
图7为本发明实施例提供的计算机设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的Android应用威胁度评估模型建立方法流程图。如图1所示,所述方法包括:
步骤101、根据预设的预处理算法提取训练样本的特征数据,所述训练样本包括恶意应用和良性应用,所述特征数据包括权限信息和附加特征信息,并根据所述特征数据的状态构建特征向量;
在建立Android应用威胁度评估模型之前,首先需要建立训练样本,所述训练样本包括恶意应用和良性应用,其中所述恶意应用为具有威胁度的应用,所述良性应用为不具有威胁度的应用。
所述预设的预处理算法用于:提取训练样本的特征数据,所述训练样本包括恶意应用和良性应用,所述特征数据包括权限信息和附加特征信息,并根据所述特征数据的状态构建特征向量。
根据预设的预处理算法提取所述训练样本的特征数据,所述特征数据包括权限信息和附加特征信息。其中,所述权限信息包括所述训练样本所申请的权限的信息。所述权限信息可以通过解压缩所述训练样本的apk文件,反编译并解析AndroidManifest.xml文件获取。Android系统本身提供了四种安全级别的上百种权限。这些权限被划分为12个类,例如访问位置信息、访问网络和访问个人信息等。具体地,所述特征数据中需提取的权限信息可以根据需要设定。
所述附加特征信息为除所述权限信息外可以用来判定应用威胁度的特征,如所述附加特征信息可以为敏感API信息。本发明实施例以所述附加特征信息为敏感API信息为例进行介绍。所述敏感API信息可以通过.dex文件获取。
根据所述特征数据的状态构建特征向量,所述特征数据中存在的元素的特征为1,不存在的元素的特征为0。比如,在权限信息中,存在的权限用1表示,不存在的权限用0表示;敏感API信息中,存在的敏感API用1表示,不存在的敏感API用0表示。
所述特征向量与所述训练样本一一对应,生成与所述训练样本对应的唯一标识符,根据所述唯一标识符可以获取所述训练样本的信息,所述训练样本的信息包括所述训练样本是恶性应用或良性应用。其中,生成所述唯一标识符可以采用消息摘要算法,如可以生成所述训练样本的MD5值(消息摘要算法第五版)。
步骤102、利用聚类算法,根据所述权限信息对所述训练样本的特征向量集进行聚类,将所述特征向量集分为不同的特征向量簇,得到聚类算法模型;
由于所述权限信息中申请权限的情况一定程度上可以表示所述训练样本是何种类型的应用。因此,所述根据所述权限信息对所述训练样本的特征向量集进行聚类可以将类型相似的应用聚类到一起。所述特征向量集是指混合所有所述训练样本的特征向量得到的所述特征向量的集合。
可以利用聚类算法根据所述权限信息对所述训练样本的特征向量集进行聚类,将所述特征向量集分为不同的特征向量簇,所述特征向量簇包括一个或多个所述特征向量。利用聚类算法根据所述权限信息对所述训练样本的特征向量集进行聚类,实际是利用聚类算法对所述特征向量集进行训练的过程,聚类完成后可以得到聚类算法模型。所述聚类算法模型可以根据输入的特征向量中的权限信息得到所述特征向量对应的所述特征向量簇。
对类型相似的训练样本得到的特征向量集分为一类有利于提高分类精度。
步骤103、以所述特征向量簇为单位,利用数据降维算法对所述特征向量簇中所述特征向量进行特征选择,并得到与所述特征向量簇对应的特征选择字典;
由于提取的所述训练样本的所述特征数据之间可能具有相关性,因此可以通过进行特征选择保留对威胁度评估具有重要作用的特征数据,并去除冗余。由于特征向量簇中的特征向量类似,因此以所述特征向量簇为单位,利用数据降维算法对所述特征向量簇中所述特征向量进行特征选择,保留所述特征向量中的关键特征。由于不同特征向量簇的特点不同,因此,经过特征选择后,不同特征向量簇里面的特征及特征数量可能不同。
根据对所述特征向量簇中所述特征向量进行特征选择的结果,得到与所述特征向量簇对应的特征选择字典,所述特征选择字典包括对特征向量进行特征选择或特征提取的具体信息,如提取哪些特征的信息。所述特征选择字典与所述特征向量簇一一对应。
步骤104、对所述特征向量簇中所述特征向量使用预设的机器学习算法进行分类,所述机器学习算法为多个;根据分类结果获取各个所述机器学习算法的预设指标;根据所述预设指标获取与所述特征向量簇对应的所述机器学习算法,得到分类算法模型;
分别对各个所述特征向量簇中所述特征向量使用预设的机器学习算法进行分类,所述预设的机器学习算法为多个。所述机器学习算法可以根据所述权限信息和所述附加特征信息对各个所述特征向量簇中所述特征向量进行分类。对于每一个所述特征向量簇中所述特征向量均可以得到预设的多个所述机器学习算法的分类结果,所述分类结果可以为与所述特征向量对应的训练样本为恶性应用或良性应用。
由于所述测试样本的威胁度情况(恶性应用或良性应用)是已知的,具体可通过所述唯一标识符进行查询。因此,根据所述分类结果可以获取各个所述机器学习算法对每个所述特征向量簇中特征向量进行分类的预设指标,如所述预设指标可以为AUC。根据所述预设指标的大小获取与所述特征向量簇对应的所述机器学习算法,如对所述特征向量簇中所述特征向量进行分类得到的AUC值最高的机器学习算法。这样,每个特征向量簇对应一个机器学习算法,从而得到分类算法模型。
所述分类算法模型可以根据输入的所述特征向量簇获取用于对所述特征向量簇进行分类的机器学习算法。
比如,所述特征向量簇包括特征向量簇1、特征向量簇2和特征向量簇3,所述机器学习算法包括机器学习算法1和机器学习算法2。则对特征向量簇1分别利用机器学习算法1和机器学习算法2进行分类,假如分类后机器学习算法1的AUC值较高,则与特征向量簇1对应的机器学习算法为机器学习算法1。类似地,可以得到与特征向量簇2和特征向量簇3对应的机器学习算法。
步骤105、根据所述预处理算法、所述聚类算法模型、所述特征选择字典和所述分类算法模型建立Android应用威胁度评估模型。
根据所述预处理算法、所述聚类算法模型、所述特征选择字典和所述分类算法模型建立Android应用威胁度评估模型。所述Android应用威胁度评估模型可以对输入的测试样本利用所述预处理算法进行预处理,得到所述测试样本的特征向量;利用所述聚类算法模型对所述测试样本进行聚类,得到所述测试样本对应的特征向量簇;利用所述特征选择字典对所述测试样本进行特征选择;利用所述分类算法模型对进行特征选择后的所述测试样本的所述特征向量进行分类,得到与所述特征向量对应的所述测试样本的威胁度评估结果,如所述测试样本为良性或恶性。
本发明实施例先根据权限信息进行预分类,再利用对应的机器学习算法根据权限信息及附加特征信息进一步分类得到应用的威胁度,通过采用多类特征数据,以及针对不同类型的应用采用不同的机器学习算法进行评估,提高了分类精度,能够实现对恶意样本的高精度检测;同时使得打分规则覆盖了整个打分区间,提高了应用威胁度评估的普适性。
进一步地,基于上述实施例,所述附加特征信息具体包括:敏感API信息、敏感字符串信息、组件activity信息、组件Broadcast Receiver信息以及native代码信息、动态代码信息、加密代码信息和反射代码信息;其中,所述组件activity信息和所述组件BroadcastReceiver信息包括action信息。
图2为本发明实施例提供的另一Android应用威胁度评估模型建立方法流程图。如图2所示,所述方法包括:
步骤1010、根据预设的预处理算法提取训练样本的特征数据,所述训练样本包括恶意应用和良性应用,所述特征数据包括权限信息和附加特征信息,所述附加特征信息具体包括:敏感API信息、敏感字符串信息、组件activity信息、组件Broadcast Receiver信息以及native代码信息、动态代码信息、加密代码信息和反射代码信息;其中,所述组件activity信息和所述组件Broadcast Receiver信息包括action信息;并根据所述特征数据的状态构建特征向量;
所述附加特征信息为除所述权限信息外可以用来判定应用威胁度的特征,其中,所述敏感API信息如发送短信的API("android/telephony/gsm/SmsManager;->sendTextMessage");所述敏感字符串信息如执行shell脚本的命令("/system/bin/sh");组件activity、Broadcast Receiver在静态注册时,需要在其intent-filter节点写上对应要接受广播的action,所述组件activity信息和所述组件Broadcast Receiver信息包括action信息,所述action信息包括可以接收的信息类型;恶意应用常利用所述native代码信息、所述动态代码信息、所述加密代码信息和所述反射代码信息反解析,因此,所述附加特征信息还包括所述native代码信息、动态代码信息、加密代码信息和反射代码信息。
其中,所述权限信息、所述组件activity信息和所述组件Broadcast Receiver信息可以通过AndroidManifest.xml文件获取;所述敏感API信息、所述敏感字符串信息、所述native代码信息、所述动态代码信息、所述加密代码信息和所述反射代码信息可以利用.dex文件获取。
根据所述特征数据的状态构建特征向量,所述特征数据中存在的元素特征为1,不存在的元素特征为0。
步骤102、利用聚类算法,根据所述权限信息对所述训练样本的特征向量集进行聚类,将所述特征向量集分为不同的特征向量簇,得到聚类算法模型;
步骤103、以所述特征向量簇为单位,利用数据降维算法对所述特征向量簇中所述特征向量进行特征选择,并得到与所述特征向量簇对应的特征选择字典;
步骤104、对所述特征向量簇中所述特征向量使用预设的机器学习算法进行分类,所述机器学习算法为多个;根据分类结果获取各个所述机器学习算法的预设指标;根据所述预设指标获取与所述特征向量簇对应的所述机器学习算法,得到分类算法模型;
步骤105、根据所述预处理算法、所述聚类算法模型、所述特征选择字典和所述分类算法模型建立Android应用威胁度评估模型。
其中,步骤102~步骤105与上述实施例相同,此处不再赘述。
在上述实施例的基础上,本发明实施例通过提取权限信息及可以反映威胁度的、更具代表性的多种附加特征信息,进而构建特征向量及进一步建立威胁度评估模型,可以进一步提高威胁度评估的精度。
进一步地,基于上述实施例,在所述得到与所述特征向量簇对应的特征选择字典之后,所述对所述特征向量簇中所述特征向量使用预设的机器学习算法进行分类之前,所述方法还包括:对所述特征向量集进行数据标准化处理。
由于根据所述特征数据的状态构建特征向量,所述特征数据中存在的元素的特征为1,不存在的元素的特征为0。因此,特征向量中的数据为0、1构成的数据。为进一步使得所述特征向量更利于计算机处理,并且降低数据的稀疏度,以及解决程序内存耗尽问题,可以在所述得到与所述特征向量簇对应的特征选择字典之后,所述进行特征选择后的所述特征向量簇中所述特征向量使用预设的机器学习算法进行分类之前,对所述特征向量集进行数据标准化处理。可以使用scikit-learn工具中的方法preprocessing.scale()对所述特征向量集进行数据标准化处理。
进一步地,基于上述实施例,所述聚类算法包括K-means算法。K-means算法为进行聚类分析的有效算法。在上述实施例的基础上,采用K-means算法对所述训练样本的特征向量集进行聚类,有利于进一步提高分类精度。
进一步地,基于上述实施例,所述数据降维算法包括PCA或LDA。PCA(主成分分析法)的思想是将n维特征映射到k维上(k<n),这k维是全新的正交特征。这k维特征称为主成分,是重新构造出来的k维特征,而不是简单地从n维特征中去除其余n-k维特征。LDA(Latent Dirichlet Allocation)是一种文档主题生成模型,也称为一个三层贝叶斯概率模型,包含词、主题和文档三层结构。
在上述实施例的基础上,本发明实施例采用PCA或LDA对所述特征向量簇中特征向量进行特征选择,进一步提高了特征向量中特征的针对性,从而进一步提高了分类精度。
进一步地,基于上述实施例,所述预设的机器学习算法包括Nearest Neighbors、Linear SVM、RBF SVM、Decision Tree、Random Forest、AdaBoost、LogisticRegression、GradientBoostingClassifier和MLPClassifier。
所述预设的机器学习算法可以为9种,所述预设的机器学习算法包括NearestNeighbors(近邻取样算法)、Linear SVM(线性支持向量机算法)、RBF SVM(径向基网络支持向量机算法)、Decision Tree(决策树算法)、Random Forest(随机森林算法)、AdaBoost、LogisticRegression(逻辑回归算法)、GradientBoostingClassifier和MLPClassifier(多层感知器分类器)。
利用上述9种机器学习算法,根据所述特征数据对所述特征向量簇中所述特征向量进行分类,所述特征数据包括权限信息和附加特征信息,根据分类结果获取各个所述机器学习算法针对各簇特征向量簇中特征向量分类的预设指标;根据所述预设指标获取与所述特征向量簇对应的所述机器学习算法,得到分类算法模型。
在上述实施例的基础上,本发明实施例通过采用9种不同的机器学习算法对训练样本进行分类,进而得到与特征向量簇对应的机器学习算法,有利于提高分类的针对性,进一步提高分类精度。
下面进一步通过统计数据说明本发明实施例提供的Android应用威胁度评估模型的性能。
如表1所示,通过对比9种机器学习算法只使用权限信息作为特征数据进行分类,以及使用权限信息及敏感API信息、敏感字符串信息、组件activity信息的action信息、组件Broadcast Receiver信息的action信息以及native代码信息、动态代码信息、加密代码信息和反射代码信息作为特征数据进行分类,根据分类评价指标精确度、召回率和调平均数可知后者的性能更好。
表1
表1中数据说明采用多类特征数据进行分类与只采用权限信息进行分类,分类的性能更好,如精确度、召回率、调和平均数更高。本发明实施例中,在先进行预分类的基础上,再利用多类特征进行分类,分类性能得到进一步提高。预分类中,根据权限信息进行预分类,将权限相似的应用分为一簇(特征向量簇),然后针对每一簇基于上述多类特征利用9种机器学习算法进行分类,选取分类效果最好的机器学习算法作为相应特征向量簇的分类算法。
在聚类实验中(K-means聚类),第8次实验效果最好,即选择了8簇的数据(分为8簇),最后这8簇数据对应的算法(最优算法)分别如下(括号内为对应的AUC值):
Decision Tree(0.9937),GradientBoosting(0.9380),RBF SVM(0.9719),RandomForest(0.8697),MLP(0.8821),AdaBoost(0.9739),Random Forest(0.9233),RandomForest(0.8527)。
由此可知,本发明实施例的分类性能得到明显提高。
威胁度值可以用来评估样本的威胁度。所述威胁度值可以利用scikit-learn工具中9种机器学习算法的predict_proba方法生成。图3为本发明实施例提供的基于RBF SVM算法的样本威胁度分布图;图4为基于本发明实施例提供的Android应用威胁度评估模型的样本威胁度分布图。如图3所示,以RBF SVM算法为例,使用该算法生成全部样本的威胁度分布,结果显示,其分布并没有覆盖整个打分区间。如图4所示,根据本发明实施例所提供的评估模型,选取了与特征向量簇对应的最好的算法,得到测试样本的直方图,测试样本的打分覆盖了整个得分区间,由此证明该本发明实施例能够使得打分更加全面完整。另外,因为本发明实施例对不同的样本提取了更能体现相应样本特点的特征数据,并采用了不同的分类算法进行分析,理论上能够提高时间效率。图3和图4中的交叉线部分表示恶意应用和良性应用的重叠区间。
图5为基于本发明实施例提供的Android应用威胁度评估模型的Android应用威胁度评估方法流程图。如图5所示,所述方法包括:
步骤201、接收待处理应用;
Android应用威胁度评估系统接收待处理应用,以进一步判断所述待处理应用的威胁度。
步骤202、提取所述待处理应用的所述特征数据,所述特征数据包括所述权限信息和所述附加特征信息,根据所述特征数据的状态构建特征向量;
可以根据预设的预处理算法提取所述待处理应用的所述特征数据,其中,提取的特征数据与训练Android应用威胁度评估模型时所提取的特征数据相同。所述特征数据包括所述权限信息和所述附加特征信息,所述附加特征信息可以包括敏感API信息、敏感字符串信息、组件activity信息、组件Broadcast Receiver信息以及native代码信息、动态代码信息、加密代码信息和反射代码信息;其中,所述组件activity信息和所述组件BroadcastReceiver信息包括action信息。
根据所述特征数据的状态构建特征向量,所述特征数据中存在的元素特征为1,不存在的元素特征为0。
步骤203、将所述权限信息输入到所述聚类算法模型,对所述待处理应用进行预分类,得到与所述待处理应用对应的所述特征向量簇;
所述聚类算法模型可以根据输入的特征向量中的权限信息得到所述特征向量对应的所述特征向量簇。因此,将所述特征数据中的所述权限信息输入到所述聚类算法模型,可以得到所述待处理应用的特征向量对应的特征向量簇,也即可以得到与所述待处理应用对应的所述特征向量簇,实现对所述待处理应用的预分类。
步骤204、根据与所述待处理应用对应的所述特征向量簇获取所述特征选择字典,根据所述特征选择字典对所述特征向量进行特征选择;
所述特征选择字典与所述特征向量簇一一对应,所述特征选择字典包括对特征向量进行特征选择或特征提取的具体信息,不同的特征向量簇所对应的特征选择字典中所规定的特征选择或特征提取可能不同。因此,根据与所述待处理应用对应的所述特征向量簇获取与所述所述特征向量簇对应特征选择字典,并根据所述特征选择字典对所述特征向量进行特征选择,可以得到由与威胁度分析强相关的特征构成的特征向量,并可以对特征向量中的相关特征去冗余。
步骤205、根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应的所述机器学习算法,对所述特征向量使用所述机器学习算法进行分类,根据分类结果评估所述待处理应用的威胁度。
分类算法模型中,特征向量簇与机器学习算法一一对应。因此,根据分类算法模型及与所述待处理应用对应的所述特征向量簇可以获取与所述特征向量簇对应的所述机器学习算法,利用所述机器学习算法对进行特征选择后的所述特征向量进行分类,根据分类结果评估所述待处理应用的威胁度,即所述待处理应用为恶性应用或良性应用。所述特征向量进行特征选择后,也可以经过数据标准化处理后,再利用所述机器学习算法进行分类。具体地,可以设定具体的阈值,如威胁度值大于50为良性应用,威胁度值小于50为恶性应用。所述威胁度值可以利用scikit-learn工具中9种机器学习算法的predict_proba方法生成。
本发明实施例先根据权限信息进行预分类,再利用对应的机器学习算法根据权限信息及附加特征信息进一步分类得到应用的威胁度,通过采用多类特征数据,以及针对不同类型的应用采用不同的机器学习算法进行评估,提高了分类精度,能够实现对恶意样本的高精度检测;同时使得打分规则覆盖了整个打分区间,提高了应用威胁度评估的普适性。
图6为本发明实施例提供的Android应用威胁度评估系统的结构示意图。如图6所示,所述系统包括接收模块10、预处理模块20、预分类模块30、特征选择模块40和评估模块50,其中:
所述接收模块10具体用于接收待处理应用;
所述接收模块10接收待处理应用,以供进一步判断所述待处理应用的威胁度。
所述预处理模块20具体用于提取所述待处理应用的所述特征数据,所述特征数据包括所述权限信息和所述附加特征信息,根据所述特征数据的状态构建特征向量;
所述预处理模块20可以根据预设的预处理算法提取所述待处理应用的所述特征数据,其中,提取的特征数据与训练Android应用威胁度评估模型时所提取的特征数据相同。所述特征数据包括所述权限信息和所述附加特征信息,所述附加特征信息可以包括敏感API信息、敏感字符串信息、组件activity信息、组件Broadcast Receiver信息以及native代码信息、动态代码信息、加密代码信息和反射代码信息;其中,所述组件activity信息和所述组件Broadcast Receiver信息包括action信息。
根据所述特征数据的状态构建特征向量,所述特征数据中存在的元素特征为1,不存在的元素特征为0。
所述预分类模块30具体用于将所述权限信息输入到所述聚类算法模型,对所述待处理应用进行预分类,得到与所述待处理应用对应的所述特征向量簇;
所述预分类模块30将所述特征数据中的所述权限信息输入到所述聚类算法模型,可以得到所述待处理应用的特征向量对应的特征向量簇,也即可以得到与所述待处理应用对应的所述特征向量簇,实现对所述待处理应用的预分类。
所述特征选择模块40具体用于根据与所述待处理应用对应的所述特征向量簇获取所述特征选择字典,根据所述特征选择字典对所述特征向量进行特征选择;
所述特征选择模块40根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应特征选择字典,并根据所述特征选择字典对所述特征向量进行特征选择,可以得到由与威胁度分析强相关的特征构成的特征向量,并可以对特征向量中的相关特征去冗余。
所述评估模块50具体用于根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应的所述机器学习算法,对所述特征向量使用所述机器学习算法进行分类,根据分类结果评估所述待处理应用的威胁度。
所述评估模块50根据分类算法模型及与所述待处理应用对应的所述特征向量簇可以获取与所述特征向量簇对应的所述机器学习算法,利用所述机器学习算法对进行特征选择后的所述特征向量进行分类,根据分类结果评估所述待处理应用的威胁度,即所述待处理应用为恶性应用或良性应用。所述特征向量进行特征选择后,也可以经过数据标准化处理后,再利用所述机器学习算法进行分类。具体地,可以根据威胁度的评分值,设定具体的阈值进行决策,得出所述待处理应用为恶性应用或良性应用。
本发明实施例先根据权限信息进行预分类,再利用对应的机器学习算法根据权限信息及附加特征信息进一步分类得到应用的威胁度,通过采用多类特征数据,以及针对不同类型的应用采用不同的机器学习算法进行评估,提高了分类精度,能够实现对恶意样本的高精度检测;同时使得打分规则覆盖了整个打分区间,提高了应用威胁度评估的普适性。
本发明实施例提供的Android应用威胁度评估模型的评估方法及评估系统基于上述实施例提供的Android应用威胁度评估模型,具体原理可参照前述实施例,此处不再赘述。
图7为本发明实施例提供的计算机设备的结构示意图。如图7所示,所述计算机设备包括处理器701、存储器702和总线703。其中,所述处理器701和所述存储器702通过所述总线703完成相互间的通信;所述处理器701用于调用所述存储器702中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:接收待处理应用;提取所述待处理应用的所述特征数据,所述特征数据包括所述权限信息和所述附加特征信息,根据所述特征数据的状态构建特征向量;将所述权限信息输入到所述聚类算法模型,对所述待处理应用进行预分类,得到与所述待处理应用对应的所述特征向量簇;根据与所述待处理应用对应的所述特征向量簇获取所述特征选择字典,根据所述特征选择字典对所述特征向量进行特征选择;根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应的所述机器学习算法,对所述特征向量使用所述机器学习算法进行分类,根据分类结果评估所述待处理应用的威胁度。
本发明实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:接收待处理应用;提取所述待处理应用的所述特征数据,所述特征数据包括所述权限信息和所述附加特征信息,根据所述特征数据的状态构建特征向量;将所述权限信息输入到所述聚类算法模型,对所述待处理应用进行预分类,得到与所述待处理应用对应的所述特征向量簇;根据与所述待处理应用对应的所述特征向量簇获取所述特征选择字典,根据所述特征选择字典对所述特征向量进行特征选择;根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应的所述机器学习算法,对所述特征向量使用所述机器学习算法进行分类,根据分类结果评估所述待处理应用的威胁度。
本发明实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:接收待处理应用;提取所述待处理应用的所述特征数据,所述特征数据包括所述权限信息和所述附加特征信息,根据所述特征数据的状态构建特征向量;将所述权限信息输入到所述聚类算法模型,对所述待处理应用进行预分类,得到与所述待处理应用对应的所述特征向量簇;根据与所述待处理应用对应的所述特征向量簇获取所述特征选择字典,根据所述特征选择字典对所述特征向量进行特征选择;根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应的所述机器学习算法,对所述特征向量使用所述机器学习算法进行分类,根据分类结果评估所述待处理应用的威胁度。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的计算机设备等实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种Android应用威胁度评估模型建立方法,其特征在于,包括:
根据预设的预处理算法提取训练样本的特征数据,所述训练样本包括恶意应用和良性应用,所述特征数据包括权限信息和附加特征信息,并根据所述特征数据的状态构建特征向量;
利用聚类算法,根据所述权限信息对所述训练样本的特征向量集进行聚类,将所述特征向量集分为不同的特征向量簇,得到聚类算法模型;
以所述特征向量簇为单位,利用数据降维算法对所述特征向量簇中所述特征向量进行特征选择,并得到与所述特征向量簇对应的特征选择字典;
对所述特征向量簇中所述特征向量使用预设的机器学习算法进行分类,所述机器学习算法为多个;根据分类结果获取各个所述机器学习算法的预设指标;根据所述预设指标获取与所述特征向量簇对应的所述机器学习算法,得到分类算法模型;
根据所述预处理算法、所述聚类算法模型、所述特征选择字典和所述分类算法模型建立Android应用威胁度评估模型。
2.根据权利要求1所述的方法,其特征在于,所述附加特征信息具体包括:敏感API信息、敏感字符串信息、组件activity信息、组件Broadcast Receiver信息以及native代码信息、动态代码信息、加密代码信息和反射代码信息;其中,所述组件activity信息和所述组件Broadcast Receiver信息包括action信息。
3.根据权利要求1所述的方法,其特征在于,在所述得到与所述特征向量簇对应的特征选择字典之后,所述对所述特征向量簇中所述特征向量使用预设的机器学习算法进行分类之前,所述方法还包括:
对所述特征向量集进行数据标准化处理。
4.根据权利要求1所述的方法,其特征在于,所述聚类算法包括K-means算法。
5.根据权利要求1所述的方法,其特征在于,所述数据降维算法包括PCA或LDA。
6.根据权利要求1所述的方法,其特征在于,所述预设的机器学习算法包括NearestNeighbors、Linear SVM、RBF SVM、Decision Tree、Random Forest、AdaBoost、LogisticRegression、GradientBoostingClassifier和MLPClassifier。
7.一种基于权利要求1~6任一所述的Android应用威胁度评估模型的Android应用威胁度评估方法,其特征在于,包括:
接收待处理应用;
提取所述待处理应用的所述特征数据,所述特征数据包括所述权限信息和所述附加特征信息,根据所述特征数据的状态构建特征向量;
将所述权限信息输入到所述聚类算法模型,对所述待处理应用进行预分类,得到与所述待处理应用对应的所述特征向量簇;
根据与所述待处理应用对应的所述特征向量簇获取所述特征选择字典,根据所述特征选择字典对所述特征向量进行特征选择;
根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应的所述机器学习算法,对所述特征向量使用所述机器学习算法进行分类,根据分类结果评估所述待处理应用的威胁度。
8.一种基于权利要求7所述方法的Android应用威胁度评估系统,其特征在于,所述系统包括:
接收模块,所述接收模块具体用于接收待处理应用;
预处理模块,所述预处理模块具体用于提取所述待处理应用的所述特征数据,所述特征数据包括所述权限信息和所述附加特征信息,根据所述特征数据的状态构建特征向量;
预分类模块,所述预分类模块具体用于将所述权限信息输入到所述聚类算法模型,对所述待处理应用进行预分类,得到与所述待处理应用对应的所述特征向量簇;
特征选择模块,所述特征选择模块具体用于根据与所述待处理应用对应的所述特征向量簇获取所述特征选择字典,根据所述特征选择字典对所述特征向量进行特征选择;
评估模块,所述评估模块具体用于根据与所述待处理应用对应的所述特征向量簇获取与所述特征向量簇对应的所述机器学习算法,对所述特征向量使用所述机器学习算法进行分类,根据分类结果评估所述待处理应用的威胁度。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述处理器和所述存储器通过总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至7任一所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一所述的方法。
CN201810457339.2A 2018-05-14 2018-05-14 一种Android应用威胁度评估模型建立方法、评估方法及系统 Pending CN108717511A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810457339.2A CN108717511A (zh) 2018-05-14 2018-05-14 一种Android应用威胁度评估模型建立方法、评估方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810457339.2A CN108717511A (zh) 2018-05-14 2018-05-14 一种Android应用威胁度评估模型建立方法、评估方法及系统

Publications (1)

Publication Number Publication Date
CN108717511A true CN108717511A (zh) 2018-10-30

Family

ID=63899873

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810457339.2A Pending CN108717511A (zh) 2018-05-14 2018-05-14 一种Android应用威胁度评估模型建立方法、评估方法及系统

Country Status (1)

Country Link
CN (1) CN108717511A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109508545A (zh) * 2018-11-09 2019-03-22 北京大学 一种基于稀疏表示和模型融合的Android Malware分类方法
CN109933984A (zh) * 2019-02-15 2019-06-25 中时瑞安(北京)网络科技有限责任公司 一种最佳聚类结果筛选方法、装置和电子设备
CN112434291A (zh) * 2019-08-26 2021-03-02 中移(苏州)软件技术有限公司 一种应用程序识别方法及装置、设备、存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104376262A (zh) * 2014-12-08 2015-02-25 中国科学院深圳先进技术研究院 一种基于Dalvik指令和权限组合的安卓恶意软件检测方法
CN107341401A (zh) * 2017-06-21 2017-11-10 清华大学 一种基于机器学习的恶意应用监测方法和设备
CN107392021A (zh) * 2017-07-20 2017-11-24 中南大学 一种基于多类特征的Android恶意应用检测方法
CN107992746A (zh) * 2017-12-14 2018-05-04 华中师范大学 恶意行为挖掘方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104376262A (zh) * 2014-12-08 2015-02-25 中国科学院深圳先进技术研究院 一种基于Dalvik指令和权限组合的安卓恶意软件检测方法
CN107341401A (zh) * 2017-06-21 2017-11-10 清华大学 一种基于机器学习的恶意应用监测方法和设备
CN107392021A (zh) * 2017-07-20 2017-11-24 中南大学 一种基于多类特征的Android恶意应用检测方法
CN107992746A (zh) * 2017-12-14 2018-05-04 华中师范大学 恶意行为挖掘方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109508545A (zh) * 2018-11-09 2019-03-22 北京大学 一种基于稀疏表示和模型融合的Android Malware分类方法
CN109508545B (zh) * 2018-11-09 2021-06-04 北京大学 一种基于稀疏表示和模型融合的Android Malware分类方法
CN109933984A (zh) * 2019-02-15 2019-06-25 中时瑞安(北京)网络科技有限责任公司 一种最佳聚类结果筛选方法、装置和电子设备
CN109933984B (zh) * 2019-02-15 2020-10-27 中时瑞安(北京)网络科技有限责任公司 一种最佳聚类结果筛选方法、装置和电子设备
CN112434291A (zh) * 2019-08-26 2021-03-02 中移(苏州)软件技术有限公司 一种应用程序识别方法及装置、设备、存储介质

Similar Documents

Publication Publication Date Title
US11100220B2 (en) Data type recognition, model training and risk recognition methods, apparatuses and devices
CN110704840A (zh) 一种基于卷积神经网络cnn的恶意软件检测方法
WO2017003666A1 (en) Method and apparatus for large scale machine learning
USRE47830E1 (en) Computing device and method using associative pattern memory using recognition codes for input patterns
CN109598124A (zh) 一种webshell检测方法以及装置
CN111915437A (zh) 基于rnn的反洗钱模型的训练方法、装置、设备及介质
CN109829302A (zh) Android恶意应用家族分类方法、装置与电子设备
CN110830489B (zh) 基于内容抽象表示的对抗式欺诈网站检测方法及系统
CN107368856A (zh) 恶意软件的聚类方法及装置、计算机装置及可读存储介质
CN110287311B (zh) 文本分类方法及装置、存储介质、计算机设备
CN108717511A (zh) 一种Android应用威胁度评估模型建立方法、评估方法及系统
CN107256357A (zh) 基于深度学习的安卓恶意应用的检测和分析方法
CN112437053B (zh) 入侵检测方法及装置
CN109840413A (zh) 一种钓鱼网站检测方法及装置
CN112052451A (zh) 一种webshell检测方法和装置
CN112765428A (zh) 恶意软件家族聚类及识别方法及系统
CN115801374A (zh) 网络入侵数据分类方法、装置、电子设备及存储介质
CN115577357A (zh) 一种基于堆叠集成技术的Android恶意软件检测方法
Nicheporuk et al. An Android Malware Detection Method Based on CNN Mixed-Data Model.
CN108763961A (zh) 一种基于大数据的隐私数据分级方法和装置
CN111144453A (zh) 构建多模型融合计算模型的方法及设备、网站数据识别方法及设备
CN114581702A (zh) 图像分类方法、装置、计算机设备及计算机可读存储介质
CN114169439A (zh) 异常通信号码的识别方法、装置、电子设备和可读介质
CN109800797A (zh) 基于ai的文件黑白判断方法、装置及设备
CN108985052A (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

Application publication date: 20181030

RJ01 Rejection of invention patent application after publication