违法应用程序的确定方法、系统、装置及可读存储介质

文档序号:291271 发布日期:2021-11-23 浏览:3次 >En<

阅读说明:本技术 违法应用程序的确定方法、系统、装置及可读存储介质 (Method, system, device and readable storage medium for determining illegal application program ) 是由 孙学军 宋建昌 于 2021-06-11 设计创作,主要内容包括:本申请提供了一种违法应用程序的确定方法、系统、装置及可读存储介质。确定方法包括:采集软件分发网站的应用程序信息;采用分类模型对所述应用程序信息进行分类,获取涉嫌违法应用程序;获取涉嫌违法应用程序跟服务器通信的地址,由通信的地址获取服务器域名或者IP地址,根据服务器域名或IP地址获取涉嫌违法应用程序的关联公司信息;和/或,通过从涉嫌违法应用程序的信息中获取涉嫌违法应用程序的运营信息和开发信息;根据关联公司信息和/或运营信息和开发信息确定涉嫌违法应用程序的合法性。因此,本申请能够提前自动识别确定违法应用程序,为公共安全监测提供了目标,具有实战效果。(The application provides a method, a system, a device and a readable storage medium for determining illegal application programs. The determination method comprises the following steps: collecting application program information of a software distribution website; classifying the application program information by adopting a classification model to obtain suspected illegal application programs; acquiring the communication address of the suspected illegal application program and the server, acquiring a server domain name or an IP address according to the communication address, and acquiring the related company information of the suspected illegal application program according to the server domain name or the IP address; and/or acquiring operation information and development information of the suspected illegal application program from the information of the suspected illegal application program; and determining the legality of the suspected illegal application program according to the associated company information and/or the operation information and the development information. Therefore, the illegal application program can be automatically identified and determined in advance, a target is provided for public safety monitoring, and the method has an actual combat effect.)

违法应用程序的确定方法、系统、装置及可读存储介质

技术领域

本申请涉及人工智能计算领域,特别是涉及一种违法应用程序的确定方法、系统、装置及可读存储介质。

背景技术

随着我国经济快速发展,移动互联网成为经济生活中必不可少的一部分。但是,通过手机APP(Application,应用程序)进行的经济异常行为会对目标人群的财产安全造成了严重危害。涉众型经济异常行为涉及不特定群体、被害者人数众多。随着移动互联网技术、区块链技术、金融创新等内容的发展,涉众型经济异常行为往往以网站或者应用程序为载体,以创新、分享赚钱等噱头,由一个或数个主要异常行为人发起,指使或唆使多个行为人分工协作共同传播。

由于应用程序市场上的软件众多,这些系统涉及到生活中的方方面面,包括购物、视频、资讯、体育、理财、游戏等,如何区分哪些应用程序的行为是异常的,具有重要的意义;针对区分出来的具有异常行为的应用程序需要来探测这些应用程序是由哪些公司或者个人开发和维护的,是对打击非法应用程序的一个重要研判手段,只要找到现实社会的主体,才能从根源上来打击这类违法行为。

现有技术对于通过应用程序媒介进行涉众经济类型的异常行为缺乏非常有效的预防机制,而且没有很好地技术手段来辅助研判相关的应用程序。

发明内容

本申请主要解决的技术问题是提供一种违法应用程序的确定方法、系统、装置以及计算机存储介质,能够提前自动识别确定违法应用程序,为公共安全监测和实体勘察提供了目标,具有实战效果。

为解决上述技术问题,本申请采用的一个技术方案是:提供一种违法应用程序的确定方法,确定方法包括:

采集软件分发网站的应用程序信息;

采用分类模型对所述应用程序信息进行分类,获取涉嫌违法应用程序;

获取所述涉嫌违法应用程序与服务器通信的地址,根据所述通信的地址获取服务器域名或者IP地址,根据所述服务器域名或IP地址获取所述涉嫌违法应用程序的关联公司信息;和/或,从所述涉嫌违法应用程序的信息中获取所述涉嫌违法应用程序的运营信息和开发信息;

根据所述关联公司信息和/或所述运营信息和开发信息确定所述涉嫌违法应用程序的合法性。

其中,采集的所述应用程序的信息包括:应用程序名称、应用程序描述信息、应用程序安装包以及所述应用程序所属公司。

其中,在所述采用分类模型对所述应用程序信息进行分类之前,所述方法还包括:对所述分类模型进行训练;

对所述分类模型进行训练的步骤具体包括:

采集多个应用程序样本,每一应用程序样本对应一分类,将所述应用程序样本分为训练应用程序样本和验证应用程序样本;

将所述应用程序样本的文本信息进行向量化表示,转换成255维度词向量;

将所述训练应用程序样本对应的词向量与分类输入初始分类模型进行模型训练;

将所述验证应用程序样本对应的词向量输入经过训练后的分类模型,并将所述分类模型的输出结果与所述验证应用程序样本对应的分类进行比较,若比较到所述输出结果与所述验证应用程序样本对应的分类的正确率达到预设的阈值,则完成所述分类模型的训练。

其中,在所述采用分类模型对所述应用程序信息进行分类之前包括:

根据所述应用程序的名称、所述应用程序描述信息的信息-摘要值或者所述应用程序安装包的信息-摘要值对采集的所述应用程序进行去重和合并。

其中,采用分类模型对所述应用程序信息进行分类,得到涉嫌违法应用程序的步骤包括:

通过所述分类模型计算每一应用程序的类别和分类模型的精确度作为分类的置信度,输出置信度最高的分类作为所述应用程序的分类。

其中,所述获取所述涉嫌违法应用程序与服务器通信的地址,根据所述通信的地址获取服务器域名或者IP地址,根据所述服务器域名或 IP地址获取所述涉嫌违法应用程序的关联公司信息的步骤包括:

将所述应用程序安装包安装到沙箱中;

在沙箱中安装抓包软件,并启动抓包程序,将通讯包输入到文件中;

通过所述沙箱运行所述应用程序,并操作所述应用程序预设时间使得所述应用程序数据通讯的内容被保存到所述文件中;

停止所述应用程序的运行,并停止抓包程序;

将所述文件拷贝到所述沙箱外部,并在所述沙箱中删除所述文件,为下一个应用程序检测做准备;

解包所述文件,记录解析得到的域名请求和地址请求,以获取到所述域名和IP地址;

基于所述域名和IP地址,根据所述应用程序的许可备案信息,将域名和IP地址关联到实体公司。

其中,从所述涉嫌违法应用程序的信息中获取所述涉嫌违法应用程序的运营信息和开发信息的步骤包括:

将所述应用程序安装包进行反解压,获取特定编码格式的代码文件,进一步将所述编码格式的代码文件进行反编译,获取源代码文件;

解析所述源代码文件的清单文件,获取所述应用程序的应用程序及其组件信息;

根据所述应用程序的证书信息获取所述证书使用者的身份信息;

将所述应用程序的开发信息,与所述证书使用者的身份信息进行正则匹配,获取所述应用程序的敏感信息,通过所述敏感信息与所述应用程序的行政登记信息分析所述应用程序的社会主体信息;

根据所述社会主体信息获取所述应用程序的运营信息和开发信息。

为解决上述技术问题,本申请采用的另一个技术方案是:提供一种违法应用程序的确认系统,述确认系统包括:

采集模块,用于采集软件分发网站的应用程序信息;

分类模块,用于采用分类模型对所述应用程序信息进行分类,得到涉嫌违法应用程序;

获取模块,用于获取所述涉嫌违法应用程序与服务器通信的地址,根据所述通信的地址获取服务器域名或者IP地址,根据所述服务器域名或IP地址获取所述涉嫌违法应用程序的关联公司信息;和/或,从所述涉嫌违法应用程序的信息中获取所述涉嫌违法应用程序的运营信息和开发信息;

确定模块,用于根据所述关联公司信息和/或所述运营信息和开发信息确定所述涉嫌违法应用程序的合法性。

