CN103023710A - 一种安全测试系统和方法 - Google Patents

一种安全测试系统和方法 Download PDF

Info

Publication number
CN103023710A
CN103023710A CN2011102815338A CN201110281533A CN103023710A CN 103023710 A CN103023710 A CN 103023710A CN 2011102815338 A CN2011102815338 A CN 2011102815338A CN 201110281533 A CN201110281533 A CN 201110281533A CN 103023710 A CN103023710 A CN 103023710A
Authority
CN
China
Prior art keywords
access request
application program
log record
access
abnormal
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.)
Granted
Application number
CN2011102815338A
Other languages
English (en)
Other versions
CN103023710B (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201110281533.8A priority Critical patent/CN103023710B/zh
Publication of CN103023710A publication Critical patent/CN103023710A/zh
Priority to HK13106083.0A priority patent/HK1179430A1/zh
Application granted granted Critical
Publication of CN103023710B publication Critical patent/CN103023710B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本申请提供了一种安全测试系统和方法,其中的系统具体包括:访问日志记录装置,用于针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中,其中,所述用户访问请求包括正常访问请求和异常访问请求;访问日志提取装置,用于从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录;及访问测试装置,用于使用模糊测试脚本进行异常访问请求的重放攻击,并依据返回的响应判断漏洞是否存在。本申请能够降低安全测试所消耗大量的机器资源和人力资源,提高安全测试的业务逻辑覆盖率。

Description

一种安全测试系统和方法
技术领域
本申请涉及安全测试技术领域,特别是涉及一种安全测试系统和方法。
背景技术
目前,随着因特网及电子商务技术的成熟发展,许许多多的在线应用程序提供各式各样方便且强大的功能(如网络购物、网络银行交易等)以供用户使用。当涉及到用户数据或者交易行为时,这些在线应用程序的安全性也变得格外重要。无论是在线应用程序用户,还是在线服务程序服务的提供者,都在意所提供的功能服务是否有足够的安全性考虑。这些常用的在线应用程序如果被黑客植入恶意程序,在用户执行的过程中,会盗取其隐私数据,将会造成用户及服务提供者的损失。另外,在线应用程序如果不幸被黑客植入恶意程序,在线应用程序服务的提供者非常需要在第一时间得到通知,进而马上处理,以减轻或避免客户和自己的损失。
目前,存在许多在线应用程序的安全测试方案,现有典型的安全测试方法主要有两种:
方法一、基于蜘蛛方式抓取页面所有URL(统一资源定位符,UniformResource Locator)进行验证攻击测试,其具有如下缺点:
1、其需要以蜘蛛的方式抓取在线应用程序的链接页面,蜘蛛式的抓取会消耗额外的机器资源;
2、蜘蛛式的抓取还会抓取大量、无用的页面,且无法定制页面;这样,在拥有添加、删除、修改操作的功能点上,使用多个漏洞验证脚本会产生大量的垃圾数据,且会删除掉正常的内容;这不仅消耗大量的时间,而且会降低业务逻辑覆盖率。
方法二、为了避免消耗额外的机器资源,方法二基于人工操作行为记录的URL验证攻击测试;但由于其需要人工操作,会消耗大量的人力资源。
发明内容
本申请所要解决的技术问题是,提供一种安全测试系统和方法,以降低安全测试所消耗大量的机器资源和人力资源,提高安全测试的业务逻辑覆盖率。
为了解决上述问题,本申请公开了一种安全测试系统,包括:
访问日志记录装置,用于针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中,其中,所述用户访问请求包括正常访问请求和异常访问请求;
访问日志提取装置,用于从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录;及
访问测试装置,用于使用模糊测试脚本进行异常访问请求的重放攻击,并依据返回的响应判断漏洞是否存在。
优选的,所述访问测试装置包括:
注入模块,用于通过恶意参数将脚本代码数据注入到在线应用程序的页面中,其中,所述脚本代码用于描述异常访问请求的特征数据;
判断模块,用于判断所述恶意参数是否在在线应用程序的页面中原始存在,若是,则认为漏洞存在,否则,认为漏洞不存在。
另一方面,本申请还公开了一种安全测试方法,包括:
针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中,其中,所述用户访问请求包括正常访问请求和异常访问请求;
从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录;
使用模糊测试脚本进行异常访问请求的重放攻击,并依据返回的响应判断漏洞是否存在。
优选的,所述方法还包括:
针对在线应用程序,将其功能测试过程中测试访问请求的特征数据保存至测试日志记录中;
使用模糊测试脚本进行测试访问请求的重放攻击,并依据返回的响应判断漏洞是否存在。
优选的,所述从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录的步骤,包括:
依据异常访问请求的攻击特征配置相应的提取规则;
将所述访问日志记录映射为数据库表,并依据所述提取规则,从所述数据库表中查询提取得到与异常访问请求相应的访问日志记录。
优选的,所述针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中的步骤,包括:
对在线应用程序的所有页面注入脚本代码,并依据所述脚本代码取得用户访问请求的特征数据;
将用户访问请求的特征数据保存到访问日志记录中。
优选的,所述使用模糊测试脚本进行异常访问请求的重放攻击,并依据返回的响应判断漏洞是否存在的步骤,包括:
通过恶意参数将脚本代码数据注入到在线应用程序的页面中,其中,所述脚本代码用于描述异常访问请求的特征数据;
判断所述恶意参数是否在在线应用程序的页面中原始存在,若是,则认为漏洞存在,否则,认为漏洞不存在。
优选的,所述从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录的步骤为,针对保存时间大于预置时间间隔的在线应用程序的访问日志记录,从中提取与异常访问请求相应的访问日志记录。
优选的,所述用户访问请求的特征数据至少包括用户访问页面的IP地址、用户访问页面的来源页面地址、用户在当前页面的身份认证信息、URL、请求参数、用户账号、代理服务器信息、会话cookies、时间戳中的一种或多种。
优选的,所述访问日志记录位于hadoop分布式文件系统中。
与现有技术相比,本申请具有以下优点:
首先,本申请基于日志分析进行自动化的安全测试,能够降低安全测试的人力资源;
其次,由于本申请异常访问请求的重放攻击为访问日志记录中异常访问请求的重现,而所述访问日志记录能够覆盖在线应用程序的所有链接页面;故相对于现有技术需要以蜘蛛的方式抓取在线应用程序的链接页面,抓取大量、无用的页面,且无法定制页面的情况,能够提高安全测试的业务逻辑覆盖率;
再者,由于日志记录功能能够在线应用程序的服务器中实现,故本申请能够避免现有技术中蜘蛛式的抓取所消耗额外的机器资源;
另外、相对于现有技术在拥有添加、删除、修改操作的功能点上,使用多个漏洞验证脚本会产生大量的垃圾数据,且会删除掉正常的内容,这些操作会消耗大量的时间;而本申请只需从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录,并使用模糊测试脚本进行异常访问请求的重放攻击,所述自动化的提取和测试流程能够降低安全测试所花费的时间;
进一步,相对于现有技术仅仅针对URL进行验证攻击测试,而对于用户在使用这些在线应用程序过程中的真正使用情境(如网络购物交易,网络银行转账交易等)未能做到验证攻击测试;而本申请中,所述用户访问请求的特征数据至少包括用户访问页面的IP地址、用户访问页面的来源页面地址、用户在当前页面的身份认证信息、URL、请求参数、用户账号、代理服务器信息、会话cookies、时间戳中的一种或多种,能够对于用户在使用这些在线应用程序过程中的真正使用情境进行安全测试,因此,能够进一步提高安全测试的业务逻辑覆盖率;
更进一步,针对现有技术安全测试向功能测试索取数据所带来的漏测问题,本申请还可以在结合功能测试对业务进行覆盖的同时,进行安全功能点的全面覆盖;具体而言,在测试环境下将功能测试人员在功能测试过程中测试访问请求的特征数据保存至测试日志记录中;由于所述测试日志记录能够记录完整、精确的数据,故本申请能够在测试过程中实现安全功能点的全面覆盖,进一步提高安全测试的业务逻辑覆盖率。
附图说明
图1是本申请一种安全测试系统实施例1的结构图;
图2是本申请一种在线应用程序的Web服务模式示意图;
图3是本申请一种安全测试系统实施例2的结构图;
图4是现有技术一种测试系统的工作示意图;
图5是本申请一种测试系统的结构示意图;
图6是本申请一种安全测试系统实施例3的结构图;
图7是图6所示安全测试系统的工作流程图;
图8是本申请一种安全测试方法实施例的流程图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
本申请实施例的核心构思之一在于,针对现有安全测试方法业务逻辑覆盖率低及人工执行困难的问题,基于日志分析进行自动化的安全测试,具体而言,依据访问日志记录中记录的用户访问请求的特征数据,使用模糊测试脚本进行异常访问请求的重放攻击。
相对于现有技术需要以蜘蛛的方式抓取在线应用程序的链接页面,抓取大量、无用的页面,且无法定制页面的情况,由于本申请异常访问请求的重放攻击为访问日志记录中异常访问请求的重现,而所述访问日志记录能够覆盖在线应用程序的所有链接页面;因此,本申请不仅能够避免现有技术中蜘蛛式的抓取所消耗额外的机器资源,而且能够提高安全测试的业务逻辑覆盖率。
参照图1,示出了本申请一种安全测试系统实施例1的结构图,具体可以包括:
访问日志记录装置101,用于针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中,其中,所述用户访问请求可以包括正常访问请求和异常访问请求;
访问日志提取装置102,用于从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录;及
访问测试装置103,用于使用模糊测试脚本进行异常访问请求的重放攻击,并依据返回的响应判断漏洞是否存在。
本申请中,在线应用程序主要指带网络接连或需要网络接连才能使用的程序,其可以是B/S(浏览器/服务器,Browser/Server)结构,如网络购物、网络银行交易、网络邮箱、网络博客、网络微博、网络论坛、QQ空间等需要浏览器支持的程序。本申请对具体的在线应用程序不加以限制。
访问日志记录装置101
对于在线应用程序而言,访问日志记录可用于记录Web(网络)服务器接收和处理用户访问请求过程中的各种原始信息。参照图2,在本申请的一种应用示例中,在线应用程序的Web服务模式主要可以包括如下步骤:
步骤1、客户端201向Web服务器202发起用户访问请求;
在实际应用中,所述用户访问请求至少包括用户访问页面的IP地址、用户访问页面的来源页面地址、用户在当前页面的身份认证信息、URL、请求参数、用户账号、代理服务器信息、会话cookies(小型文字档)、时间戳中的一种或多种。
步骤2、Web服务器202依据所述用户访问请求,运行相应的功能,并将信息返回给客户端201,如果出现错误,将返回错误代码;
步骤3、日志系统203将用户访问过程中的相关信息以追加的方式保存到访问日志目录中。
在本申请的一种优选实施例中,所述访问日志记录装置101可以进一步包括:
获取模块,用于对在线应用程序的页面注入脚本代码,并依据所述脚本代码取得用户访问请求的特征数据;
保存模块,用于将用户访问请求的特征数据保存到访问日志记录中。
为了便于对所述访问日志记录进行分析使用,在本申请实施例中,优选的是,所述访问日志记录可以位于hadoop分布式文件系统中。
HDFS(hadoop分布式文件系统,hadoop Distributed File System)被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统。它和现有的分布式文件系统有很多共同点,但也有明显的区别,具体表现在:①HDFS是一个高度容错性的系统,适合部署在廉价的机器上;②HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用;③HDFS放宽了一部分POSIX(可移植操作系统接口,Portable Operating System Interface)约束,来实现流式读取文件系统数据的目的。
以淘宝为例,其可以对所有HTML(文本标记语言,Hypertext MarkupLanguage)页面注入javascript代码,利用javascript代码取得用户访问请求的特征数据,并保存到访问日志记录中。
如下是一种javascript代码的示例:
Figure BDA0000093090020000071
参照表1,其示出了通过上述javascript代码获取用户访问请求的特征数据,并存储到集群数据库字段格式。
表1
Figure BDA0000093090020000081
可以理解,表1所示用户访问请求的特征数据仅是作为示例,实际上,在线应用程序可以针对实际的功能服务需求,获取各自用户访问请求的特征数据,并保存至相应的访问日志记录中,本申请对具体的用户访问请求的特征数据不加以限制。
访问日志提取装置102
访问日志记录中会记录正常访问请求,同时也会记录异常访问请求,这里,正常访问请求主要指正常用户的HTTP(超文本传输协议,HyperTextTransfer Protocol)请求,异常访问请求主要指非法攻击者的攻击请求。由于非法攻击者的攻击请求中包含攻击特征,故可以根据攻击特征将异常访问请求的特征数据挖掘出来;在实际中,攻击特征可存储在url\cookie\referre字段中。
在本申请的一种优选实施例汇总,所述访问日志提取装置102可以进一步包括:
配置模块,用于依据异常访问请求的攻击特征配置相应的提取规则;
提取模块,用于将所述访问日志记录映射为数据库表,并依据所述提取规则,从所述数据库表中查询提取得到与异常访问请求相应的访问日志记录。
在具体实现中,可以用正则表达式描述所述提取规则,其中,所述正则表达式可以用SQL、MySQL等语言表示。例如,可以用Hive分析工具完全所述提取。其中,Hive是基于hadoop框架支持SQL语义的大规模数据分析工具,其可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能。
在本申请的一种应用示例中,Hive查询提取得到与异常访问请求相应的访问日志记录的步骤具体可以包括:
步骤1、创建表,用于存储查询结果;
Figure BDA0000093090020000091
Figure BDA0000093090020000101
步骤2、指定数据源;
ALTER TABLE log_20110601 ADD PARTITION(logdate=′20110601′)LOCATION′hdfs://hdpnn:9000/group/taobao/taobao/dw/log1/2011/20110601′;
备注:Location参数指定日志数据按日期、文件存储在集群服务器的物理路径。
步骤3、查询结果保存。
INSERT OVERWRITE TABLE log_20110601_xssPARTITION(logdate=′20110601′)select url from log_20110601 where url like′%script%′and url like′%alert%′;
备注:where参数用于过滤非法的恶意的黑客攻击记录,其中script+alert组合,用于过滤XSS(跨站脚本攻击,Cross Site Script)攻击特征相应的请求。
在本申请实施例中,优选的是,所述攻击特征可以包括攻击脚本、攻击形式中的一种或多种。如上例中,script代表攻击脚本,alert表示弹窗,属于攻击形式的一种。
访问测试装置103
为了重现访问日志记录中异常访问请求,本申请使用模糊测试脚本进行异常访问请求的重放攻击,并结合在线应用程序服务器返回的响应判断漏洞是否存在。重放攻击(Replay attack)的原理是,利用异常访问请求的特征数据中存在的数据包进行重放,通过分析响应等信息,依照特定的规则、方法进行判定漏洞是否存在的一种方法。模糊测试(Fuzz testing)基于模糊测试理论进行数据包回放以实现漏洞攻击、验证的测试方法。
在本申请的一种优选实施例中,所述访问测试装置103可以进一步包括:
注入模块,用于通过恶意参数将脚本代码数据注入到在线应用程序的页面中,其中,所述脚本代码用于描述异常访问请求的特征数据;
判断模块,用于判断所述恶意参数是否在在线应用程序的页面中原始存在,若是,则认为漏洞存在,否则,认为漏洞不存在。
在具体实现中,在所述恶意参数是否原样显示在在线应用程序的页面的源代码中时,则可认为漏洞存在。
如下示出了本申请一种漏洞扫描的实现过程示例,其从针对Hive提出的异常访问请求的特征数据tmpuri[]进行处理,并调用漏洞扫描函数xss_start()进行模糊判断,其中,replace()函数用恶意参数替换tmpuri[]中的url参数。
Figure BDA0000093090020000121
Figure BDA0000093090020000131
在具体实现中,异常访问请求的安全测试时机可以在预置时间间隔以后。对于在线应用程序而言,通常访问量比较大,这就导致访问日志记录中的数据流量比较大;针对这种情形,在本申请的一种优选实施例中,异常访问请求的安全测试时机可以在预置时间间隔以后;也即,所述访问日志提取装置102可以具体用于,针对保存时间大于预置时间间隔的在线应用程序的访问日志记录,从中提取与异常访问请求相应的访问日志记录。
在具体实现中,本领域技术人员可以根据实际需要,设置所述预置时间间隔,例如,其可以是12小时、24小时、28小时等等,如果其为24小时,则代表线上Acookie日志安全测试的时机为第二天的第一时间。
总之,本申请具有如下优点:
1、基于日志分析进行自动化的安全测试,能够降低安全测试所需的人力资源;
2、由于本申请异常访问请求的重放攻击为访问日志记录中异常访问请求的重现,而所述访问日志记录能够覆盖在线应用程序的所有链接页面上;故相对于现有技术需要以蜘蛛的方式抓取在线应用程序的链接页面,抓取大量、无用的页面,且无法定制页面的情况,能够提高安全测试的业务逻辑覆盖率;
3、由于日志记录功能能够在线应用程序的服务器中实现,故本申请能够避免现有技术中蜘蛛式的抓取所消耗额外的机器资源;
4、现有技术抓取大量、无用的页面,且无法定制页面;这样,在拥有添加、删除、修改操作的功能点上,使用多个漏洞验证脚本会产生大量的垃圾数据,且会删除掉正常的内容,这些操作会消耗大量的时间;而本申请只需从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录,并使用模糊测试脚本进行异常访问请求的重放攻击,所述自动化的提取和测试流程能够降低安全测试所花费的时间;
5、现有技术仅仅针对URL进行验证攻击测试,而对于用户在使用这些在线应用程序过程中的真正使用情境(如网络购物交易,网络银行转账交易等)未能做到验证攻击测试,因为真正的使用情境并非仅是URL,其还可以包括在用户与在线应用程序使用HTTP通信协议沟通时的userid(用户账号)、cookies(小型文字档)、UrlInfo(请求参数)等信息,这样,现有技术验证攻击测试所使用信息不全,导致安全测试的业务逻辑覆盖率低下;而本申请中,所述用户访问请求的特征数据至少包括用户访问页面的IP地址、用户访问页面的来源页面地址、用户在当前页面的身份认证信息、URL、请求参数、用户账号、代理服务器信息、会话cookies、时间戳中的一种或多种,能够对于用户在使用这些在线应用程序过程中的真正使用情境进行安全测试,因此,能够进一步提高安全测试的业务逻辑覆盖率。
参照图3,其示出了本申请一种安全测试系统实施例2的结构,具体可以包括:
访问日志记录装置301,用于针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中,其中,所述用户访问请求可以包括正常访问请求和异常访问请求;
访问日志提取装置302,用于从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录;
访问测试装置303,用于使用模糊测试脚本进行异常访问请求的重放攻击,并依据返回的响应判断漏洞是否存在;
测试日志记录装置304,用于针对在线应用程序,将其功能测试过程中测试访问请求的特征数据保存至测试日志记录中;
测试应用装置305,用于使用模糊测试脚本进行测试访问请求的重放攻击,并依据返回的响应判断漏洞是否存在。
参照图4,其示出了现有技术一种测试系统的工作示意图,其中,安全人员在对应用进行安全测试时,需要向功能人员(功能测试的执行人员)索取应用的页面、功能点等测试数据。但是,多数情况下,功能人员很有可能提供不完整、不精确的数据,所以,在多数情冲下所述索取机制会造成漏测的问题。
针对漏测的问题,本实施例在结合功能测试对业务进行覆盖的同时,进行安全功能点的全面覆盖。具体而言,在测试环境下将功能测试人员在功能测试过程中测试访问请求的特征数据保存至测试日志记录中。在实际中,所述测试访问请求的特征数据至少包括测试人员访问页面的IP地址、测试人员访问页面的来源页面地址、测试人员在当前页面的身份认证信息、URL、请求参数、测试人员账号、代理服务器信息、会话cookies、时间戳中的一种或多种,也即,所述测试日志记录能够记录完整、精确的数据,故本申请能够在测试过程中实现安全功能点的全面覆盖。
参照图5,示出了本申请一种测试系统的结构示意图,其中,
功能测试模块501,用于针对在线应用程序,执行功能测试;
测试环境记录模块502,用于将功能测试过程中测试访问请求的特征数据保存至测试日志记录中;
测试日志分析模块503,用于通过分析所述测试日志记录,提取得到相应的URL;
安全数据重放模块504,用于使用模糊测试脚本进行测试访问请求的重放攻击,依据返回的响应,判断漏洞是否存在,生成漏洞报告;
开发人员505可依据所述漏洞报告对在线应用程序进行修复,并将修复结果更新到测试环境记录模块502;
线上发布模块506,用于对通过功能测试的在线应用程序进行线上发布。
参照图6,其示出了本申请一种安全测试系统实施例3的结构图,具体可以包括:
访问日志记录装置601,用于针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中,其中,所述用户访问请求可以包括正常访问请求和异常访问请求;
Hive服务器602,用于从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录;
测试日志服务器603,用于针对在线应用程序,将其功能测试过程中测试访问请求的特征数据保存至测试日志记录中;
本地日志分析服务器604,用于从Hive服务器下载访问日志记录到本地,和/或,从测试日志服务器下载测试日志记录到本地,并从本地的访问日志记录和/或测试日志记录中分析得到相应的数据包;
线上服务器605,用于使用模糊测试脚本进行异常访问请求中数据包的重放攻击;及
测试应用服务器606,用于使用模糊测试脚本进行测试访问请求中数据包的重放攻击。
为了说明本申请在实际中的应用,图7示出了图6所示安全测试系统的工作流程图,其中,管理员通过WEB控制台进行操作,所述操作具体可以包括:
1、其可以通过访问mysql漏洞库实时查看安全测试结果,其中,mysql漏洞库用于保存本地日志分析服务器604提交的安全测试结果;
2、其可以将这些安全测试结果进行报表输出;
3、其可以提供API(应用程序编程接口,Application ProgrammingInterface)接口,以供其它人员获取这些安全测试结果;
4、其可以实时修改更新mysql漏洞规则库,其中,所述mysql漏洞规则库用于存放依据异常访问请求的攻击特征配置相应的提取规则。
另外,mysql漏洞库中安全测试结果还可被提交至STC(安全测试中心,safety test center),供开发人员查看;输出的报表还可以线上漏洞报告邮件的形式发送给开发人员;由开发人员依据这些数据对在线应用程序进行漏洞修复。
与前述系统实施例相应,本申请还公开了一种安全测试方法,参照图8,具体可以包括:
步骤801、针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中,其中,所述用户访问请求可以包括正常访问请求和异常访问请求;
步骤802、从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录;
步骤803、使用模糊测试脚本进行异常访问请求的重放攻击,并依据返回的响应判断漏洞是否存在。
在本申请的一种优选实施例中,所述方法还可以包括:
针对在线应用程序,将其功能测试过程中测试访问请求的特征数据保存至测试日志记录中;
使用模糊测试脚本进行测试访问请求的重放攻击,并依据返回的响应判断漏洞是否存在。
在本申请的一种优选实施例中,所述从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录的步骤,可以进一步包括:
依据异常访问请求的攻击特征配置相应的提取规则;
将所述访问日志记录映射为数据库表,并依据所述提取规则,从所述数据库表中查询提取得到与异常访问请求相应的访问日志记录。
在本申请的一种优选实施例中,所述针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中的步骤,具体可以包括:
对在线应用程序的所有页面注入脚本代码,并依据所述脚本代码取得用户访问请求的特征数据;
将用户访问请求的特征数据保存到访问日志记录中。
在本申请的一种优选实施例中,所述使用模糊测试脚本进行异常访问请求的重放攻击,并依据返回的响应判断漏洞是否存在的步骤,可以进一步包括:
通过恶意参数将脚本代码数据注入到在线应用程序的页面中,其中,所述脚本代码用于描述异常访问请求的特征数据;
判断所述恶意参数是否在在线应用程序的页面中原始存在,若是,则认为漏洞存在,否则,认为漏洞不存在。
在本申请的另一种优选实施例中,所述从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录的步骤为,针对保存时间大于预置时间间隔的在线应用程序的访问日志记录,从中提取与异常访问请求相应的访问日志记录。
在本申请实施例中,优选的是,所述攻击特征可以包括攻击脚本、攻击形式中的一种或多种。
在本申请实施例中,优选的是,可以采用正则表达式描述所述提取规则。
在本申请实施例中,优选的是,所述用户访问请求的特征数据至少可以包括用户访问页面的IP地址、用户访问页面的来源页面地址、用户在当前页面的身份认证信息、URL、请求参数、用户账号、代理服务器信息、会话cookies、时间戳中的一种或多种。
在本申请实施例中,优选的是,所述访问日志记录可以位于hadoop分布式文件系统中。
对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
以上对本申请所提供的一种安全测试系统和方法,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种安全测试系统,其特征在于,包括:
访问日志记录装置,用于针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中,其中,所述用户访问请求包括正常访问请求和异常访问请求;
访问日志提取装置,用于从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录;及
访问测试装置,用于使用模糊测试脚本进行异常访问请求的重放攻击,并依据返回的响应判断漏洞是否存在。
2.如权利要求1所述的系统,其特征在于,所述访问测试装置包括:
注入模块,用于通过恶意参数将脚本代码数据注入到在线应用程序的页面中,其中,所述脚本代码用于描述异常访问请求的特征数据;
判断模块,用于判断所述恶意参数是否在在线应用程序的页面中原始存在,若是,则认为漏洞存在,否则,认为漏洞不存在。
3.一种安全测试方法,其特征在于,包括:
针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中,其中,所述用户访问请求包括正常访问请求和异常访问请求;
从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录;
使用模糊测试脚本进行异常访问请求的重放攻击,并依据返回的响应判断漏洞是否存在。
4.如权利要求3所述的方法,其特征在于,还包括:
针对在线应用程序,将其功能测试过程中测试访问请求的特征数据保存至测试日志记录中;
使用模糊测试脚本进行测试访问请求的重放攻击,并依据返回的响应判断漏洞是否存在。
5.如权利要求3所述的方法,其特征在于,所述从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录的步骤,包括:
依据异常访问请求的攻击特征配置相应的提取规则;
将所述访问日志记录映射为数据库表,并依据所述提取规则,从所述数据库表中查询提取得到与异常访问请求相应的访问日志记录。
6.如权利要求3所述的方法,其特征在于,所述针对在线应用程序,将用户访问请求的特征数据保存到访问日志记录中的步骤,包括:
对在线应用程序的所有页面注入脚本代码,并依据所述脚本代码取得用户访问请求的特征数据;
将用户访问请求的特征数据保存到访问日志记录中。
7.如权利要求3所述的方法,其特征在于,所述使用模糊测试脚本进行异常访问请求的重放攻击,并依据返回的响应判断漏洞是否存在的步骤,包括:
通过恶意参数将脚本代码数据注入到在线应用程序的页面中,其中,所述脚本代码用于描述异常访问请求的特征数据;
判断所述恶意参数是否在在线应用程序的页面中原始存在,若是,则认为漏洞存在,否则,认为漏洞不存在。
8.如权利要求3所述的方法,其特征在于,所述从在线应用程序的访问日志记录中提取与异常访问请求相应的访问日志记录的步骤为,针对保存时间大于预置时间间隔的在线应用程序的访问日志记录,从中提取与异常访问请求相应的访问日志记录。
9.如权利要求3至8中任一项所述的方法,其特征在于,所述用户访问请求的特征数据至少包括用户访问页面的IP地址、用户访问页面的来源页面地址、用户在当前页面的身份认证信息、URL、请求参数、用户账号、代理服务器信息、会话cookies、时间戳中的一种或多种。
10.如权利要求3至8中任一项所述的方法,其特征在于,所述访问日志记录位于hadoop分布式文件系统中。
CN201110281533.8A 2011-09-21 2011-09-21 一种安全测试系统和方法 Active CN103023710B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110281533.8A CN103023710B (zh) 2011-09-21 2011-09-21 一种安全测试系统和方法
HK13106083.0A HK1179430A1 (zh) 2011-09-21 2013-05-23 種安全測試系統和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110281533.8A CN103023710B (zh) 2011-09-21 2011-09-21 一种安全测试系统和方法

Publications (2)

Publication Number Publication Date
CN103023710A true CN103023710A (zh) 2013-04-03
CN103023710B CN103023710B (zh) 2016-06-08

Family

ID=47971863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110281533.8A Active CN103023710B (zh) 2011-09-21 2011-09-21 一种安全测试系统和方法

Country Status (2)

Country Link
CN (1) CN103023710B (zh)
HK (1) HK1179430A1 (zh)

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103365780A (zh) * 2013-07-22 2013-10-23 百度在线网络技术(北京)有限公司 异常测试覆盖率计算方法及装置
CN103593605A (zh) * 2013-10-24 2014-02-19 复旦大学 一种基于权限使用行为的安卓平台应用程序动态分析系统
CN104144142A (zh) * 2013-05-07 2014-11-12 阿里巴巴集团控股有限公司 一种Web漏洞挖掘方法及系统
CN104598348A (zh) * 2015-02-28 2015-05-06 南京途牛科技有限公司 一种远程实时分析外部系统接口性能的方法及系统
CN105306553A (zh) * 2015-09-30 2016-02-03 北京奇艺世纪科技有限公司 访问请求调度方法及装置
CN106302337A (zh) * 2015-05-22 2017-01-04 腾讯科技(深圳)有限公司 漏洞检测方法和装置
CN106649075A (zh) * 2015-10-30 2017-05-10 西门子公司 模糊测试方法和装置
CN106909499A (zh) * 2015-12-22 2017-06-30 阿里巴巴集团控股有限公司 测试方法和装置
CN106998255A (zh) * 2016-01-22 2017-08-01 腾讯科技(深圳)有限公司 一种反馈处理服务器、网络系统以及反馈处理方法
CN107040504A (zh) * 2016-02-04 2017-08-11 北京京东尚科信息技术有限公司 测试方法和装置
CN107515820A (zh) * 2016-06-17 2017-12-26 阿里巴巴集团控股有限公司 服务器监测方法及装置、检测服务器
CN108028843A (zh) * 2015-09-24 2018-05-11 微软技术许可有限责任公司 被动式web应用防火墙
CN108509791A (zh) * 2018-02-09 2018-09-07 清华大学 检测处理器的方法、检测装置以及检测系统
CN108551404A (zh) * 2018-04-20 2018-09-18 北京百度网讯科技有限公司 客户端信息分析的方法、装置、存储介质和终端设备
CN108667770A (zh) * 2017-03-29 2018-10-16 腾讯科技(深圳)有限公司 一种网站的漏洞测试方法、服务器及系统
CN108920377A (zh) * 2018-07-16 2018-11-30 杭州安恒信息技术股份有限公司 一种日志回放测试方法、系统、装置及可读存储介质
CN109104337A (zh) * 2018-11-01 2018-12-28 郑州云海信息技术有限公司 一种测试网络访问控制工具的方法、装置及设备
CN109255240A (zh) * 2018-07-18 2019-01-22 北京明朝万达科技股份有限公司 一种漏洞处理方法和装置
CN109710270A (zh) * 2018-12-29 2019-05-03 北京神州绿盟信息安全科技股份有限公司 一种安全应用交付方法、装置以及存储介质
CN109818973A (zh) * 2019-03-13 2019-05-28 信联科技(南京)有限公司 一种基于串接方式的协议模糊测试方法
CN110135166A (zh) * 2019-05-08 2019-08-16 北京国舜科技股份有限公司 一种针对业务逻辑漏洞攻击的检测方法及系统
CN110348218A (zh) * 2019-06-06 2019-10-18 国家计算机网络与信息安全管理中心 一种基于车载终端系统的漏洞测试方法及装置
CN110472414A (zh) * 2019-07-23 2019-11-19 中国平安人寿保险股份有限公司 系统漏洞的检测方法、装置、终端设备及介质
CN110611564A (zh) * 2019-07-30 2019-12-24 云南昆钢电子信息科技有限公司 一种基于时间戳的api重放攻击的防御系统及方法
CN110909380A (zh) * 2019-11-11 2020-03-24 西安交通大学 一种异常文件访问行为监控方法和装置
CN110909361A (zh) * 2019-11-08 2020-03-24 北京长亭未来科技有限公司 一种漏洞检测方法,装置和计算机设备
CN111651356A (zh) * 2020-06-03 2020-09-11 北京奇艺世纪科技有限公司 一种应用程序测试方法、装置及系统
CN111953636A (zh) * 2019-05-15 2020-11-17 北京数安鑫云信息技术有限公司 内网威胁检测方法、装置、计算机可读存储介质和计算机设备
CN112953896A (zh) * 2021-01-26 2021-06-11 杭州迪普科技股份有限公司 日志报文的回放方法及装置
CN113448864A (zh) * 2021-07-14 2021-09-28 中国银行股份有限公司 一种测试覆盖率确定方法及其相关设备
CN113645198A (zh) * 2021-07-23 2021-11-12 谭静 一种计算机网络信息安全监护方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101425937A (zh) * 2007-11-02 2009-05-06 北京启明星辰信息技术有限公司 一种适于高速局域网环境的sql注入攻击检测系统
CN101425035A (zh) * 2007-11-01 2009-05-06 韩国电子通信研究院 用于检查软件的漏洞的设备和方法
US20100050263A1 (en) * 2008-08-25 2010-02-25 International Business Machines Corporation Browser based method of assessing web application vulnerability
CN101808093A (zh) * 2010-03-15 2010-08-18 北京安天电子设备有限公司 一种对web安全进行自动化检测的系统和方法
CN101883024A (zh) * 2010-06-23 2010-11-10 南京大学 一种跨站点伪造请求的动态检测方法
CN101902470A (zh) * 2010-07-14 2010-12-01 南京大学 一种基于表单特征的Web安全漏洞动态检测方法
CN102185930A (zh) * 2011-06-09 2011-09-14 北京理工大学 一种sql注入漏洞检测方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101425035A (zh) * 2007-11-01 2009-05-06 韩国电子通信研究院 用于检查软件的漏洞的设备和方法
CN101425937A (zh) * 2007-11-02 2009-05-06 北京启明星辰信息技术有限公司 一种适于高速局域网环境的sql注入攻击检测系统
US20100050263A1 (en) * 2008-08-25 2010-02-25 International Business Machines Corporation Browser based method of assessing web application vulnerability
CN101808093A (zh) * 2010-03-15 2010-08-18 北京安天电子设备有限公司 一种对web安全进行自动化检测的系统和方法
CN101883024A (zh) * 2010-06-23 2010-11-10 南京大学 一种跨站点伪造请求的动态检测方法
CN101902470A (zh) * 2010-07-14 2010-12-01 南京大学 一种基于表单特征的Web安全漏洞动态检测方法
CN102185930A (zh) * 2011-06-09 2011-09-14 北京理工大学 一种sql注入漏洞检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
郑理华: "WEB应用安全测试评估系统的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104144142A (zh) * 2013-05-07 2014-11-12 阿里巴巴集团控股有限公司 一种Web漏洞挖掘方法及系统
CN103365780B (zh) * 2013-07-22 2016-08-03 百度在线网络技术(北京)有限公司 异常测试覆盖率计算方法及装置
CN103365780A (zh) * 2013-07-22 2013-10-23 百度在线网络技术(北京)有限公司 异常测试覆盖率计算方法及装置
CN103593605A (zh) * 2013-10-24 2014-02-19 复旦大学 一种基于权限使用行为的安卓平台应用程序动态分析系统
CN103593605B (zh) * 2013-10-24 2016-11-09 复旦大学 一种基于权限使用行为的安卓平台应用程序动态分析系统
CN104598348A (zh) * 2015-02-28 2015-05-06 南京途牛科技有限公司 一种远程实时分析外部系统接口性能的方法及系统
CN104598348B (zh) * 2015-02-28 2018-07-13 南京途牛科技有限公司 一种远程实时分析外部系统接口性能的方法及系统
CN106302337A (zh) * 2015-05-22 2017-01-04 腾讯科技(深圳)有限公司 漏洞检测方法和装置
CN108028843A (zh) * 2015-09-24 2018-05-11 微软技术许可有限责任公司 被动式web应用防火墙
CN108028843B (zh) * 2015-09-24 2021-01-01 微软技术许可有限责任公司 保护计算机实现的功能的递送的方法、系统和计算设备
CN105306553A (zh) * 2015-09-30 2016-02-03 北京奇艺世纪科技有限公司 访问请求调度方法及装置
CN105306553B (zh) * 2015-09-30 2018-08-07 北京奇艺世纪科技有限公司 访问请求调度方法及装置
CN106649075A (zh) * 2015-10-30 2017-05-10 西门子公司 模糊测试方法和装置
CN106909499A (zh) * 2015-12-22 2017-06-30 阿里巴巴集团控股有限公司 测试方法和装置
CN106998255A (zh) * 2016-01-22 2017-08-01 腾讯科技(深圳)有限公司 一种反馈处理服务器、网络系统以及反馈处理方法
CN106998255B (zh) * 2016-01-22 2020-01-10 腾讯科技(深圳)有限公司 一种反馈处理服务器、网络系统以及反馈处理方法
CN107040504A (zh) * 2016-02-04 2017-08-11 北京京东尚科信息技术有限公司 测试方法和装置
CN107040504B (zh) * 2016-02-04 2020-05-01 北京京东尚科信息技术有限公司 测试方法和装置
CN107515820A (zh) * 2016-06-17 2017-12-26 阿里巴巴集团控股有限公司 服务器监测方法及装置、检测服务器
CN108667770B (zh) * 2017-03-29 2020-12-18 腾讯科技(深圳)有限公司 一种网站的漏洞测试方法、服务器及系统
CN108667770A (zh) * 2017-03-29 2018-10-16 腾讯科技(深圳)有限公司 一种网站的漏洞测试方法、服务器及系统
CN108509791B (zh) * 2018-02-09 2021-06-04 清华大学 检测处理器的方法、检测装置以及检测系统
CN108509791A (zh) * 2018-02-09 2018-09-07 清华大学 检测处理器的方法、检测装置以及检测系统
CN108551404B (zh) * 2018-04-20 2019-10-01 北京百度网讯科技有限公司 客户端信息分析的方法、装置、存储介质和终端设备
CN108551404A (zh) * 2018-04-20 2018-09-18 北京百度网讯科技有限公司 客户端信息分析的方法、装置、存储介质和终端设备
CN108920377A (zh) * 2018-07-16 2018-11-30 杭州安恒信息技术股份有限公司 一种日志回放测试方法、系统、装置及可读存储介质
CN109255240B (zh) * 2018-07-18 2020-11-06 北京明朝万达科技股份有限公司 一种漏洞处理方法和装置
CN109255240A (zh) * 2018-07-18 2019-01-22 北京明朝万达科技股份有限公司 一种漏洞处理方法和装置
CN109104337A (zh) * 2018-11-01 2018-12-28 郑州云海信息技术有限公司 一种测试网络访问控制工具的方法、装置及设备
CN109104337B (zh) * 2018-11-01 2022-02-18 郑州云海信息技术有限公司 一种测试网络访问控制工具的方法、装置及设备
CN109710270A (zh) * 2018-12-29 2019-05-03 北京神州绿盟信息安全科技股份有限公司 一种安全应用交付方法、装置以及存储介质
CN109818973A (zh) * 2019-03-13 2019-05-28 信联科技(南京)有限公司 一种基于串接方式的协议模糊测试方法
CN109818973B (zh) * 2019-03-13 2021-06-04 信联科技(南京)有限公司 一种基于串接方式的协议模糊测试方法
CN110135166A (zh) * 2019-05-08 2019-08-16 北京国舜科技股份有限公司 一种针对业务逻辑漏洞攻击的检测方法及系统
CN110135166B (zh) * 2019-05-08 2021-03-30 北京国舜科技股份有限公司 一种针对业务逻辑漏洞攻击的检测方法及系统
CN111953636B (zh) * 2019-05-15 2023-01-31 北京数安鑫云信息技术有限公司 内网威胁检测方法、装置、计算机可读存储介质和计算机设备
CN111953636A (zh) * 2019-05-15 2020-11-17 北京数安鑫云信息技术有限公司 内网威胁检测方法、装置、计算机可读存储介质和计算机设备
CN110348218A (zh) * 2019-06-06 2019-10-18 国家计算机网络与信息安全管理中心 一种基于车载终端系统的漏洞测试方法及装置
CN110472414A (zh) * 2019-07-23 2019-11-19 中国平安人寿保险股份有限公司 系统漏洞的检测方法、装置、终端设备及介质
CN110472414B (zh) * 2019-07-23 2024-09-13 中国平安人寿保险股份有限公司 系统漏洞的检测方法、装置、终端设备及介质
CN110611564A (zh) * 2019-07-30 2019-12-24 云南昆钢电子信息科技有限公司 一种基于时间戳的api重放攻击的防御系统及方法
CN110909361A (zh) * 2019-11-08 2020-03-24 北京长亭未来科技有限公司 一种漏洞检测方法,装置和计算机设备
CN110909380A (zh) * 2019-11-11 2020-03-24 西安交通大学 一种异常文件访问行为监控方法和装置
CN111651356A (zh) * 2020-06-03 2020-09-11 北京奇艺世纪科技有限公司 一种应用程序测试方法、装置及系统
CN112953896A (zh) * 2021-01-26 2021-06-11 杭州迪普科技股份有限公司 日志报文的回放方法及装置
CN113448864A (zh) * 2021-07-14 2021-09-28 中国银行股份有限公司 一种测试覆盖率确定方法及其相关设备
CN113448864B (zh) * 2021-07-14 2024-08-06 中国银行股份有限公司 一种测试覆盖率确定方法及其相关设备
CN113645198A (zh) * 2021-07-23 2021-11-12 谭静 一种计算机网络信息安全监护方法
CN113645198B (zh) * 2021-07-23 2023-12-26 天津航远信息技术有限公司 一种计算机网络信息安全监护方法

Also Published As

Publication number Publication date
CN103023710B (zh) 2016-06-08
HK1179430A1 (zh) 2013-09-27

Similar Documents

Publication Publication Date Title
CN103023710B (zh) 一种安全测试系统和方法
US9262519B1 (en) Log data analysis
US9519561B2 (en) Method and system for configuration-controlled instrumentation of application programs
CN107577949A (zh) 一种Web越权漏洞检测方法与系统
US20110208850A1 (en) Systems for and methods of web privacy protection
CN102065147A (zh) 一种基于企业应用系统获取用户登录信息的方法及装置
CN105933268A (zh) 一种基于全量访问日志分析的网站后门检测方法及装置
CN104468790B (zh) cookie数据的处理方法与客户端
CN107465651A (zh) 网络攻击检测方法及装置
CN107273748A (zh) 一种基于漏洞poc实现安卓系统漏洞检测的方法
CN103067387B (zh) 一种反钓鱼监测系统和方法
CN110489676A (zh) 基于区块链的网页取证方法、装置、存储介质及服务器
CN104301304A (zh) 基于大型isp互联口的漏洞检测系统及其方法
CN109831429A (zh) 一种Webshell检测方法及装置
CN108351941B (zh) 分析装置、分析方法、以及计算机可读存储介质
CN108667770A (zh) 一种网站的漏洞测试方法、服务器及系统
CN113469866A (zh) 数据处理方法、装置和服务器
CN104361007B (zh) 浏览器及其收藏夹的处理方法
Huang et al. Non-detrimental web application security scanning
CN101527646B (zh) 一种web网络管理系统和方法
Munea et al. Design and implementation of fuzzing framework based on IoT applications
US9723017B1 (en) Method, apparatus and computer program product for detecting risky communications
Lee et al. A proposal for automating investigations in live forensics
Latib et al. Analysing log files for web intrusion investigation using hadoop
XinXin et al. Research and design of network behavior management system based on B/S architecture

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1179430

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1179430

Country of ref document: HK