提供应用安全审计功能的系统及方法

文档序号:8223827阅读:1154来源:国知局
提供应用安全审计功能的系统及方法
【技术领域】
[0001]本发明涉及互联网技术领域,具体涉及一种提供应用安全审计功能的系统及方法。
【背景技术】
[0002]随着Android系统在智能设备领域市场份额的增加,Android应用的需求越来越大,越来越多的开发者加入到Android应用开发阵营,这些开发者良莠不齐,有的开发方安全意识缺乏,导致Android应用中存在各种安全漏洞。而应用程序的安全性直接决定了终端设备的安全性。当应用程序中的安全漏洞被攻击者利用时,攻击者就能够获得访问重要数据、用户隐私的权限,可能导致重要数据、用户隐私外泄等问题,使应用的使用者遭受巨大的损失,无法得到安全可靠的服务。
[0003]公知的是,漏洞带来的最大问题即是木马,木马通常会利用计算机程序漏洞侵入后窃取文件和用户信息。木马是一种具有隐藏性的、自发性的可被用来进行恶意行为的程序。历史上对计算机木马的定义是,试图以有用程序的假面具欺骗用户允许其运行的一类渗透。请注意,过去的木马确实是这样,但现在它们已无需伪装自己。它们唯一的目的就是尽可能轻松地渗透并完成其恶意目标,从而利用这些漏洞泄露用户隐私甚至给用户造成财产损失。
[0004]因此,目前需要本领域技术人员迫切解决的一个技术问题就是:提供一种在开发方发布应用前对其应用进行安全审计的机制。

【发明内容】

[0005]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的提供应用安全审计功能的系统和相应的提供应用安全审计功能的方法。
[0006]根据本发明的一个方面,提供了一种提供应用安全审计功能的系统,其包括:任务调度服务器、至少一台安全审计服务器以及多个终端设备;每台安全审计服务器包括至少一个审计节点,每个审计节点唯一对应于一个终端设备;
[0007]任务调度服务器适于:接收应用程序开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点;
[0008]审计节点适于:接收任务调度服务器分配的处理任务,将处理任务对应的应用程序的安装包文件传递给与审计节点对应的终端设备,以使终端设备安装安装包文件;
[0009]终端设备适于:安装审计节点传递的应用程序的安装包文件,实际运行应用程序。
[0010]根据本发明的另一方面,提供了一种提供应用安全审计功能的方法,其包括:
[0011]任务调度服务器接收应用程序开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点;
[0012]审计节点将处理任务对应的应用程序的安装包文件传递给与审计节点对应的终端设备,以使终端设备安装安装包文件。
[0013]根据本发明提供的方案,通过云服务的方式将审计结果提供给应用程序开发方,简单易用,与客户端工具相比省去繁琐的环境配置与部署;在完全真实的终端设备环境下对终端设备进行检测,与终端设备模拟器相比,检测过程更加稳定,审计结果更加准确。
[0014]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0015]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0016]图1示出了根据本发明一个实施例的提供应用安全审计功能的系统的结构示意图;
[0017]图2示出了根据本发明一个实施例的审计节点的结构示意图;
[0018]图3示出了根据本发明一个实施例的提供应用安全审计功能的方法的流程图;
[0019]图4示出了根据本发明另一个实施例的提供应用安全审计功能的方法的流程图。
【具体实施方式】
[0020]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0021]由于开发方在应用程序开发过程中缺乏安全意识,或者由于应用程序代码本身存在的问题,导致应用中存在各种安全漏洞,从而给应用的使用者造成不必要的困扰或者财产损失,本发明的发明人基于此,研宄应用程序开发方在应用程序开发工作结束后,该应用程序发布前,对开发方所开发的应用程序进行漏洞检测,通过将该应用程序提交给提供应用安全审计功能的系统,由该系统对其进行安全审计,来防止由于应用程序存在漏洞而给使用者造成困扰或财产损失。
[0022]图1示出了根据本发明一个实施例的提供应用安全审计功能的系统的结构示意图。如图1所示,该系统包括:任务调度服务器101、至少一台安全审计服务器102以及多个终端设备103 ;每台安全审计服务器102包括至少一个审计节点104,每个审计节点104唯一对应于一个终端设备103。
[0023]任务调度服务器101适于:接收应用程序开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点。
[0024]可选地,任务调度服务器101提供审计页面,该审计页面提供有应用程序的安装包文件的提交键,应用开发方通过触发该提交键来提交待审计的应用程序的安装包文件,任务调度服务器接收应用程序开发方通过审计页面所提交的应用程序的安装包文件,并将该应用程序的安装包文件列为待审计的处理任务,任务调度服务器通过权衡已注册的各个审计节点的负载信息,将处理任务分配给对应的审计节点,由此,可以保证在部分审计节点处于空闲时优先将处理任务分配给空闲的审计节点,从而节省时间,避免资源浪费。
[0025]可选地,审计节点预先注册到任务调度服务器中,每台安全审计服务器中的审计节点支持动态扩展,这里的动态扩展指安全审计服务器中的审计节点可以根据处理任务的需要进行扩展,当当前审计节点均处于负载状态下时,可针对任务调度服务器新创建的处理任务扩展出相应的审计节点以对处理任务进行安全审计,从而可以保证快速的响应开发者提交的安全审计请求,缩短审计结果输出时间。
[0026]审计节点104适于:接收任务调度服务器分配的处理任务,将处理任务对应的应用程序的安装包文件传递给与审计节点对应的终端设备,以使终端设备安装安装包文件。
[0027]每个审计节点唯一对应于一个终端设备,因此,审计节点接收到处理任务后,只将处理任务传递给与其唯一对应的终端设备,对处理任务对应的应用程序的安装包文件进行安全审计,以及在终端设备安装安装包文件后,对该终端设备进行安全审计,采用完全真实的终端设备环境进行安全审计,与终端设备模拟器相比,审计过程更加稳定,审计结果更加准确。
[0028]审计节点审计结束后,将审计结果反馈给任务调度服务器,任务调度服务器在审计页面中显示审计结果,供应用程序开发方查看。而且安全审计结果可以向开发方展示应用程序存在哪些漏洞、漏洞修复建议和漏洞出处,也可以向开发方展示应用程序的漏洞等级,这里主要根据所涉及到的威胁等级将漏洞分为高危、中危和低危漏洞,举例来说,高危漏洞指极易被病毒、木马、黑客等利用,例如能够远程执行代码的漏洞,开发方可以根据应用程序的漏洞等级确定是否对漏洞进行修复。
[0029]此外,安全审计服务器还包括:审计节点监控器,适于对审计节点的负载信息进行监控,任务调度服务器可以根据审计节点监控器的监控信息将处理任务分配给对应的审计节点。
[0030]可选地,审计节点进一步适于:对处理任务对应的应用程序的安装包文件进行安全审计,得到对应用程序的安全审计结果。
[0031]核心的审计功能是由该系统中的审计节点来完成的,通过下面具体的实施例对审计节点所采用的应用程序检测方法进行详细介绍。
[0032]图2示出了根据本发明一个实施例的审计节点的结构示意图。如图2所示,该装置包括:云端漏洞知识库201、提取模块202、静态扫描模块203、传递模块204、动态扫描模块205、检测模块206。
[0033]云端漏洞知识库201,适于存储收集的大量应用程序的漏洞静态特征和漏洞动态特征。
[0034]通过对大量的应用程序进行静态检测和动态检测,得到应
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1