为解决上述技术问题,本申请采用的另一个技术方案是:提供一种应用程序的确认装置,包括处理器以及存储器,所述处理器耦合所述存储器,所述存储器存储有计算机程序,所述处理器在工作时执行所述计算机程序以实现上述的方法。

为解决上述技术问题,本申请采用的又一个技术方案是:提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现上述的方法。

本申请的有益效果是:区别于现有技术的情况,本申请首先采集软件分发网站的应用程序信息,然后采用分类模型对应用程序信息进行分类,获取涉嫌违法应用程序,进而获取涉嫌违法应用程序跟服务器通信的地址,由通信的地址获取服务器域名或者IP地址,根据服务器域名或 IP地址获取涉嫌违法应用程序的关联公司信息;和/或,从涉嫌违法应用程序的信息中获取涉嫌违法应用程序的运营信息和开发信息;最后根据关联公司信息和/或运营信息和开发信息确定涉嫌违法应用程序的合法性。因此,本申请能够对应用程序找到实际的运营公司,为公共安全检测和实体勘察提供了目标性,提升了人工效率和发现的及时性。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,其中:

图1是本申请实施例提供一种违法应用程序的确定方法的流程图;

图2是本申请实施例提供的一种违法应用程序的确认方法的流程示意图;

图3是本申请实施例中分类模型训练的原理示意图;

图4是本申请实施例提供的另一种违法应用程序的确认方法的流程示意图;

图5是本申请实施例提供的另一种违法应用程序的确认方法的流程示意图;

图6是本申请实施例提供的一种违法应用程序的确认系统的结构示意图;

图7是本申请实施例提供的一种违法应用程序确定装置的结构示意图;

图8是本申请提供的计算机可读存储介质实施例的示意框图。

具体实施方式

下面结合附图和实施例,对本申请作进一步的详细描述。特别指出的是,以下实施例仅用于说明本申请,但不对本申请的范围进行限定。同样的,以下实施例仅为本申请的部分实施例而非全部实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

本申请中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。本申请实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

请参阅图1,图1是本申请实施例提供的一种违法应用程序的确定方法的流程图,如图1所示,本实施例的确定方法包括以下步骤:

步骤S1:采集软件分发网站的应用程序信息。

应用程序信息包括应用程序名称、应用程序描述信息、应用程序安装包以及应用程序所属公司。

步骤S2:采用分类模型对应用程序信息进行分类,获取涉嫌违法应用程序。

步骤S3:获取涉嫌违法应用程序与服务器通信的地址,根据通信的地址获取服务器域名或者IP地址,根据服务器域名或IP地址获取涉嫌违法应用程序的关联公司信息;和/或,从涉嫌违法应用程序的信息中获取涉嫌违法应用程序的运营信息和开发信息。

步骤S3中,包括三种方案:

第一种方案,获取涉嫌违法应用程序与服务器通信的地址,根据通信的地址获取服务器域名或者IP地址,根据服务器域名或IP地址获取涉嫌违法应用程序的关联公司信息。

第二种方案,从涉嫌违法应用程序的信息中获取涉嫌违法应用程序的运营信息和开发信息。

第三种方案,获取涉嫌违法应用程序与服务器通信的地址,根据通信的地址获取服务器域名或者IP地址,根据服务器域名或IP地址获取涉嫌违法应用程序的关联公司信息,并且从涉嫌违法应用程序的信息中获取涉嫌违法应用程序的运营信息和开发信息。

在实际应用中,以上三种方案的选择可以根据情况而决定。例如,在步骤S2获取涉嫌违法应用程序后,可首先通过第一种方案-沙盒探测的方式来获取涉嫌违法应用程序的关联公司信息,通过涉嫌违法应用程序的关联公司信息来确定涉嫌违法应用程序的最终合法性。也可以通过第二种方案-反向工程的方式来获取涉嫌违法应用程序的运营信息和开发信息,通过涉嫌违法应用程序的运营信息和开发信息来确定涉嫌违法应用程序的最终合法性。还可以通过第三种方式,就是先获取涉嫌违法应用程序的关联公司信息,在该关联公司信息明确度较低,无法很好地判断出涉嫌违法应用程序的合法性的情况下,进一步通过反向工程来获取涉嫌违法应用程序的运营信息和开发信息,以结合涉嫌违法应用程序的关联公司信息、运营信息和开发信息来最终确定其合法性。

