CN109412896B - 上传功能的测试方法、装置、计算机设备和存储介质 - Google Patents
上传功能的测试方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109412896B CN109412896B CN201811355496.9A CN201811355496A CN109412896B CN 109412896 B CN109412896 B CN 109412896B CN 201811355496 A CN201811355496 A CN 201811355496A CN 109412896 B CN109412896 B CN 109412896B
- Authority
- CN
- China
- Prior art keywords
- data
- uploading
- data packet
- server
- rule
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及功能测试的技术领域,提供了一种上传功能的测试方法、装置、计算机设备和存储介质,若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;通过所述目标数据上传接口向所述服务器上传所述第一数据包;接收所述服务器针对所述第一数据包返回的数据上传结果;根据所述数据上传结果,确定所述目标数据上传功能的测试结果;在需要测试上传接口的安全性时,能自动化完成上传功能的安全性测试。
Description
技术领域
本申请涉及功能测试的技术领域,特别涉及一种上传功能的测试方法、装置、计算机设备和存储介质。
背景技术
运行于服务器上的网站、应用客户端等平台,通过其目标数据上传接口上传的文件若存在不安全性,则上传的文件容易给服务器带来危害。因此,服务器应当对上传的文件进行安全性验证,以保障服务器安全。而当平台的上传功能出现问题时,则无法进行验证,所以,需要对平台的上传功能进行安全性测试,目前没有自动化对网站等平台的上传功能进行安全测试,需要人工手动测试,费时费力。
发明内容
本申请的主要目的为提供一种上传功能的测试方法、装置、计算机设备和存储介质,自动化完成上传功能的安全性测试。
为实现上述目的,本申请提供了一种上传功能的测试方法,包括以下步骤:
若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;
根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;
通过所述目标数据上传接口向所述服务器上传所述第一数据包;
接收所述服务器针对所述第一数据包返回的数据上传结果;
根据所述数据上传结果,确定所述目标数据上传功能的测试结果。
进一步地,所述根据所述数据上传规则从数据库中选取第一数据包的步骤之前,包括:
判断第一数据库中的第二数据包是否符合所述数据上传规则;
若否,则选择将所述第二数据包作为所述第一数据包存入至所述数据库中;若是,对所述第二数据包进行修改,以获得不符合所述数据上传规则的第二数据包作为所述第一数据包存入至所述数据库中。
进一步地,所述判断第一数据库中的第二数据包是否符合所述数据上传规则的步骤,包括:
获取所述第一数据库中的第二数据包的文件类型、文件大小、文件内容以及文件名称后缀中的任意一项文件信息,并根据所述文件信息判断所述第二数据包是否符合所述数据上传规则。
进一步地,所述根据所述数据上传规则从数据库中选取第一数据包的步骤,包括:
获取所述数据库中数据包的类型,并从所述数据库中选取不同类型的所述第一数据包。
进一步地,所述根据所述数据上传结果,确定所述目标数据上传功能的测试结果的步骤,包括:
若所述数据上传结果为通过所述第一数据包的上传,则确定所述目标数据上传接口为不安全;
若所述数据上传结果为所述第一数据包的上传不通过,则确定所述目标数据上传接口为安全。
进一步地,所述通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤之前,包括:
将符合所述数据上传规则的第三数据包通过所述目标数据上传接口向所述服务器上传;
获取所述服务器针对所述第三数据包返回的数据验证结果;若所述数据验证结果为通过所述第三数据包的上传,则进入通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤。
本申请还提供了一种上传功能的测试装置,包括:
第一获取单元,用于若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;
第一选取单元,用于根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;
第一上传单元,用于通过所述目标数据上传接口向所述服务器上传所述第一数据包;
第二获取单元,用于接收所述服务器针对所述第一数据包返回的数据上传结果;
测试单元,用于根据所述数据上传结果,确定所述目标数据上传功能的测试结果。
进一步地,还包括:
判断单元,用于判断第一数据库中的第二数据包是否符合所述数据上传规则;
存储单元,用于若否,则选择将所述第二数据包作为所述第一数据包存入至所述数据库中;若是,对所述第二数据包进行修改,以获得不符合所述数据上传规则的第二数据包作为所述第一数据包存入至所述数据库中。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
本申请还提供一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
本申请中提供的上传功能的测试方法、装置、计算机设备和存储介质,具有以下有益效果:
本申请中提供的上传功能的测试方法、装置、计算机设备和存储介质,若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;通过所述目标数据上传接口向所述服务器上传所述第一数据包;接收所述服务器针对所述第一数据包返回的数据上传结果;根据所述数据上传结果,确定所述目标数据上传功能的测试结果;在需要测试上传功能的安全性时,能自动化完成上传功能的安全性测试。
附图说明
图1是本申请一实施例中上传功能的测试方法步骤示意图;
图2是本申请另一实施例中上传功能的测试方法步骤示意图;
图3是本申请一实施例中上传功能的测试装置结构框图;
图4是本申请另一实施例中上传功能的测试装置结构框图;
图5为本申请一实施例的计算机设备的结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请一实施例中提供了一种上传功能的测试方法,应用于用户终端上,包括以下步骤:
步骤S1,若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;
步骤S2,根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;
步骤S3,通过所述目标数据上传接口向所述服务器上传所述第一数据包;
步骤S4,接收所述服务器针对所述第一数据包返回的数据上传结果;
步骤S5,根据所述数据上传结果,确定所述目标数据上传功能的测试结果。
在本实施例中,上述服务器上运行于运行有目标平台,该目标平台为网站、应用客户端等平台,用户通过用户终端(手机、电脑、测试终端等)浏览上述网站、应用客户端等。上述服务器都具有相应的上传功能及对应的上传数据的目标数据上传接口,用户可以通过上述目标数据上传接口上传程序文件、图片等数据包。上述用户终端上设置有执行本实施例中方法的程序,该程序用于自动化执行上述步骤S1、步骤S2、步骤S3、步骤S4以及步骤S5。由于上述目标平台的服务器接收的是用户上传的数据包,用户上传的数据包中可能具有一些不安全的内容;因此,为了上述目标平台的服务器的安全性,上述目标平台的服务器需要对用户上传的数据包进行验证,验证上述数据包是否符合数据上传规则,以避免一些非法用户上传非法数据包。若上述目标平台的服务器没有对用户上传的数据包进行验证或者无法验证用户上传的文件是否符合要求,则表明该服务器的上传功能存在缺陷,具有不安全性,则可能遭到非法分子的恶意网络攻击。
因此,在本实施例中,需要完成对上述服务器的上传功能进行安全性测试,以测试上述服务器上运行的平台的上传功能是否安全,以及是否容易被非法分子攻击等。
在本实施例中,如上述步骤S1所述的,在需要测试目标数据上传接口的安全性时,获取服务器的数据上传规则,该数据上传规则指的是通过该目标平台的目标数据上传接口上传的数据包所需要符合的条件,每个目标平台对通过目标数据上传接口上传的数据包均设置有相关的上传文件定义要求(即数据上传规则)。上述数据上传规则中主要限定了上传的数据包的文件类型、文件内容、文件大小、文件数量、文件后缀名等。不同的目标平台会有不同的数据上传规则,安全的目标平台只能允许符合数据上传规则的数据包上传。
如上述步骤S2所述的,上述第一数据包可以是预先设置好的一个数据包,其可以是从数据库中选择出的,且该第一数据包是不符合所述目标平台数据上传规则的数据包。不符合数据上传规则指的是,上述第一数据包的文件类型、文件大小、文件内容、文件名称后缀等任意一种不符合上述服务器的数据上传规则。例如,上述第一数据包包括预先设置的不符合数据上传规则的后门程序,后门程序是指绕过安全性控制而获取对程序或系统访问权的程序,黑客等非法分子可以通过上传后门程序来对目标平台进行攻击;因此,能够通过目标数据上传接口上传后门程序的目标平台必然是存在系统漏洞的。在一实施例中,可以通过上述目标数据上传接口上传后门程序至上述目标平台,以测试上述目标平台的上传功能是否安全。
如上述步骤S3所述的,将上述不符合上述服务器数据上传规则的第一数据包通过上述目标数据上传接口进行上传。若上述目标平台的上传功能为安全可靠的,则上述目标平台的服务器会对该上传的第一数据包进行验证,并识别出上述第一数据包为不符合数据上传规则的;进而上述目标平台针对上述第一数据包会作出一个无法上传的反馈结果(即数据上传结果),并将该无法上传的反馈结果作为上传结果返回(下发)至用户终端。若上述目标平台的上传功能不是安全可靠,存在漏洞的,则其可能不会验证上述第一数据包是否符合数据上传规则,或者无法验证上述第一数据包是否符合数据上传规则;此时,上述目标平台的服务器则会直接通过上述第一数据包的上传,同时针对上述第一数据包会作出一个上传成功的反馈结果,并将该上传成功的反馈结果作为数据上传结果返回至上述用户终端。
如上述步骤S4所述,用户终端可以接收到上述目标平台的服务器返回的上述数据上传结果,即获取到上述目标平台服务器返回的无法上传的反馈结果或者上传成功的反馈结果。
最后,如上述步骤S5所述的,根据获取到的数据上传结果,判断上述目标平台的目标数据上传接口是否安全,完成对上述目标平台上传功能的测试。具体地,当上述上传结果为无法上传时,则判定上述目标平台的上传功能的测试结果是安全可靠的;当上述上传结果为上传成功时,则判定上述目标平台的上传功能存在漏洞,是不安全的。
参照图2,在一实施例中,所述根据所述数据上传规则从数据库中选取第一数据包的步骤S2之前,包括:
步骤S201,判断第一数据库中的第二数据包是否符合所述数据上传规则;
步骤S202,若否,则选择将所述第二数据包作为所述第一数据包存入至所述数据库中;若是,对所述第二数据包进行修改,以获得不符合所述数据上传规则的第二数据包作为所述第一数据包存入至所述数据库中。
上述第一数据库中存储有多个第二数据包,为了完成对上传功能的测试,需要使用不符合目标平台数据上传规则的数据包,因此需要先获取到不符合目标平台数据上传规则的数据包,即第一数据包。如上述步骤S201所述的,判断第一数据库中包含的每个第二数据包是否符合目标平台的数据上传规则。具体地,获取所述第一数据库中的第二数据包的文件类型、文件大小、文件内容以及文件名称后缀中的任意一项文件信息,并根据所述文件信息判断所述第二数据包是否符合所述数据上传规则。然后,如上述步骤S202所述的,若第二数据包不符合所述目标平台的数据上传规则,则选择将所述第二数据包作为所述第一数据包;若第二数据包符合所述目标平台的数据上传规则,对所述第二数据包进行修改,以获得不符合所述目标平台数据上传规则的第二数据包作为所述第一数据包。具体地,上述修改的方式包括多种,其可以是修改数据包的文件后缀,也可以是修改ASCII编码以在上述数据包中加入字符等。例如,在一个实施例中,上述目标平台的目标数据上传接口要求上传的数据包必须是.jpg格式的图片文件,则可以将上述第一数据库中的一张.jpg后缀的图片修改为其它后缀名称,比如,将该图片的后缀修改为.php.jsp,上述修改后缀为.php.jsp而得到的文件即上述第一数据包,该第一数据包明显不符合上述数据上传规则。
在一实施例中,所述根据所述数据上传规则从数据库中选取第一数据包的步骤S2,包括:
步骤S20,获取所述数据库中数据包的类型,并从所述数据库中选取不同类型的所述第一数据包。上述不同类型指的是上述第一数据包的后缀名称、文件类型、文件大小等不同。
所述通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤S3,包括:
步骤S30,按照预设时间间隔将所述选取的第一数据包依次通过所述目标数据上传接口进行上传。
在本实施例中,在测试过程中,可能出现某一种类型的第一数据包无法上传,而另一种类型的第一数据包可以上传,从而造成误判。因此,本实施例中,使用大量不同类型的第一数据包依次进行上传,并获取服务器针对每一次上传返回的数据上传结果,当出现有一个第一数据包上传成功时,则可以认为上述目标平台的上传功能存在漏洞,具有不安全性。使用大量的第一数据包依次进行上传,便于增加测试上述上传功能安全性的准确率。
在一实施例中,上述通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤S2之前,包括:
步骤S2a,将符合所述数据上传规则的第三数据包通过所述目标数据上传接口向所述服务器上传;
步骤S2b,获取所述服务器针对所述第三数据包返回的数据验证结果;若所述数据验证结果为通过所述第三数据包的上传,则进入通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤S2。
本实施例中,在使用第一数据包对上述服务器上运行的目标平台的上传功能进行安全性测试之前,首先需要确定上述目标平台的上传功能是否处于可以正常上传数据包的工作状态;若上述目标平台的上传功能处于无法正常工作的状态,则此时必然不能将第一数据包上传至上述目标平台,此时若把上述目标平台的上传功能的安全测试结果定义为安全,则显然为误判。因此,本实施例中,在上述步骤S2之前,先如上述步骤2a所述的,上传一个符合目标平台上传条件的第三数据包至上述目标平台;若上述目标平台的上传功能处于不正常工作状态,则上述第三数据包也不能上传成功,此时则结束流程,需要对上述目标平台的上传功能进行修复。若上述目标平台的上传功能处于正常工作状态,则上述第三数据包可以上传成功,此时返回给用户终端的数据上传结果则为上传成功,如上述步骤S2b所述的,用户终端获取所述目标平台返回的数据上传结果为上传成功时,再执行上述步骤S2。
综上所述,为本申请实施例中提供的上传功能的测试方法,若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;通过所述目标数据上传接口向所述服务器上传所述第一数据包;接收所述服务器针对所述第一数据包返回的数据上传结果;根据所述数据上传结果,确定所述目标数据上传功能的测试结果;在需要测试上传接口的安全性时,能自动化完成上传接口的安全性测试。
参照图3,本申请一实施例中还提供了一种上传功能的测试装置,包括:
第一获取单元10,用于若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;
第一选取单元20,用于根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;
第一上传单元30,用于通过所述目标数据上传接口向所述服务器上传所述第一数据包;
第二获取单元40,用于接收所述服务器针对所述第一数据包返回的数据上传结果;
测试单元50,用于根据所述数据上传结果,确定所述目标数据上传功能的测试结果。
在本实施例中,上述服务器上运行于运行有目标平台,该目标平台为网站、应用客户端等平台,用户通过用户终端(手机、电脑、测试终端等)浏览上述网站、应用客户端等。上述服务器都具有相应的上传功能及对应的目标数据上传接口,用户可以通过上述目标数据上传接口上传程序文件、图片等数据包。由于上述目标平台的服务器接收的是用户上传的数据包,用户上传的数据包中可能具有一些不安全的内容;因此,为了上述目标平台的服务器的安全性,上述目标平台的服务器需要对用户上传的数据包进行验证,验证上述数据包是否符合数据上传规则,以避免一些非法用户上传非法数据包。若上述目标平台的服务器没有对用户上传的数据包进行验证或者无法验证用户上传的文件是否符合要求,则表明该服务器的上传功能存在缺陷,具有不安全性,则可能遭到非法分子的恶意网络攻击。
因此,在本实施例中,需要完成对上述服务器的上传功能进行安全性测试,以测试上述服务器上运行目标平台的上传功能是否安全,以及是否容易被非法分子攻击等。
在本实施例中,在需要测试目标数据上传接口的安全性时,上述第一获取单元10获取目标平台的数据上传规则,该数据上传规则指的是通过该目标平台的目标数据上传接口上传的数据包所需要符合的条件,每个目标平台对通过目标数据上传接口上传的数据包均设置有相关的上传文件定义要求(即数据上传规则)。上述数据上传规则中主要限定了上传的数据包的文件类型、文件内容、文件大小、文件数量、文件后缀名等。不同的目标平台会有不同的数据上传规则,安全的目标平台只能允许符合数据上传规则的数据包上传。
上述第一选取单元20选取的上述第一数据包可以是预先设置好的一个数据包,也可以是从数据库中选择出的,且该第一数据包是不符合所述目标平台数据上传规则的数据包。不符合数据上传规则指的是,上述第一数据包的文件类型、文件大小、文件内容、文件名称后缀等任意一种不符合上述目标平台的数据上传规则。例如,上述第一数据包包括预先设置的不符合数据上传规则的后门程序,后门程序是指绕过安全性控制而获取对程序或系统访问权的程序,黑客等非法分子可以通过上传后门程序来对目标平台进行攻击;因此,能够通过目标数据上传接口上传后门程序的目标平台必然是存在系统漏洞的。在一实施例中,可以通过上述目标数据上传接口上传后门程序至上述目标平台,以测试上述目标平台的上传接口(即上传功能)是否安全。
本实施例中,第一上传单元30将上述不符合上述数据上传规则的第一数据包通过上述目标数据上传接口进行上传。若上述上传功能为安全可靠的,则上述目标平台会对该上传的第一数据包进行验证,并识别出上述第一数据包为不符合数据上传规则的;进而上述目标平台针对上述第一数据包会作出一个无法上传的反馈结果(即数据上传结果),并将该无法上传的反馈结果作为上传结果返回(下发)至用户终端。若上述目标平台的上传功能不是安全可靠,存在漏洞的,则其可能不会验证上述第一数据包是否符合数据上传规则,或者无法验证上述第一数据包是否符合数据上传规则;此时,上述目标平台的服务器则会直接通过上述第一数据包的上传,同时针对上述第一数据包会作出一个上传成功的反馈结果,并将该上传成功的反馈结果作为数据上传结果返回至上述用户终端。
上述第二获取单元40可以接收到上述目标平台的服务器返回的上述数据上传结果,即获取到上述目标平台的服务器返回的无法上传的反馈结果或者上传成功的反馈结果。
最后,上述测试单元50根据获取到的上传结果,判断上述目标平台的目标数据上传接口是否安全,完成对上述上传功能的测试。具体地,当上述上传结果为无法上传时,则判定上述目标平台的上传功能的测试结果是安全可靠的;当上述上传结果为上传成功时,则判定上述目标平台的上传功能存在漏洞,是不安全的。
参照图4,在一实施例中,上述上传功能的测试装置还包括:
判断单元201,用于判断第一数据库中的第二数据包是否符合所述数据上传规则;
存储单元202,用于若否,则选择将所述第二数据包作为所述第一数据包存入至所述数据库中;若是,对所述第二数据包进行修改,以获得不符合所述数据上传规则的第二数据包作为所述第一数据包存入至所述数据库中。
上述第一数据库中存储有多个第二数据包,为了完成对上传功能的测试,需要使用不符合目标平台数据上传规则的数据包,因此需要先获取到不符合目标平台数据上传规则的数据包,即第一数据包。上述判断单元201判断第一数据库中包含的每个第二数据包是否符合目标平台的数据上传规则。具体地,获取所述第一数据库中的第二数据包的文件类型、文件大小、文件内容以及文件名称后缀中的任意一项文件信息,并根据所述文件信息判断所述第二数据包是否符合所述目标平台的数据上传规则。然后,若第二数据包不符合所述目标平台的数据上传规则,上述生成单元202则选择将所述第二数据包作为所述第一数据包;若第二数据包符合所述目标平台的数据上传规则,对所述第二数据包进行修改,以获得不符合所述目标平台数据上传规则的第二数据包作为所述第一数据包。具体地,上述修改的方式包括多种,其可以是修改数据包的文件后缀,也可以是修改ASCII编码以在上述数据包中加入字符等。例如,在一个实施例中,上述目标平台的目标数据上传接口要求上传的数据包必须是.jpg格式的图片文件,则上述生成单元202可以将上述第一数据库中的一张.jpg后缀的图片修改为其它后缀名称,比如,将该图片的后缀修改为.php.jsp,上述修改后缀为.php.jsp而得到的文件即上述第一数据包,该第一数据包明显不符合上述目标平台的数据上传规则。
在一实施例中,上述第一选取单元20包括:
选取子单元,用于获取所述数据库中数据包的类型,并从所述数据库中选取不同类型的所述第一数据包。上述不同类型指的是上述第一数据包的后缀名称、文件类型、文件大小等不同。
上述第一上传单元30则包括:
上传子单元,按照预设时间间隔将所述选取的第一数据包依次通过所述目标数据上传接口进行上传。
在本实施例中,在测试过程中,可能出现某一种类型的第一数据包无法上传,而另一种类型的第一数据包可以上传,从而造成误判。因此,本实施例中,使用大量不同类型的第一数据包依次进行上传,并获取服务器针对每一次上传返回的数据上传结果,当出现有一个第一数据包上传成功时,则可以认为上述目标平台的上传功能存在漏洞,具有不安全性。使用大量的第一数据包依次进行上传,便于增加测试上述上传功能安全性的准确率。
在一实施例中,上述上传功能的测试装置还包括:
第二上传单元,用于将符合所述数据上传规则的第三数据包通过所述目标数据上传接口向所述服务器上传;
第三获取单元,用于获取所述服务器针对所述第三数据包返回的数据验证结果;若所述数据验证结果为通过所述第三数据包的上传,则如上述第一上传单元30所述的,通过所述目标数据上传接口向所述服务器上传所述第一数据包。
本实施例中,在使用第一数据包对上述服务器上运行的目标平台的上传功能进行安全性测试之前,首先需要确定上述目标平台的上传功能是否处于可以正常上传数据包的工作状态;若上述目标平台的上传功能处于无法正常工作的状态,则此时必然不能将第一数据包上传至上述目标平台,此时若把上述目标平台的上传功能的安全测试结果定义为安全,则显然为误判。因此,本实施例中,第二上传单元上传一个符合目标平台上传条件的第三数据包至上述目标平台;若上述目标平台的上传功能处于不正常工作状态,则上述第三数据包也不能上传成功,此时则结束流程,需要对上述目标平台的上传功能进行修复。若上述目标平台的上传功能处于正常工作状态,则上述第三数据包可以上传成功,此时返回给用户终端的上传结果则为上传成功,第三获取单元获取所述目标平台返回的上传结果为上传成功时,在通过第一上传单元30将不符合所述数据上传规则的第一数据包通过所述目标平台的目标数据上传接口进行上传。
综上所述,为本申请实施例中提供的上传功能的测试装置,若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;通过所述目标数据上传接口向所述服务器上传所述第一数据包;接收所述服务器针对所述第一数据包返回的数据上传结果;根据所述数据上传结果,确定所述目标数据上传功能的测试结果;在需要测试上传接口的安全性时,能自动化完成上传接口的安全性测试。
参照图5,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据包等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种上传功能的测试方法。
上述处理器执行上述上传功能的测试方法的步骤:
若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;
根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;
通过所述目标数据上传接口向所述服务器上传所述第一数据包;
接收所述服务器针对所述第一数据包返回的数据上传结果;
根据所述数据上传结果,确定所述目标数据上传功能的测试结果。
在一实施例中,上述处理器根据所述数据上传规则从数据库中选取第一数据包的步骤之前,包括:
判断第一数据库中的第二数据包是否符合所述数据上传规则;
若否,则选择将所述第二数据包作为所述第一数据包存入至所述数据库中;若是,对所述第二数据包进行修改,以获得不符合所述数据上传规则的第二数据包作为所述第一数据包存入至所述数据库中。
在一实施例中,上述处理器判断第一数据库中的第二数据包是否符合所述数据上传规则的步骤,包括:
获取所述第一数据库中的第二数据包的文件类型、文件大小、文件内容以及文件名称后缀中的任意一项文件信息,并根据所述文件信息判断所述第二数据包是否符合所述数据上传规则。
在一实施例中,上述处理器根据所述数据上传规则从数据库中选取第一数据包的步骤,包括:
获取所述数据库中数据包的类型,并从所述数据库中选取不同类型的所述第一数据包。
在一实施例中,上述处理器根据所述数据上传结果,确定所述目标数据上传功能的测试结果的步骤,包括:
若所述数据上传结果为通过所述第一数据包的上传,则确定所述目标数据上传接口为不安全;
若所述数据上传结果为所述第一数据包的上传不通过,则确定所述目标数据上传接口为安全。
在一实施例中,上述处理器通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤之前,包括:
将符合所述数据上传规则的第三数据包通过所述目标数据上传接口向所述服务器上传;
获取所述服务器针对所述第三数据包返回的数据验证结果;若所述数据验证结果为通过所述第三数据包的上传,则进入通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种上传功能的测试方法,具体为:
若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;
根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;
通过所述目标数据上传接口向所述服务器上传所述第一数据包;
接收所述服务器针对所述第一数据包返回的数据上传结果;
根据所述数据上传结果,确定所述目标数据上传功能的测试结果。
在一实施例中,上述处理器根据所述数据上传规则从数据库中选取第一数据包的步骤之前,包括:
判断第一数据库中的第二数据包是否符合所述数据上传规则;
若否,则选择将所述第二数据包作为所述第一数据包存入至所述数据库中;若是,对所述第二数据包进行修改,以获得不符合所述数据上传规则的第二数据包作为所述第一数据包存入至所述数据库中。
在一实施例中,上述处理器判断第一数据库中的第二数据包是否符合所述数据上传规则的步骤,包括:
获取所述第一数据库中的第二数据包的文件类型、文件大小、文件内容以及文件名称后缀中的任意一项文件信息,并根据所述文件信息判断所述第二数据包是否符合所述数据上传规则。
在一实施例中,上述处理器根据所述数据上传规则从数据库中选取第一数据包的步骤,包括:
获取所述数据库中数据包的类型,并从所述数据库中选取不同类型的所述第一数据包。
在一实施例中,上述处理器根据所述数据上传结果,确定所述目标数据上传功能的测试结果的步骤,包括:
若所述数据上传结果为通过所述第一数据包的上传,则确定所述目标数据上传接口为不安全;
若所述数据上传结果为所述第一数据包的上传不通过,则确定所述目标数据上传接口为安全。
在一实施例中,上述处理器通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤之前,包括:
将符合所述数据上传规则的第三数据包通过所述目标数据上传接口向所述服务器上传;
获取所述服务器针对所述第三数据包返回的数据验证结果;若所述数据验证结果为通过所述第三数据包的上传,则进入通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤。
综上所述,为本申请实施例中提供的上传功能的测试方法、装置、计算机设备和存储介质,若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;通过所述目标数据上传接口向所述服务器上传所述第一数据包;接收所述服务器针对所述第一数据包返回的数据上传结果;根据所述数据上传结果,确定所述目标数据上传功能的测试结果;在需要测试上传功能的安全性时,能自动化完成上传功能的安全性测试。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (7)
1.一种上传功能的测试方法,其特征在于,包括以下步骤:
若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;
根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;
通过所述目标数据上传接口向所述服务器上传所述第一数据包;
接收所述服务器针对所述第一数据包返回的数据上传结果;
根据所述数据上传结果,确定所述目标数据上传功能的测试结果;
所述通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤,包括:
按照预设时间间隔将所述选取的第一数据包依次通过所述目标数据上传接口进行上传,所述第一数据包为大量不同类型的第一数据包;
所述根据所述数据上传规则从数据库中选取第一数据包的步骤之前,包括:
判断第一数据库中的第二数据包是否符合所述数据上传规则;
若否,则选择将所述第二数据包作为所述第一数据包存入至所述数据库中;若是,对所述第二数据包进行修改,以获得不符合所述数据上传规则的第二数据包作为所述第一数据包存入至所述数据库中;
所述根据所述数据上传规则从数据库中选取第一数据包的步骤,包括:
获取所述数据库中数据包的类型,并从所述数据库中选取不同类型的所述第一数据包。
2.根据权利要求1所述的上传功能的测试方法,其特征在于,所述判断第一数据库中的第二数据包是否符合所述数据上传规则的步骤,包括:
获取所述第一数据库中的第二数据包的文件类型、文件大小、文件内容以及文件名称后缀中的任意一项文件信息,并根据所述文件信息判断所述第二数据包是否符合所述数据上传规则。
3.根据权利要求1所述的上传功能的测试方法,其特征在于,所述根据所述数据上传结果,确定所述目标数据上传功能的测试结果的步骤,包括:
若所述数据上传结果为通过所述第一数据包的上传,则确定所述目标数据上传接口为不安全;
若所述数据上传结果为所述第一数据包的上传不通过,则确定所述目标数据上传接口为安全。
4.根据权利要求1所述的上传功能的测试方法,其特征在于,所述通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤之前,包括:
将符合所述数据上传规则的第三数据包通过所述目标数据上传接口向所述服务器上传;
获取所述服务器针对所述第三数据包返回的数据验证结果;若所述数据验证结果为通过所述第三数据包的上传,则进入通过所述目标数据上传接口向所述服务器上传所述第一数据包的步骤。
5.一种上传功能的测试装置,其特征在于,包括:
第一获取单元,用于若检测到用于测试目标数据上传接口的指令,则获取服务器的数据上传规则;其中,所述目标数据上传接口用于上传数据至所述服务器;
第一选取单元,用于根据所述数据上传规则从数据库中选取第一数据包,所述第一数据包为不符合所述数据上传规则的数据包;
第一上传单元,用于通过所述目标数据上传接口向所述服务器上传所述第一数据包;
第二获取单元,用于接收所述服务器针对所述第一数据包返回的数据上传结果;
测试单元,用于根据所述数据上传结果,确定所述目标数据上传功能的测试结果;
第一上传单元包括:
上传子单元,按照预设时间间隔将所述选取的第一数据包依次通过所述目标数据上传接口进行上传,所述第一数据包为大量不同类型的第一数据包;
还包括:
判断单元,用于判断第一数据库中的第二数据包是否符合所述数据上传规则;
存储单元,用于若否,则选择将所述第二数据包作为所述第一数据包存入至所述数据库中;若是,对所述第二数据包进行修改,以获得不符合所述数据上传规则的第二数据包作为所述第一数据包存入至所述数据库中;
第一选取单元包括:
选取子单元,用于获取所述数据库中数据包的类型,并从所述数据库中选取不同类型的所述第一数据包。
6.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述方法的步骤。
7.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811355496.9A CN109412896B (zh) | 2018-11-14 | 2018-11-14 | 上传功能的测试方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811355496.9A CN109412896B (zh) | 2018-11-14 | 2018-11-14 | 上传功能的测试方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109412896A CN109412896A (zh) | 2019-03-01 |
CN109412896B true CN109412896B (zh) | 2022-04-15 |
Family
ID=65473498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811355496.9A Active CN109412896B (zh) | 2018-11-14 | 2018-11-14 | 上传功能的测试方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109412896B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110083524A (zh) * | 2019-03-15 | 2019-08-02 | 深圳壹账通智能科技有限公司 | 上传数据测试方法、装置、计算机设备及存储介质 |
CN113132341B (zh) * | 2020-01-16 | 2023-03-21 | 深信服科技股份有限公司 | 网络攻击行为的检测方法、装置、电子设备及存储介质 |
CN112446030B (zh) * | 2020-10-23 | 2023-01-06 | 苏州浪潮智能科技有限公司 | 一种网页端的文件上传漏洞检测方法和装置 |
CN113821800A (zh) * | 2021-09-29 | 2021-12-21 | 重庆紫光华山智安科技有限公司 | 数据上传接口测试方法、系统、电子设备及可读存储介质 |
CN115134164B (zh) * | 2022-07-18 | 2024-02-23 | 深信服科技股份有限公司 | 一种上传行为检测方法、系统、设备及计算机存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104063309A (zh) * | 2013-03-22 | 2014-09-24 | 南京理工大学常熟研究院有限公司 | 基于模拟攻击的Web应用程序漏洞检测方法 |
CN105227387A (zh) * | 2014-06-16 | 2016-01-06 | 腾讯科技(深圳)有限公司 | 网页漏洞的检测方法、装置及系统 |
CN107800718A (zh) * | 2017-11-29 | 2018-03-13 | 中科信息安全共性技术国家工程研究中心有限公司 | 一种文件上传漏洞的预警方法装置 |
CN108696488A (zh) * | 2017-04-11 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 一种上传接口识别方法、识别服务器及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8931102B2 (en) * | 2011-06-01 | 2015-01-06 | International Business Machines Corporation | Testing web applications for file upload vulnerabilities |
US20180165180A1 (en) * | 2016-12-14 | 2018-06-14 | Bank Of America Corporation | Batch File Creation Service |
-
2018
- 2018-11-14 CN CN201811355496.9A patent/CN109412896B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104063309A (zh) * | 2013-03-22 | 2014-09-24 | 南京理工大学常熟研究院有限公司 | 基于模拟攻击的Web应用程序漏洞检测方法 |
CN105227387A (zh) * | 2014-06-16 | 2016-01-06 | 腾讯科技(深圳)有限公司 | 网页漏洞的检测方法、装置及系统 |
CN108696488A (zh) * | 2017-04-11 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 一种上传接口识别方法、识别服务器及系统 |
CN107800718A (zh) * | 2017-11-29 | 2018-03-13 | 中科信息安全共性技术国家工程研究中心有限公司 | 一种文件上传漏洞的预警方法装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109412896A (zh) | 2019-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109412896B (zh) | 上传功能的测试方法、装置、计算机设备和存储介质 | |
CN112929326B (zh) | 恶意域名访问的检测方法、装置及计算机可读存储介质 | |
CN109788032B (zh) | 镜像文件的获取方法、装置、计算机设备和存储介质 | |
CN107395593B (zh) | 一种漏洞自动化防护方法、防火墙及存储介质 | |
CN107733847B (zh) | 平台登录网站方法、装置、计算机设备以及可读存储介质 | |
CN108768960B (zh) | 病毒检测方法、装置、存储介质及计算机设备 | |
CN111191281A (zh) | 数据脱敏处理方法、装置、计算机设备及存储介质 | |
CN108235763B (zh) | 检测系统、方法及相关装置 | |
CN106714206B (zh) | 检测无线网络接入点连接网络的方法和装置 | |
CN110881051B (zh) | 安全风险事件处理方法、装置、设备及存储介质 | |
CN110727935B (zh) | 单点登录方法、系统、计算机设备和存储介质 | |
CN111984520A (zh) | 埋点测试方法、计算机设备及计算机可读存储介质 | |
CN112860778A (zh) | 桌面应用程序的数据库管理方法、装置、设备和介质 | |
CN110677391B (zh) | 基于URL Scheme技术的第三方链接校验方法及相关设备 | |
CN110399723B (zh) | 漏洞检测方法和装置、存储介质及电子装置 | |
CN112559352A (zh) | 接口测试的方法、装置、设备及存储介质 | |
CN112491813A (zh) | 指令的传输控制方法、装置及计算机可读存储介质 | |
CN111046377A (zh) | 加载动态链接库的方法、装置、电子设备及存储介质 | |
CN102984229B (zh) | 用于配置信任机的方法和系统 | |
CN110769016A (zh) | 文件上传方法及计算机存储介质 | |
CN111835677A (zh) | 一种用户信息的获取方法、装置及计算机存储介质 | |
CN109756390B (zh) | 自动测试网络加速器连通性方法和装置 | |
CN111199025B (zh) | 信息验证方法、装置、计算机设备和存储介质 | |
CN110933034A (zh) | 一种基于数字指纹的登录方法及装置 | |
CN114143197A (zh) | 物联网设备ota升级方法、装置、设备及可读存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |