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

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

Info

Publication number
CN104537308B
CN104537308B CN201510036546.7A CN201510036546A CN104537308B CN 104537308 B CN104537308 B CN 104537308B CN 201510036546 A CN201510036546 A CN 201510036546A CN 104537308 B CN104537308 B CN 104537308B
Authority
CN
China
Prior art keywords
leak
application program
installation package
package file
audit
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.)
Active
Application number
CN201510036546.7A
Other languages
English (en)
Other versions
CN104537308A (zh
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 Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201510036546.7A priority Critical patent/CN104537308B/zh
Publication of CN104537308A publication Critical patent/CN104537308A/zh
Application granted granted Critical
Publication of CN104537308B publication Critical patent/CN104537308B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping

Abstract

本发明公开了一种提供应用安全审计功能的系统及方法。其中系统包括:任务调度服务器、至少一台安全审计服务器,包括至少一个审计节点以及多个终端设备;任务调度服务器适于接收开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点;审计节点适于接收分配的处理任务,将处理任务对应的安装包文件传递给与审计节点对应的终端设备,以使终端设备安装安装包文件;终端设备适于安装审计节点传递的应用程序的安装包文件,实际运行应用程序。本发明通过云服务的方式将审计结果提供给应用程序开发方,简单易用,与客户端工具相比省去繁琐的环境配置与部署;在真实环境下进行检测,审计结果更加准确。

Description

提供应用安全审计功能的系统及方法
技术领域
本发明涉及互联网技术领域,具体涉及一种提供应用安全审计功能的系统及方法。
背景技术
随着Android系统在智能设备领域市场份额的增加,Android应用的需求越来越大,越来越多的开发者加入到Android应用开发阵营,这些开发者良莠不齐,有的开发方安全意识缺乏,导致Android应用中存在各种安全漏洞。而应用程序的安全性直接决定了终端设备的安全性。当应用程序中的安全漏洞被攻击者利用时,攻击者就能够获得访问重要数据、用户隐私的权限,可能导致重要数据、用户隐私外泄等问题,使应用的使用者遭受巨大的损失,无法得到安全可靠的服务。
公知的是,漏洞带来的最大问题即是木马,木马通常会利用计算机程序漏洞侵入后窃取文件和用户信息。木马是一种具有隐藏性的、自发性的可被用来进行恶意行为的程序。历史上对计算机木马的定义是,试图以有用程序的假面具欺骗用户允许其运行的一类渗透。请注意,过去的木马确实是这样,但现在它们已无需伪装自己。它们唯一的目的就是尽可能轻松地渗透并完成其恶意目标,从而利用这些漏洞泄露用户隐私甚至给用户造成财产损失。
因此,目前需要本领域技术人员迫切解决的一个技术问题就是:提供一种在开发方发布应用前对其应用进行安全审计的机制。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的提供应用安全审计功能的系统和相应的提供应用安全审计功能的方法。
根据本发明的一个方面,提供了一种提供应用安全审计功能的系统,其包括:任务调度服务器、至少一台安全审计服务器以及多个终端设备;每台安全审计服务器包括至少一个审计节点,每个审计节点唯一对应于一个终端设备;
任务调度服务器适于:接收应用程序开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点;
审计节点适于:接收任务调度服务器分配的处理任务,将处理任务对应的应用程序的安装包文件传递给与审计节点对应的终端设备,以使终端设备安装安装包文件;
终端设备适于:安装审计节点传递的应用程序的安装包文件,实际运行应用程序。
根据本发明的另一方面,提供了一种提供应用安全审计功能的方法,其包括:
任务调度服务器接收应用程序开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点;
审计节点将处理任务对应的应用程序的安装包文件传递给与审计节点对应的终端设备,以使终端设备安装安装包文件。
根据本发明提供的方案,通过云服务的方式将审计结果提供给应用程序开发方,简单易用,与客户端工具相比省去繁琐的环境配置与部署;在完全真实的终端设备环境下对终端设备进行检测,与终端设备模拟器相比,检测过程更加稳定,审计结果更加准确。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的提供应用安全审计功能的系统的结构示意图;
图2示出了根据本发明一个实施例的审计节点的结构示意图;
图3示出了根据本发明一个实施例的提供应用安全审计功能的方法的流程图;
图4示出了根据本发明另一个实施例的提供应用安全审计功能的方法的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
由于开发方在应用程序开发过程中缺乏安全意识,或者由于应用程序代码本身存在的问题,导致应用中存在各种安全漏洞,从而给应用的使用者造成不必要的困扰或者财产损失,本发明的发明人基于此,研究应用程序开发方在应用程序开发工作结束后,该应用程序发布前,对开发方所开发的应用程序进行漏洞检测,通过将该应用程序提交给提供应用安全审计功能的系统,由该系统对其进行安全审计,来防止由于应用程序存在漏洞而给使用者造成困扰或财产损失。
图1示出了根据本发明一个实施例的提供应用安全审计功能的系统的结构示意图。如图1所示,该系统包括:任务调度服务器101、至少一台安全审计服务器102以及多个终端设备103;每台安全审计服务器102包括至少一个审计节点104,每个审计节点104唯一对应于一个终端设备103。
任务调度服务器101适于:接收应用程序开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点。
可选地,任务调度服务器101提供审计页面,该审计页面提供有应用程序的安装包文件的提交键,应用开发方通过触发该提交键来提交待审计的应用程序的安装包文件,任务调度服务器接收应用程序开发方通过审计页面所提交的应用程序的安装包文件,并将该应用程序的安装包文件列为待审计的处理任务,任务调度服务器通过权衡已注册的各个审计节点的负载信息,将处理任务分配给对应的审计节点,由此,可以保证在部分审计节点处于空闲时优先将处理任务分配给空闲的审计节点,从而节省时间,避免资源浪费。
可选地,审计节点预先注册到任务调度服务器中,每台安全审计服务器中的审计节点支持动态扩展,这里的动态扩展指安全审计服务器中的审计节点可以根据处理任务的需要进行扩展,当当前审计节点均处于负载状态下时,可针对任务调度服务器新创建的处理任务扩展出相应的审计节点以对处理任务进行安全审计,从而可以保证快速的响应开发者提交的安全审计请求,缩短审计结果输出时间。
审计节点104适于:接收任务调度服务器分配的处理任务,将处理任务对应的应用程序的安装包文件传递给与审计节点对应的终端设备,以使终端设备安装安装包文件。
每个审计节点唯一对应于一个终端设备,因此,审计节点接收到处理任务后,只将处理任务传递给与其唯一对应的终端设备,对处理任务对应的应用程序的安装包文件进行安全审计,以及在终端设备安装安装包文件后,对该终端设备进行安全审计,采用完全真实的终端设备环境进行安全审计,与终端设备模拟器相比,审计过程更加稳定,审计结果更加准确。
审计节点审计结束后,将审计结果反馈给任务调度服务器,任务调度服务器在审计页面中显示审计结果,供应用程序开发方查看。而且安全审计结果可以向开发方展示应用程序存在哪些漏洞、漏洞修复建议和漏洞出处,也可以向开发方展示应用程序的漏洞等级,这里主要根据所涉及到的威胁等级将漏洞分为高危、中危和低危漏洞,举例来说,高危漏洞指极易被病毒、木马、黑客等利用,例如能够远程执行代码的漏洞,开发方可以根据应用程序的漏洞等级确定是否对漏洞进行修复。
此外,安全审计服务器还包括:审计节点监控器,适于对审计节点的负载信息进行监控,任务调度服务器可以根据审计节点监控器的监控信息将处理任务分配给对应的审计节点。
可选地,审计节点进一步适于:对处理任务对应的应用程序的安装包文件进行安全审计,得到对应用程序的安全审计结果。
核心的审计功能是由该系统中的审计节点来完成的,通过下面具体的实施例对审计节点所采用的应用程序检测方法进行详细介绍。
图2示出了根据本发明一个实施例的审计节点的结构示意图。如图2所示,该装置包括:云端漏洞知识库201、提取模块202、静态扫描模块203、传递模块204、动态扫描模块205、检测模块206。
云端漏洞知识库201,适于存储收集的大量应用程序的漏洞静态特征和漏洞动态特征。
通过对大量的应用程序进行静态检测和动态检测,得到应用程序的漏洞静态特征和漏洞动态特征,并将所得到的漏洞静态特征和漏洞动态特征存储到云端漏洞知识库中,供对开发方上传的待审计的应用程序进行静态检测和动态检测。云端漏洞知识库是云端维护的存储各种漏洞静态特征和漏洞动态特征的数据库,在图1所示的系统中,云端漏洞知识库可以设置在独立的云端服务器(图1未示出),各个审计节点都可以访问该云端服务器的云端漏洞知识库;或者,在每台安全审计服务器中设置云端漏洞知识库,以便不同安全审计服务器中的审计节点访问自己服务器中的云端漏洞知识库。
提取模块202,适于获取待检测的应用程序的安装包文件,提取安装包文件的静态特征。
可选地,提取模块202进一步包括:反编译处理单元207,适于对安装包文件进行反编译处理,得到反编译代码。
反编译处理是借用反编译器,尝试从程序的机器码或字节码,重现高级语言形式的源代码。审计节点在获取到应用程序的安装包文件后,先对安装包文件进行反编译处理,得到高级语言形式的源代码,例如,在对安装包文件进行反编译处理后得到Java代码。
提取单元208,适于从反编译代码中提取安装包文件的静态特征。
静态扫描模块203,适于通过将安装包文件的静态特征与预先存储的漏洞静态特征进行匹配,得到静态检测结果。
漏洞静态特征是在不运行代码的方式下,通过词法检测、语法检测、控制流等技术对应用程序的安装包文件的程序代码进行静态检测,其中,词法分析主要是从左到右一个字符一个字符地读入源程序,即对构成源程序的字符流进行扫描然后根据构词规则识别单词,语法分析是在词法分析的基础上将单词序列组合成各类语法短语,控制流用于控制Transact-SQL语句、语句块和存储过程的执行流,以验证代码是否满足规范性、安全性、可靠性、可维护性等指标,将不满足规范性、安全性、可靠性、可维护性等指标的代码所具有的静态特征称为漏洞静态特征。
可选地,漏洞静态特征包括:调用危险的应用程序接口、和/或具有危险的应用程序配置文件、和/或无法实现关键安全函数。其中,调用危险的应用程序接口是指开发方所开发的应用程序调用危险的应用程序接口,用户启动应用程序后,该应用程序可以通过危险的应用程序接口而将用户隐私泄露,甚至给用户造成财产损失;具有危险的应用程序配置文件是指开发方所开发的应用程序具有危险的应用程序配置文件,用户在启动该应用程序后,该应用程序通过运行危险的应用程序配置文件而将用户隐私泄露,甚至给用户造成财产损失;无法实现关键安全函数是指开发方开发的应用程序无法实现应用程序中关键安全函数的作用,而将用户隐私泄露,甚至给用户造成财产损失。
将提取单元提取的安装包文件的静态特征与云端漏洞知识库中预先存储的漏洞静态特征进行匹配,例如与调用危险的应用程序接口这一特征进行匹配,若安装包文件的静态特征与漏洞静态特征中的调用危险的应用程序接口这一特征所匹配,则得到安装包文件中存在漏洞为调用危险的应用程序接口的静态检测结果,说明应用程序开发方所开发的应用程序可以调用危险应用的接口,而对用户的终端设备造成危害;若安装包文件的静态特征与漏洞静态特征中的调用危险的应用程序接口这一特征不匹配,则得到安装包文件中不存在漏洞为调用危险的应用程序接口的静态检测结果。
传递模块204,适于将安装包文件传递给终端设备,以使终端设备安装该安装包文件对应的应用程序。
传递模块在将安装包文件传递给终端设备后,在终端设备侧安装该安装包文件对应的应用程序,以在完全真实的终端设备环境下对终端设备进行动态检测,与终端设备模拟器相比,检测过程更加稳定,审计结果更加准确。
动态扫描模块205,适于将终端设备实际运行应用程序所产生的动态特征与预先存储的漏洞动态特征进行匹配,得到动态检测结果。
漏洞动态特征是通过在真实环境中执行应用程序的方式下,对应用程序进行动态检测,应用程序所存在的漏洞特征。
可选地,漏洞动态特征包括:SQL注入检测返回特定的错误代码和/或应用程序存在全局可读写的文件和/或远程代码执行。
在终端设备安装上述安装包文件对应的应用程序后,运行该应用程序,并将终端设备运行应用程序的过程中产生的动态特征与预先存储的漏洞动态特征进行匹配,例如与漏洞动态特征中的应用程序存在全局可读写的文件这一特征进行匹配,若终端设备实际运行应用程序所产生的动态特征与漏洞动态特征中的应用程序存在全局可读写的文件这一特征所匹配,则得到安装包文件中存在漏洞为应用程序存在全局可读写的文件的动态检测结果,说明应用程序开发方所开发的应用程序存在全局可读写文件,而对用户的终端设备造成危害;若终端设备实际运行应用程序所产生的动态特征与漏洞动态特征中的应用程序存在全局可读写的文件这一特征不匹配,则得到安装包文件中不存在漏洞为应用程序存在全局可读写的文件的动态检测结果。
通过将安装包文件的动态特征与预先存储的漏洞动态特征进行匹配,可以帮助开发方查找安装包文件中存在的安全漏洞等问题。
可选地,动态扫描模块205进一步适于:利用预先存储的漏洞动态特征,根据与预先存储的漏洞动态特征对应的动态检测逻辑通过触发终端设备中的动态检测的代理程序对安装有安装包文件的终端设备进行动态检测,得到动态检测结果。
具体地,终端设备侧安装有动态检测的代理程序,在对安装有安装包文件的终端设备进行动态检测时,可以通过触发终端设备中的动态检测的代理程序对安装有安装包文件的终端设备进行单个的动态检测,例如,读取终端设备中的某个文件,动态检测逻辑可以是漏洞动态特征的对应的逻辑,例如SQL注入检测返回特定的错误代码、应用程序存在全局可读写的文件。
检测模块206,适于结合静态检测结果和动态检测结果,检测应用程序是否具有漏洞,进而确定对应用程序的安全审计结果。
可选地,若静态检测结果表明安装包文件的静态特征与预先存储的至少一个漏洞静态特征相匹配,和/或,动态检测结果表明终端设备实际运行应用程序所产生的动态特征与预先存储的至少一个漏洞动态特征相匹配,则检测出应用程序具有漏洞。
该审计节点还包括:分析模块209,适于对反编译代码进行数据流分析得到用于实现漏洞攻击的信息。
数据流分析是一种用于收集计算机程序在不同点计算的值的信息的技术。对得到的反编译代码进行数据流分析,分析处理后得到用于实现漏洞攻击的信息,例如,应用程序潜在的攻击点和攻击应用程序所需的参数,这些信息指导对终端设备的哪些点进行攻击以及攻击时所需要的参数。
漏洞攻击模块210,适于根据用于实现漏洞攻击的信息,对终端设备进行漏洞攻击,接收终端设备反馈的针对漏洞攻击的日志输出结果。
智能模糊测试,是一种通过向目标系统提供非预期的输入并监视异常结果来发现软件漏洞的方法。漏洞攻击模块可以根据得到的应用程序潜在的攻击点和攻击应用程序所需的参数通过智能的构造攻击参数不断地对终端设备进行漏洞攻击,来检测安装包文件是否存在漏洞。在漏洞攻击结束后,会在终端设备中生成记录有漏洞攻击结果的日志,其中,日志是指用于展示某些事件全貌的日志消息的集合,这里用于展示漏洞攻击结果。例如,SQL注入漏洞是利用了将包含了某种目的的SQL语句,通过关键变量插入到程序中正常的数据库操作语句里,程序一旦发生注入漏洞,就会引发一系列安全隐患。通过数据流分析包含某种目的的SQL语句,从中查找到关键变量,来得到SQL语句的SQL注入攻击点,利用智能模糊测试对该SQL注入攻击点不断地进行漏洞攻击,若该SQL注入存在漏洞,则得到SQL注入漏洞。
可选地,检测模块206具体适于:结合静态检测结果、动态检测结果和日志输出结果,检测应用程序是否具有漏洞。
具体地,若静态检测结果表明安装包文件的静态特征与预先存储的至少一个漏洞静态特征相匹配,和/或,动态检测结果表明终端设备实际运行应用程序所产生的动态特征与预先存储的至少一个漏洞动态特征相匹配,和/或,日志输出结果中记录有终端设备被至少一个漏洞攻击,则检测出应用程序具有漏洞,进而确定对应用程序的安全审计结果。安全审计结果可以向开发方展示应用程序存在哪些漏洞,也可以向开发方展示应用程序的漏洞等级,开发方可以根据应用程序的漏洞等级确定是否对漏洞进行修复。
终端设备103适于:安装审计节点传递的应用程序的安装包文件,实际运行应用程序。
根据本发明上述实施例提供的系统,通过云服务的方式将审计结果提供给应用程序开发方,简单易用,与客户端工具相比省去繁琐的环境配置与部署;收集大量应用程序的漏洞静态特征和漏洞动态特征,可以在对开发方上传的应用程序进行检测时更准确,对反编译的代码进行静态检测,可以在检测出漏洞的情况下,直接向开发方展示源代码所出现的漏洞情况,方便开发方进行修复;在终端设备侧对运行的应用程序进行动态检测,来检测安装包文件是否存在漏洞,进而确定对应用程序的安全审计结果,在完全真实的终端设备环境下对终端设备进行检测,与终端设备模拟器相比,检测过程更加稳定,审计结果更加准确;根据处理任务扩展出相应的审计节点以对处理任务进行安全审计,可以保证快速的响应开发者提交的安全审计请求,审计结果输出时间短;此外,可以帮助开发方查找安装包文件中存在的安全漏洞等问题,从而保证应用程序的整体质量,防止泄露用户隐私或给用户造成财产损失。
图3示出了根据本发明一个实施例的提供应用安全审计功能的方法的流程图。如图3所示,该方法包括以下步骤:
步骤S300,任务调度服务器接收应用程序开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点。
可选地,任务调度服务器提供审计页面,该审计页面提供有应用程序的安装包文件的提交键,应用开发方通过触发该提交键来提交待审计的应用程序的安装包文件,任务调度服务器接收应用程序开发方通过审计页面所提交的应用程序的安装包文件,并将该应用程序的安装包文件列为待审计的处理任务,任务调度服务器通过权衡已注册的各个审计节点的负载信息,将处理任务分配给对应的审计节点,由此,可以保证在部分审计节点处于空闲时优先将处理任务分配给空闲的审计节点,从而节省时间,避免资源浪费。
可选地,审计节点预先注册到任务调度服务器中,每台安全审计服务器中的审计节点支持动态扩展,这里的动态扩展指安全审计服务器中的审计节点可以根据处理任务的需要进行扩展,当处理任务的个数多余当前审计节点的个数时,可根据处理任务扩展出相应的审计节点以对处理任务进行安全审计,从而可以保证快速的响应开发者提交的安全审计请求,审计结果输出时间短。
步骤S301,审计节点将处理任务对应的应用程序的安装包文件传递给与审计节点对应的终端设备,以使终端设备安装安装包文件。
每个审计节点唯一对应于一个终端设备,因此,审计节点接收到处理任务后,只将处理任务传递给与其唯一对应的终端设备,对处理任务对应的应用程序的安装包文件进行安全审计,以及在终端设备安装安装包文件后,对该终端设备进行安全审计,采用完全真实的终端设备环境进行安全审计,与终端设备模拟器相比,审计过程更加稳定,审计结果更加准确。
安全审计结果可以向开发方展示应用程序存在哪些漏洞,也可以向开发方展示应用程序的漏洞等级,开发方可以根据应用程序的漏洞等级确定是否对漏洞进行修复。
根据本发明上述实施例提供的方法,通过云服务的方式将审计结果提供给应用程序开发方,简单易用,与客户端工具相比省去繁琐的环境配置与部署;在完全真实的终端设备环境下对终端设备进行检测,与终端设备模拟器相比,检测过程更加稳定,审计结果更加准确。
图4示出了根据本发明另一个实施例的提供应用安全审计功能的方法的流程图。如图4所示,该方法包括以下步骤:
步骤S400,任务调度服务器提供审计页面,接收应用程序开发方通过审计页面所提交的应用程序的安装包文件。
其中,审计节点预先注册到任务调度服务器中。
步骤S401,为每个应用程序创建对应的处理任务。
步骤S402,通过权衡已注册的各个审计节点的负载信息,将处理任务分配给对应的审计节点。
步骤S403,审计节点将处理任务对应的应用程序的安装包文件传递给与审计节点对应的终端设备,以使终端设备安装安装包文件。
步骤S404,提取安装包文件的静态特征,通过将安装包文件的静态特征与预先存储的漏洞静态特征进行匹配,得到静态检测结果。
可选地,收集大量应用程序的漏洞静态特征和漏洞动态特征,预先将漏洞静态特征和漏洞动态特征存储到云端漏洞知识库中,供对开发方上传的待检测的应用程序进行静态检测和动态检测。其中,漏洞静态特征包括:调用危险的应用程序接口、和/或具有危险的应用程序配置文件、和/或无法实现关键安全函数。
可选地,根据安装包文件的开发代码选用反编译软件,通过该反编译软件对安装包文件进行反编译处理,得到反编译代码;从反编译代码中提取安装包文件的静态特征,将安装包文件的静态特征与预先存储的漏洞静态特征进行匹配,得到静态检测结果。
步骤S405,将终端设备实际运行应用程序所产生的动态特征与预先存储的漏洞动态特征进行匹配,得到动态检测结果。
可选地,漏洞动态特征包括:SQL注入检测返回特定的错误代码和/或应用程序存在全局可读写的文件和/或远程代码执行。
可选地,利用预先存储的漏洞动态特征,根据与预先存储的漏洞动态特征对应的动态检测逻辑通过触发终端设备中的动态检测的代理程序对安装有安装包文件的终端设备进行动态检测,得到动态检测结果。
可选地,在对安装包文件进行反编译处理,得到反编译代码后,对反编译代码进行数据流分析得到用于实现漏洞攻击的信息,根据用于实现漏洞攻击的信息,对终端设备进行模拟漏洞攻击,接收终端设备反馈的针对漏洞攻击的日志输出结果。其中,用于实现漏洞攻击的信息包括:应用程序潜在的攻击点和攻击应用程序所需的参数。
步骤S406,结合静态检测结果和动态检测结果,检测应用程序是否具有漏洞,进而确定对应用程序的安全审计结果。
具体地,若静态检测结果表明安装包文件的静态特征与预先存储的至少一个漏洞静态特征相匹配,和/或,动态检测结果表明终端设备实际运行应用程序所产生的动态特征与预先存储的至少一个漏洞动态特征相匹配,则检测出应用程序具有漏洞。
此外,还可结合静态检测结果、动态检测结果和日志输出结果,检测应用程序是否具有漏洞。
具体地,若静态检测结果表明安装包文件的静态特征与预先存储的至少一个漏洞静态特征相匹配,和/或,动态检测结果表明终端设备实际运行应用程序所产生的动态特征与预先存储的至少一个漏洞动态特征相匹配,和/或,日志输出结果中记录有终端设备被至少一个漏洞攻击,则检测出应用程序具有漏洞,进而确定对应用程序的安全审计结果。例如,静态检测结果表明安装包文件的静态特征与预先存储的漏洞静态特征中的调用危险的应用程序接口这一特征相匹配,和/或,动态检测结果表明终端设备实际运行应用程序所产生的动态特征与预先存储的漏洞动态特征中的SQL注入检测返回特定的错误代码这一特征相匹配,和/或,日志输出结果中记录有终端设备被至少一个漏洞攻击,则检测出应用程序具有漏洞,进而确定对应用程序的安全审计结果。安全审计结果可以向开发方展示应用程序存在哪些漏洞、漏洞修复建议和漏洞出处,也可以向开发方展示应用程序的漏洞等级,这里主要根据所涉及到威胁等级将漏洞分为超危、高危、中危、低危漏洞,开发方可以根据应用程序的漏洞等级确定是否对漏洞进行修复,在开发方确定进行漏洞修复的情况下,可以根据安全审计结果给出漏洞出处和漏洞修复建议有针对性的对应用程序安装包文件进行修改。
可选地,该方法还包括:对处理任务对应的应用程序的安装包文件进行安全审计,得到对所述应用程序的安全审计结果。
根据本发明上述实施例提供的方法,通过云服务的方式将审计结果提供给应用程序开发方,简单易用,与客户端工具相比省去繁琐的环境配置与部署;收集大量应用程序的漏洞静态特征和漏洞动态特征,可以在对开发方上传的应用程序进行检测时更准确,对反编译的代码进行静态检测,可以在检测出漏洞的情况下,直接向开发方展示源代码所出现的漏洞情况,方便开发方进行修复;在终端设备侧对运行的应用程序进行检测,来检测安装包文件是否存在漏洞,进而确定对应用程序的安全审计结果,在完全真实的终端设备环境下对终端设备进行动态检测,与终端设备模拟器相比,检测过程更加稳定,审计结果更加准确;根据处理任务扩展出相应的审计节点以对处理任务进行安全审计,可以保证快速的响应开发者提交的安全审计请求,审计结果输出时间短;此外,可以帮助开发方查找安装包文件中存在的安全漏洞等问题,从而保证应用程序的整体质量,防止泄露用户隐私或给用户造成财产损失。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的提供应用安全审计功能的设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了:A1、一种提供应用安全审计功能的系统,其包括:任务调度服务器、至少一台安全审计服务器以及多个终端设备;每台安全审计服务器包括至少一个审计节点,每个审计节点唯一对应于一个终端设备;
所述任务调度服务器适于:接收应用程序开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点;
所述审计节点适于:接收所述任务调度服务器分配的处理任务,将所述处理任务对应的应用程序的安装包文件传递给与所述审计节点对应的终端设备,以使所述终端设备安装所述安装包文件;
所述终端设备适于:安装所述审计节点传递的应用程序的安装包文件,实际运行所述应用程序。
A2、根据A1所述的系统,所述任务调度服务器具体适于:提供审计页面,接收应用程序开发方通过所述审计页面所提交的应用程序的安装包文件。
A3、根据A1或A2所述的系统,所述审计节点进一步适于:对所述处理任务对应的应用程序的安装包文件进行安全审计,得到对所述应用程序的安全审计结果。
A4、根据A3所述的系统,所述审计节点包括:
提取模块,适于提取所述处理任务对应的应用程序的安装包文件的静态特征;
静态扫描模块,适于通过将所述安装包文件的静态特征与预先存储的漏洞静态特征进行匹配,得到静态检测结果;
传递模块,适于将所述安装包文件传递给终端设备,以使所述终端设备安装所述安装包文件对应的应用程序;
动态扫描模块,适于将所述终端设备实际运行所述应用程序所产生的动态特征与预先存储的漏洞动态特征进行匹配,得到动态检测结果;
检测模块,适于结合所述静态检测结果和所述动态检测结果,检测所述应用程序是否具有漏洞,进而确定对所述应用程序的安全审计结果。
A5、根据A4所述的系统,所述安全审计结果包括漏洞名称、漏洞修复建议、漏洞出处和漏洞等级中的一种或多种,其中,所述漏洞等级分为高危、中危和低危。
A6、根据A4或A5所述的系统,所述审计节点还包括:云端漏洞知识库,适于存储收集的大量应用程序的漏洞静态特征和漏洞动态特征。
A7、根据A4-A6任一项所述的系统,所述提取模块进一步包括:
反编译处理单元,适于对所述安装包文件进行反编译处理,得到反编译代码;
提取单元,适于从所述反编译代码中提取所述安装包文件的静态特征。
A8、根据A4所述的系统,所述检测模块进一步适于:
若所述静态检测结果表明所述安装包文件的静态特征与预先存储的至少一个漏洞静态特征相匹配,和/或,所述动态检测结果表明所述终端设备实际运行所述应用程序所产生的动态特征与预先存储的至少一个漏洞动态特征相匹配,则检测出所述应用程序具有漏洞。
A9、根据A7所述的系统,所述审计节点还包括:
分析模块,适于对所述反编译代码进行数据流分析得到用于实现漏洞攻击的信息;
漏洞攻击模块,适于根据所述用于实现漏洞攻击的信息,对所述终端设备进行漏洞攻击,接收所述终端设备反馈的针对所述漏洞攻击的日志输出结果;
所述检测模块具体适于:结合所述静态检测结果、所述动态检测结果和所述日志输出结果,检测所述应用程序是否具有漏洞。
A10、根据A4所述的系统,所述动态扫描模块进一步适于:
利用所述预先存储的漏洞动态特征,根据与所述预先存储的漏洞动态特征对应的动态检测逻辑通过触发终端设备中的动态检测的代理程序对安装有所述安装包文件的终端设备进行动态检测,得到动态检测结果。
A11、根据A4所述的系统,所述漏洞静态特征包括:调用危险的应用程序接口、和/或具有危险的应用程序配置文件、和/或无法实现关键安全函数。
A12、根据A9所述的系统,所述用于实现漏洞攻击的信息包括:应用程序潜在的攻击点和攻击应用程序所需的参数。
A13、根据A4所述的系统,所述漏洞动态特征包括:SQL注入检测返回特定的错误代码和/或应用程序存在全局可读写的文件和/或远程代码执行。
本发明还公开了:B14、一种提供应用安全审计功能的方法,其包括:
任务调度服务器接收应用程序开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点;
所述审计节点将所述处理任务对应的应用程序的安装包文件传递给与所述审计节点对应的终端设备,以使所述终端设备安装所述安装包文件。
B15、根据B14所述的方法,所述任务调度服务器接收应用程序开发方所提交的应用程序的安装包文件具体为:所述任务调度服务器提供审计页面,接收应用程序开发方通过所述审计页面所提交的应用程序的安装包文件。
B16、根据B14或B15所述的方法,还包括:对所述处理任务对应的应用程序的安装包文件进行安全审计,得到对所述应用程序的安全审计结果。
B17、根据B16所述的方法,所述对处理任务对应的应用程序的安装包文件进行安全审计,得到对所述应用程序的安全审计结果进一步包括:
提取所述安装包文件的静态特征,通过将所述安装包文件的静态特征与预先存储的漏洞静态特征进行匹配,得到静态检测结果;
将所述终端设备实际运行所述应用程序所产生的动态特征与预先存储的漏洞动态特征进行匹配,得到动态检测结果;
结合所述静态检测结果和所述动态检测结果,检测所述应用程序是否具有漏洞,进而确定对所述应用程序的安全审计结果。
B18、根据B17所述的方法,所述安全审计结果包括漏洞名称、漏洞修复建议、漏洞出处和漏洞等级中的一种或多种,其中,所述漏洞等级分为高危、中危和低危。
B19、根据B17或B18所述的方法,还包括:收集大量应用程序的漏洞静态特征和漏洞动态特征,预先将所述漏洞静态特征和漏洞动态特征存储到云端漏洞知识库中。
B20、根据B17-B19任一项所述的方法,所述提取所述安装包文件的静态特征进一步包括:
对所述安装包文件进行反编译处理,得到反编译代码;
从所述反编译代码中提取所述安装包文件的静态特征。
B21、根据B17所述的方法,所述结合所述静态检测结果和所述动态检测结果,检测所述应用程序是否具有漏洞进一步包括:
若所述静态检测结果表明所述安装包文件的静态特征与预先存储的至少一个漏洞静态特征相匹配,和/或,所述动态检测结果表明所述终端设备实际运行所述应用程序所产生的动态特征与预先存储的至少一个漏洞动态特征相匹配,则检测出所述应用程序具有漏洞。
B22、根据B20所述的方法,所述对处理任务对应的应用程序的安装包文件进行安全审计,得到对所述应用程序的安全审计结果还包括:
对所述反编译代码进行数据流分析得到用于实现漏洞攻击的信息;
根据所述用于实现漏洞攻击的信息,对所述终端设备进行漏洞攻击,接收所述终端设备反馈的针对所述漏洞攻击的日志输出结果;
所述结合所述静态检测结果和所述动态检测结果,检测所述应用程序是否具有漏洞具体为:结合所述静态检测结果、所述动态检测结果和所述日志输出结果,检测所述应用程序是否具有漏洞。
B23、根据B17所述的方法,所述将所述终端设备实际运行所述应用程序所产生的动态特征与预先存储的漏洞动态特征进行匹配,得到动态检测结果进一步包括:
利用所述预先存储的漏洞动态特征,根据与所述预先存储的漏洞动态特征对应的动态检测逻辑通过触发终端设备中的动态检测的代理程序对安装有所述安装包文件的终端设备进行动态检测,得到动态检测结果。
B24、根据B17所述的方法,所述漏洞静态特征包括:调用危险的应用程序接口、和/或具有危险的应用程序配置文件、和/或无法实现关键安全函数。
B25、根据B22所述的方法,所述用于实现漏洞攻击的信息包括:应用程序潜在的攻击点和攻击应用程序所需的参数。
B26、根据B17所述的方法,所述漏洞动态特征包括:SQL注入检测返回特定的错误代码和/或应用程序存在全局可读写的文件和/或远程代码执行。

Claims (19)

1.一种提供应用安全审计功能的系统,其包括:任务调度服务器、至少一台安全审计服务器以及多个终端设备;每台安全审计服务器包括至少一个审计节点,每个审计节点唯一对应于一个终端设备;
所述任务调度服务器适于:接收应用程序开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点;
所述审计节点适于:接收所述任务调度服务器分配的处理任务,将所述处理任务对应的应用程序的安装包文件传递给与所述审计节点对应的终端设备,以使所述终端设备安装所述安装包文件;
所述终端设备适于:安装所述审计节点传递的应用程序的安装包文件,实际运行所述应用程序;
所述审计节点包括:提取模块,适于提取所述处理任务对应的应用程序的安装包文件的静态特征;
其中,所述提取模块进一步包括:反编译处理单元,适于对所述安装包文件进行反编译处理,得到反编译代码;
提取单元,适于从所述反编译代码中提取所述安装包文件的静态特征;
静态扫描模块,适于通过将所述安装包文件的静态特征与预先存储的漏洞静态特征进行匹配,得到静态检测结果;
传递模块,适于将所述安装包文件传递给终端设备,以使所述终端设备安装所述安装包文件对应的应用程序;
动态扫描模块,适于将所述终端设备实际运行所述应用程序所产生的动态特征与预先存储的漏洞动态特征进行匹配,得到动态检测结果;
分析模块,适于对所述反编译代码进行数据流分析得到用于实现漏洞攻击的信息,其中,所述漏洞攻击的信息包括:应用程序潜在的攻击点和攻击应用程序所需的参数;
漏洞攻击模块,适于根据所述用于实现漏洞攻击的信息,通过智能的构造攻击参数对所述终端设备进行漏洞攻击,接收所述终端设备反馈的针对所述漏洞攻击的日志输出结果;
所述检测模块适于:结合所述静态检测结果、所述动态检测结果和所述日志输出结果,检测所述应用程序是否具有漏洞。
2.根据权利要求1所述的系统,所述任务调度服务器具体适于:提供审计页面,接收应用程序开发方通过所述审计页面所提交的应用程序的安装包文件。
3.根据权利要求1或2所述的系统,所述审计节点进一步适于:对所述处理任务对应的应用程序的安装包文件进行安全审计,得到对所述应用程序的安全审计结果。
4.根据权利要求1所述的系统,所述安全审计结果包括漏洞名称、漏洞修复建议、漏洞出处和漏洞等级中的一种或多种,其中,所述漏洞等级分为高危、中危和低危。
5.根据权利要求1或4所述的系统,所述审计节点还包括:云端漏洞知识库,适于存储收集的大量应用程序的漏洞静态特征和漏洞动态特征。
6.根据权利要求1所述的系统,所述检测模块进一步适于:
若所述静态检测结果表明所述安装包文件的静态特征与预先存储的至少一个漏洞静态特征相匹配,和/或,所述动态检测结果表明所述终端设备实际运行所述应用程序所产生的动态特征与预先存储的至少一个漏洞动态特征相匹配,则检测出所述应用程序具有漏洞。
7.根据权利要求1所述的系统,所述动态扫描模块进一步适于:
利用所述预先存储的漏洞动态特征,根据与所述预先存储的漏洞动态特征对应的动态检测逻辑通过触发终端设备中的动态检测的代理程序对安装有所述安装包文件的终端设备进行动态检测,得到动态检测结果。
8.根据权利要求1所述的系统,所述漏洞静态特征包括:调用危险的应用程序接口、和/或具有危险的应用程序配置文件、和/或无法实现关键安全函数。
9.根据权利要求1所述的系统,所述用于实现漏洞攻击的信息包括:应用程序潜在的攻击点和攻击应用程序所需的参数。
10.根据权利要求1所述的系统,所述漏洞动态特征包括:SQL注入检测返回特定的错误代码和/或应用程序存在全局可读写的文件和/或远程代码执行。
11.一种提供应用安全审计功能的方法,其包括:
任务调度服务器接收应用程序开发方所提交的应用程序的安装包文件,为每个应用程序创建对应的处理任务,将处理任务分配给对应的审计节点;
所述审计节点将所述处理任务对应的应用程序的安装包文件传递给与所述审计节点对应的终端设备,以使所述终端设备安装所述安装包文件;
对所述安装包文件进行反编译处理,得到反编译代码;
从所述反编译代码中提取所述安装包文件的静态特征,通过将所述安装包文件的静态特征与预先存储的漏洞静态特征进行匹配,得到静态检测结果;
将所述终端设备实际运行所述应用程序所产生的动态特征与预先存储的漏洞动态特征进行匹配,得到动态检测结果;
对所述反编译代码进行数据流分析得到用于实现漏洞攻击的信息,其中,所述漏洞攻击的信息包括:应用程序潜在的攻击点和攻击应用程序所需的参数;
根据所述用于实现漏洞攻击的信息,通过智能的构造攻击参数对所述终端设备进行漏洞攻击,接收所述终端设备反馈的针对所述漏洞攻击的日志输出结果;
所述结合所述静态检测结果和所述动态检测结果,检测所述应用程序是否具有漏洞具体为:结合所述静态检测结果、所述动态检测结果和所述日志输出结果,检测所述应用程序是否具有漏洞。
12.根据权利要求11所述的方法,所述任务调度服务器接收应用程序开发方所提交的应用程序的安装包文件具体为:所述任务调度服务器提供审计页面,接收应用程序开发方通过所述审计页面所提交的应用程序的安装包文件。
13.根据权利要求11所述的方法,所述安全审计结果包括漏洞名称、漏洞修复建议、漏洞出处和漏洞等级中的一种或多种,其中,所述漏洞等级分为高危、中危和低危。
14.根据权利要求11或13所述的方法,还包括:收集大量应用程序的漏洞静态特征和漏洞动态特征,预先将所述漏洞静态特征和漏洞动态特征存储到云端漏洞知识库中。
15.根据权利要求11所述的方法,所述结合所述静态检测结果和所述动态检测结果,检测所述应用程序是否具有漏洞进一步包括:
若所述静态检测结果表明所述安装包文件的静态特征与预先存储的至少一个漏洞静态特征相匹配,和/或,所述动态检测结果表明所述终端设备实际运行所述应用程序所产生的动态特征与预先存储的至少一个漏洞动态特征相匹配,则检测出所述应用程序具有漏洞。
16.根据权利要求11所述的方法,所述将所述终端设备实际运行所述应用程序所产生的动态特征与预先存储的漏洞动态特征进行匹配,得到动态检测结果进一步包括:
利用所述预先存储的漏洞动态特征,根据与所述预先存储的漏洞动态特征对应的动态检测逻辑通过触发终端设备中的动态检测的代理程序对安装有所述安装包文件的终端设备进行动态检测,得到动态检测结果。
17.根据权利要求11所述的方法,所述漏洞静态特征包括:调用危险的应用程序接口、和/或具有危险的应用程序配置文件、和/或无法实现关键安全函数。
18.根据权利要求11所述的方法,所述用于实现漏洞攻击的信息包括:应用程序潜在的攻击点和攻击应用程序所需的参数。
19.根据权利要求11所述的方法,所述漏洞动态特征包括:SQL注入检测返回特定的错误代码和/或应用程序存在全局可读写的文件和/或远程代码执行。
CN201510036546.7A 2015-01-23 2015-01-23 提供应用安全审计功能的系统及方法 Active CN104537308B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510036546.7A CN104537308B (zh) 2015-01-23 2015-01-23 提供应用安全审计功能的系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510036546.7A CN104537308B (zh) 2015-01-23 2015-01-23 提供应用安全审计功能的系统及方法

Publications (2)

Publication Number Publication Date
CN104537308A CN104537308A (zh) 2015-04-22
CN104537308B true CN104537308B (zh) 2017-04-05

Family

ID=52852830

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510036546.7A Active CN104537308B (zh) 2015-01-23 2015-01-23 提供应用安全审计功能的系统及方法

Country Status (1)

Country Link
CN (1) CN104537308B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106897622A (zh) * 2015-12-21 2017-06-27 北京奇虎科技有限公司 验证应用漏洞的方法和装置
CN105653943B (zh) * 2015-12-24 2018-08-07 北京奇虎科技有限公司 Android应用的日志审计方法及系统
CN107239702A (zh) * 2016-03-29 2017-10-10 腾讯科技(深圳)有限公司 一种安全漏洞检测的方法以及装置
CN107766720A (zh) * 2016-08-19 2018-03-06 阿里巴巴集团控股有限公司 对应用程序进行审计的系统、方法、装置及测试设备
CN110460575A (zh) * 2019-07-11 2019-11-15 珠海市鸿瑞信息技术股份有限公司 一种能够实现安全审计功能网络安全态势感知系统
CN112558986A (zh) * 2019-09-25 2021-03-26 上海哔哩哔哩科技有限公司 Apk安装包在线自动解析方法及系统
CN110704845A (zh) * 2019-09-26 2020-01-17 海南新软软件有限公司 一种与任务相关联的应用漏洞的处理方法、装置及系统
CN111641694A (zh) * 2020-05-19 2020-09-08 全链通有限公司 基于区块链的应用程序发布方法、设备及存储介质
CN112269984B (zh) * 2020-09-23 2023-07-11 江苏三台山数据应用研究院有限公司 一种保障源码安全的自动化代码审计平台系统
CN112149123B (zh) * 2020-09-29 2023-01-20 公安部第三研究所 一种应用程序的安全检查系统及方法
CN113553193B (zh) * 2021-09-22 2022-02-01 北京安华金和科技有限公司 一种镜像数据审计分配处理方法和系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103377341A (zh) * 2012-04-28 2013-10-30 北京网秦天下科技有限公司 一种安全检测的方法和系统
CN103984900A (zh) * 2014-05-19 2014-08-13 南京赛宁信息技术有限公司 Android应用漏洞检测方法及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103377341A (zh) * 2012-04-28 2013-10-30 北京网秦天下科技有限公司 一种安全检测的方法和系统
CN103984900A (zh) * 2014-05-19 2014-08-13 南京赛宁信息技术有限公司 Android应用漏洞检测方法及系统

Also Published As

Publication number Publication date
CN104537308A (zh) 2015-04-22

Similar Documents

Publication Publication Date Title
CN104537308B (zh) 提供应用安全审计功能的系统及方法
US9715593B2 (en) Software vulnerabilities detection system and methods
CN104517054B (zh) 一种检测恶意apk的方法、装置、客户端和服务器
Walden et al. Predicting vulnerable components: Software metrics vs text mining
CN104537309A (zh) 应用程序漏洞检测方法、装置及服务器
CN101661543B (zh) 软件源代码安全漏洞的检测方法及检测装置
CN103729597B (zh) 系统启动校验方法、系统启动校验装置和终端
CN108989355B (zh) 一种漏洞检测方法和装置
CN103473506A (zh) 用于识别恶意apk文件的方法和装置
US8572747B2 (en) Policy-driven detection and verification of methods such as sanitizers and validators
CN110474900B (zh) 一种游戏协议测试方法及装置
JP2019003309A (ja) 検査装置
Huang et al. Detecting sensitive data disclosure via bi-directional text correlation analysis
Zhang et al. Ripple: Reflection analysis for android apps in incomplete information environments
CN102622556A (zh) 基于程序切片技术的Web服务安全分析方法
US10681076B1 (en) Automated security analysis of software libraries
CN110929264A (zh) 漏洞检测方法、装置、电子设备及可读存储介质
Pérez et al. Lapse+ static analysis security software: Vulnerabilities detection in java ee applications
CN108062474A (zh) 文件的检测方法及装置
CN116383833A (zh) 软件程序代码的测试方法及其装置、电子设备、存储介质
Zhu et al. Detecting privilege escalation attacks through instrumenting web application source code
CN107392027A (zh) 一种网站漏洞测试方法、测试系统、电子设备及存储介质
CN115391230A (zh) 一种测试脚本生成、渗透测试方法、装置、设备及介质
CN104239801B (zh) 0day漏洞的识别方法以及装置
CN106529287A (zh) 应用漏洞自动加固的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220727

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.