步骤S4:根据关联公司信息和/或运营信息和开发信息确定涉嫌违法应用程序的合法性。

因此,本申请实施例可在应用程序上线的时候,即可对应用程序的合法性进行确认,能够提前自动识别确定违法应用程序,为公共安全监测和实体勘察提供了目标,具有实战效果。

步骤S1中:考虑到不同系统的应用程序下载渠道不同。例如IOS 系统的应用程序下载安装程序必须由苹果的应用商城上下载,安卓系统的应用程序可以通过很多渠道下载,这些应用程序下载到手机端就可以直接安装并运行。在采集过程中可以通过爬虫的方式在全网进行采集,主要采集4个信息:应用程序名称、应用程序描述信息、应用程序安装包以及应用程序所属公司,但是应用程序所属公司很多应用程序在发布时是都未附带,因此通常采集不到应用程序对应的公司。将采集的应用程序信息整理形成如下结构的数据表1:

表1:采集的应用程序信息登记

应用程序名称 应用程序描述信息 应用程序安装包 应用程序所属公司
**秀秀安卓版 功能描述等 下载地址和安装包 **公司
**圈应用程序 功能描述等 下载地址和安装包 **电子有限公司
**理财应用程序 功能描述等 下载地址和安装包

步骤S2:在采用分类模型进行分类前需先对模型进行训练。请参阅图2,图2是本申请实施例提供的一种违法应用程序的确认方法的流程示意图。如图2所示,步骤S2前的分类模型训练包括以下步骤:

步骤S21:采集多个应用程序样本,每一应用程序样本对应一分类,将应用程序样本分为训练应用程序样本和验证应用程序样本。

本步骤中,采集应用程序样本的方式可与步骤S1中的采集方式相同,在此不再赘述。

从网络上采集到应用程序样本后,可结合具有相关经验的部门对应用程序样本进行识别和分类。

步骤S22:将应用程序样本的文本信息进行向量化表示,转换成255 维度词向量。

为了进行分类模型的训练,首先要将应用程序样本的文本信息描述转换为向量的表示,才可以被分类模型机器所识别。可采用google公司的word2vec(word to vector,将单词转换成向量形式的工具)进行向量化表示。Word2vec是一种基于神经网络结构来训练词向量,最终可以将文本中的词语转换为比较小维度向量,例如255维度向量,有利于后续分类算法中提升速度。

训练完词向量后,就可以把应用程序描述等文本信息全部转换为词向量。

步骤S23:将训练应用程序样本对应的词向量与分类输入初始分类模型进行模型训练。

请进一步结合图3,图3是本申请实施例中分类模型训练的原理示意图。如图3所示,通过tensorflow(谷歌第二代机器学习系统)构建初始分类模型,将训练应用程序样本输入初始分类模型。找出卷积层、池化层和softmax层,以及对应的参数。初始分类模型通过反向传播算法,将初始分类模型输出的结果值与预先标记的应用程序分类目标值进行比对,计算误差,误差通过神经网络进行反向传播,从而影响各层的参数的变化,最终让结果与目标的误差达到最优,就是各层参数的最优值,这些参数就是训练分类模型的结果。

步骤S24:将验证应用程序样本对应的词向量输入经过训练后的分类模型,并将分类模型的输出结果与验证应用程序样本对应的分类进行比较,若比较到输出结果与验证应用程序样本对应的分类的正确率达到预设的阈值,则完成分类模型的训练。

分类模型训练完成后,使用验证应用程序样本输入到分类模型,得出每个验证的数据分类结果,将数据分类结果跟预先标记的验证应用程序样本分类结果比对,可以检测该分类模型的准确度。若准确度达到预设的阈值,则完成分类模型的训练,若准确度未达到预设的阈值,则重复步骤S23和步骤S24的训练,直至准确度达到预设的阈值。

完成分类模型的训练后,可通过该分类模型对步骤S1采集的应用程序进行分类。但有些应用程序可通过多个渠道发布,导致很多网站的应用程序有重复现象。为了分类结果的准确性与效率,在将采集到的应用程序信息输入分类模型前,根据应用程序的名称、应用程序描述信息的信息-摘要(message-digest algorithm 5,MD5)值或者应用程序安装包的信息-摘要值对采集的应用程序进行去重和合并。

具体而言,一实施例中,根据应用程序的名称进行去重,若应用程序的名称相同则保留一个应用程序,然后判断相同名称的应用程序的描述信息是否相同,若不同,则将保留的应用程序的描述信息和删除的应用程序的描述信息合并在一起,若相同,则将删除的应用程序的描述信息一并删除。

另一实施例中,可计算每个应用程序描述信息的MD5值,如果应用程序描述信息的MD5值一样,说明是同一个应用程序,只保留一个应用程序,删除另外的应用程序。针对应用程序描述信息的去留与前文的相同,在此不再赘述。

在又一实施例中,可计算每个应用程序安装包的MD5值,如果MD5 值一样,只保留一个应用程序,删除另外的应用程序。针对应用程序描述信息的去留与前文的相同,在此不再赘述。

经过去重和合并后,每个应用程序的名称和描述信息均不同,省去了大量的计算时间。

分类模型在实际分类中,原理与模型训练阶段差不多。将采集到的应用程序信息进行去重和合并后,进一步将应用程序进行向量化表示,进而输入将向量化信息输入已经训练好的分类模型中,计算其分类结果,将计算的结果作为应用程序的分类标签,并根据计算结果值和模型精确度的乘积作为分类的置信度。

在完成应用程序的分类后,对涉嫌违法应用程序,需获取该类型应用程序的运营公司或开发公司。本申请通过前文所述的步骤S3获取,如前文所述,主要包括三种方案,第一种方案主要通过让应用程序运行起来,获取应用程序跟服务器(例如后台服务器)通信的地址,由通信的地址获取后台服务器域名或者IP地址,从而为关联社会实体公司提供技术手段。

具体请参阅图4,图4是本申请实施例提供的另一种违法应用程序的确认方法的流程示意图。如图4所示,步骤S3的第一种方案包括以下子步骤:

步骤S311:将应用程序安装包安装到沙箱中。

可通过程序控制ANDROID(安卓)沙箱,将应用程序安装包自动安装到ANDROID沙箱中。

步骤S312:在沙箱中安装抓包软件,并启动抓包程序,将通讯包输入到文件中。软件可为tcpdump,文件可为pcap文件(数据报存储格式)。

步骤S313:通过沙箱运行应用程序,并操作应用程序预设时间使得应用程序数据通讯的内容被保存到文件中。

具体可控制鼠标在应用程序上进行点击和拖动操作30秒,使得应用程序数据通讯的内容就被tcpdump保存到pcap文件中。

步骤S314:停止应用程序的运行,并停止抓包程序。

具体可通过控制沙箱停止应用程序的运行,并停止tcpdump抓包程序。

步骤S315:将文件拷贝到沙箱外部,并在沙箱中删除文件,为下一个应用程序检测做准备。

步骤S316:解包文件,记录解析得到的域名请求和地址请求,以获取到域名和IP地址。

域名请求和地址请求可分别为dns请求和http请求。在解析得到dns 请求和http请求后,会存在很多后台域名和请求url,例如有抖音sdk的后台域名、个推sdk的后台域名、阿里支付宝sdk的域名,通用sdk的域名在域名中出现的频率会较高,真正的非法应用程序的后台域名的频率是非常低的。因此,解析得到dns请求和http请求,对各域名进行统计,将出现频率高于第一预设阈值的应用程序删除,将出现频率低于第二预设阈值的应用程序保留,将介于第一预设阈值和第二预设阈值的应用程序筛选出提供给相关的人员确定。或者可仅设置一个阈值,出现频率高于该阈值的应用程序删除,出现频率低于或等于该阈值的应用程序保留。

步骤S317:基于域名和IP地址,根据应用程序的许可备案信息,从而将域名和IP地址关联到实体公司。

备案许可信息可包括icp备案信息和whios信息。

icp备案信息应用程序在登记时相关部门要求企业上报的信息,其与域名相关,域名同样需要到相关部门进行备案,因此可以通过域名找到实体公司。Whois信息是在使用域名访问网站的时候,该域名要通过 dns解析成IP地址解析,解析过程需要付费的,该域名能被dns解析,需要使用该域名的企业给运营商交钱,这样就可以通过这些信息定位到具体的企业。

icp备案信息和whois信息都可以通过互联网上的服务查询到。

通过上面的方式能提取实际的应用程序的关联公司信息,例如运营公司信息,整个步骤都是基于ANDROID沙箱的自动控制完成,不需要人的参与。

在完成应用程序的公司探测后,如果没有找到实际的运营公司,例如域名没有备案、whois关联的公司在国外等。可以通过应用程序的逆向工程来探测一下应用程序是否有敏感信息,例如应用程序的证书信息、 package、电话号码、ip地址和url等,因为这些信息都有可能跟公司关联起来:证书信息中会带有公司信息、package中会公司专门的简称、电话号码会暴露公司,ip地址和域名也会暴露公司的信息。也就是前文步骤S2的第二种方案也可以在第一种方案完成后执行,还可以独立仅执行第二种方案。步骤S3的第二种方案具体介绍如下:

请参阅图5,图5是本申请实施例提供的另一种违法应用程序的确认方法的流程示意图。如图5所示,步骤S3的第二种方案包括以下子步骤:

步骤S321:将应用程序安装包进行反解压,获取特定编码格式的代码文件,进一步将编码格式的代码文件进行反编译,获取源代码文件。

通过apktool将应用程序安装包进行反解压,可将安装包进行逆向,获取到的语言文件,例如java文件的格式是特定编码格式,例如是dex 编码格式,然后通过dex2jar.bat工具将dex的java包进行反编译,获取 java源代码文件。

步骤S322:解析源代码文件的清单文件,获取应用程序的应用程序及其组件信息。

解析反向工程后的清单(manifest.xml文件),可获取应用程序的 package、mainactivity信息,其中包括activity、service等组件信息。

步骤S323:根据应用程序的证书信息获取证书使用者的身份信息。

具体的,根据应用程序的证书信息获取证书使用者的通用名、组织部门名、组织名、地址、省份等身份信息。

步骤S324:将应用程序的开发信息,与证书使用者的身份信息进行正则匹配,获取应用程序的敏感信息,通过敏感信息与应用程序的行政登记信息分析应用程序的社会主体信息。

对源文件和资源文件进行正则匹配,获取ip地址、域名和电话等敏感信息,通过该些敏感信息作为进一步线索跟其他数据,例如工商信息、 ip备案信息等行政登记信息进行分析,可以进一步进行分析判断异常行为的社会实体。

步骤S325:根据社会主体信息获取应用程序的运营信息和开发信息。

基于此,可基于应用程序逆向工程来发现应用程序运营或开发公司线索。

综上,本申请整个过程能够对具有异常行为的应用程序提供预防功能。一方面通过不断地发现的新的应用程序来判定应用程序是否有异常行为,另一方面,能够对应用程序找到实际的运营公司,提升了人工效率和发现的及时性。

本申请实施例还提供了一种违法应用程序的确认系统,用于执行前文所述的确认方法。具体请参阅图6,图6是本申请实施例提供的一种违法应用程序的确认系统的结构示意图。如图6所示,本实施例的确认系统60包括:

采集模块61,用于采集软件分发网站的应用程序信息。

分类模块62,用于采用分类模型对所述应用程序信息进行分类,得到涉嫌违法应用程序。

获取模块63,用于获取所述涉嫌违法应用程序与服务器通信的地址,根据所述通信的地址获取服务器域名或者IP地址,根据所述服务器域名或IP地址获取所述涉嫌违法应用程序的关联公司信息;和/或,从所述涉嫌违法应用程序的信息中获取所述涉嫌违法应用程序的运营信息和开发信息。

确定模块64,用于根据所述关联公司信息和/或所述运营信息和开发信息确定所述涉嫌违法应用程序的合法性。

可选的,采集的所述应用程序的信息包括:应用程序名称、应用程序描述信息、应用程序安装包以及所述应用程序所属公司。

可选的,还包括训练模块65,用于对分类模型进行训练。

采集模块61进一步采集多个应用程序样本,每一应用程序样本对应一分类,将应用程序样本分为训练应用程序样本和验证应用程序样本。

可选的,训练模块65将应用程序样本的文本信息进行向量化表示,转换成255维度词向量;将所述训练应用程序样本对应的词向量与分类输入初始分类模型进行模型训练;将所述验证应用程序样本对应的词向量输入经过训练后的分类模型,并将所述分类模型的输出结果与所述验证应用程序样本对应的分类进行比较,若比较到所述输出结果与所述验证应用程序样本对应的分类的正确率达到预设的阈值,则完成所述分类模型的训练。

可选的,还包括去重模块66,用于根据应用程序的名称、应用程序描述信息的MD5值或者所述应用程序安装包的MD5值对采集的所述应用程序进行去重和合并。

可选的,分类模块62通过所述分类模型计算每一应用程序的类别和分类模型的精确度作为分类的置信度,输出置信度最高的分类作为所述应用程序的分类。

可选的,获取模块63进一步将所述应用程序安装包安装到沙箱中;在沙箱中安装抓包软件,并启动抓包程序,将通讯包输入到文件中;通过所述沙箱运行所述应用程序,并操作所述应用程序预设时间使得所述应用程序数据通讯的内容被保存到所述文件中;停止所述应用程序的运行,并停止抓包程序;将所述文件拷贝到所述沙箱外部,并在所述沙箱中删除所述文件,为下一个应用程序检测做准备;解包所述文件,记录解析得到的域名请求和地址请求,以获取到所述域名和IP地址;基于所述域名和IP地址,根据所述应用程序的许可备案信息,将域名和IP地址关联到实体公司。

可选的,获取模块63进一步将所述应用程序安装包进行反解压,获取特定编码格式的代码文件,进一步将所述编码格式的代码文件进行反编译,获取源代码文件;解析所述源代码文件的清单文件,获取所述应用程序的应用程序及其组件信息;根据所述应用程序的证书信息获取所述证书使用者的身份信息;将所述应用程序的开发信息,与所述证书使用者的身份信息进行正则匹配,获取所述应用程序的敏感信息,通过所述敏感信息与所述应用程序的行政登记信息分析所述应用程序的社会主体信息;根据所述社会主体信息获取所述应用程序的运营信息和开发信息。

本申请实施例还提供一种违法应用程序的确认装置,用于执行前文所述的分类方法。请参阅图7,图7是本申请实施例提供的一种基于 SSVEP的分类系统的结构示意图。如图7所示,基于SSVEP的分类系统包括处理器610及存储器620,存储器620存储有计算机程序,处理器610与存储器620耦合,处理器610在工作时执行该计算机程序以实现上述任一实施例中的违法应用程序的确认方法。

其中,处理器610还可以称为CPU(Central Processing Unit,中央处理单元)。处理器610可能是一种集成电路芯片,具有信号的处理能力。处理器610还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,但不仅限于此。

参阅图8,图8是本申请提供的计算机可读存储介质实施例的示意框图,本实施例中的计算机可读存储介质存储有计算机程序410,该计算机程序410能够被处理器执行以实现上述任一实施例中的违法应用程序的确认方法。

可选的,该可读存储介质可以是U盘、移动硬盘、只读存储器(ROM, Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。

综上所述,本申请整个过程能够对具有异常行为的应用程序提供预防功能。一方面通过不断地发现的新的应用程序来判定应用程序是否有异常行为,能够对应用程序找到实际的运营公司,提升了人工效率和发现的及时性。

以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

18页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于物联网的数据报文分发方法及设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类