CN117421253B - 接口安全测试方法、装置、设备及存储介质 - Google Patents
接口安全测试方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117421253B CN117421253B CN202311747142.XA CN202311747142A CN117421253B CN 117421253 B CN117421253 B CN 117421253B CN 202311747142 A CN202311747142 A CN 202311747142A CN 117421253 B CN117421253 B CN 117421253B
- Authority
- CN
- China
- Prior art keywords
- interface
- tested
- test
- security
- testing
- 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
- 238000010998 test method Methods 0.000 title claims abstract description 22
- 238000012360 testing method Methods 0.000 claims abstract description 311
- 238000005457 optimization Methods 0.000 claims abstract description 50
- 238000011156 evaluation Methods 0.000 claims abstract description 33
- 238000000034 method Methods 0.000 claims abstract description 26
- 238000012545 processing Methods 0.000 claims description 25
- 230000008439 repair process Effects 0.000 claims description 17
- 238000012423 maintenance Methods 0.000 claims description 8
- 238000012216 screening Methods 0.000 claims description 7
- 238000011076 safety test Methods 0.000 abstract description 17
- 230000006870 function Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012795 verification Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 229920006395 saturated elastomer Polymers 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000009781 safety test method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3696—Methods or tools to render software testable
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/366—Software debugging using diagnostics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明涉及接口测试技术领域,公开了一种接口安全测试方法、装置、设备及存储介质,该方法包括:根据待测接口在测试工具集中确定对应待测接口的目标测试工具;基于预设顺序对各待测接口采用目标测试工具进行测试,获得反馈数据;根据反馈数据对待测接口进行安全性评估;基于评估结果生成各待测接口的安全优化策略。由于本发明是在测试工具集中确定待测接口的目标测试工具,基于预设顺序进行接口测试,能够覆盖更多的安全测试类型,实现对每个接口进行不同类型的充分的安全测试,根据测试获得的反馈数据进行安全性评估并生成安全优化策略,有利于更好地了解接口的安全状态,获得更全面的接口安全测试结果。
Description
技术领域
本发明涉及接口测试技术领域,尤其涉及一种接口安全测试方法、装置、设备及存储介质。
背景技术
在现代应用程序中,接口扮演着连接不同组件和服务的桥梁,接口安全测试是一种针对软件或系统接口的安全性进行评估和验证的过程,因此接口安全测试对于确保系统整体的安全性至关重要。
在安全测试平台中进行接口的安全测试时,通常是采用单个安全测试工具或软件对接口进行测试,而由于每个安全测试工具或软件的特点和局限性不同,可能会导致某些安全测试类型的覆盖不够充分。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是相关技术。
发明内容
本发明的主要目的在于提供了一种接口安全测试方法、装置、设备及存储介质,旨在解决现有的对接口进行安全测试的方式只能采用固定的单个安全测试工具或软件,使得获得的接口的安全性测试结果不够全面的技术问题。
为实现上述目的,本发明提供了一种接口安全测试方法,所述方法包括以下步骤:
根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具;
基于预设顺序对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据;
根据所述反馈数据对所述待测接口进行安全性评估;
基于评估结果生成各所述待测接口的安全优化策略。
可选地,所述根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具之前,包括:
获取所述待测接口的运行环境;
根据所述运行环境结合用户指令,确定应用于所述运行环境的测试工具,并生成所述测试工具集;
相应地,所述根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具,包括:
根据所述待测接口,在所述测试工具集包含的各测试工具中确定对应所述待测接口的目标测试工具。
可选地,所述基于预设顺序对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据,包括:
获取所述运行环境中的接口清单,并根据所述接口清单生成所述待测接口的测试顺位;
基于所述测试顺位对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据。
可选地,基于所述测试顺位对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据,包括:
在处于所述待测接口的测试顺位时,采用所述目标测试工具对所述待测接口进行测试,获得基于各所述目标测试工具的测试结果;
对各所述测试结果进行整合,获得反馈数据。
可选地,所述根据所述反馈数据对所述待测接口进行安全性评估,包括:
提取所述反馈数据中各所述目标测试工具的测试结果,并根据所述测试结果判断是否存在预设类型的安全漏洞,其中,所述预设类型包括数据处理、接口权限、接口配置;
若是,则根据所述安全漏洞的数量和类型对所述待测接口进行安全性评估,获得所述待测接口的风险等级。
可选地,所述基于评估结果生成各所述待测接口的安全优化策略,包括:
根据所述安全漏洞的数量和类型,生成对应各所述安全漏洞的一般修复措施;
根据所述待测接口的风险等级,对所述一般修复措施进行筛选,获得所述待测接口的安全优化策略。
可选地,所述根据所述待测接口的风险等级,对所述一般修复措施进行筛选,获得所述待测接口的安全优化策略之后,包括:
将所述安全优化策略推送至用户端,以使所述用户端基于所述安全优化策略对所述待测接口进行维护处理;
在所述用户端完成所述待测接口的维护处理时,获取所述用户端对所述待测接口的操作数据;
结合所述安全漏洞、所述安全优化策略以及所述操作数据,生成所述待测接口的安全测试日志。
此外,为实现上述目的,本发明还提出一种接口安全测试装置,所述装置包括:
工具确定模块,用于根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具;
接口测试模块,用于基于预设顺序对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据;
安全评估模块,用于根据所述反馈数据对所述待测接口进行安全性评估;
策略反馈模块,用于基于评估结果生成各所述待测接口的安全优化策略。
此外,为实现上述目的,本发明还提出一种接口安全测试设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的接口安全测试程序,所述接口安全测试程序配置为实现如上文所述的接口安全测试方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储接口安全测试程序,所述接口安全测试程序被处理器执行时实现如上文所述的接口安全测试方法的步骤。
本发明通过根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具;基于预设顺序对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据;根据所述反馈数据对所述待测接口进行安全性评估;基于评估结果生成各所述待测接口的安全优化策略。由于本发明能够在测试工具集中确定待测接口的目标测试工具,基于预设顺序进行接口测试,能够覆盖更多的安全测试类型,实现对每个接口进行不同类型的充分的安全测试,并根据测试获得的反馈数据进行安全性评估并生成安全优化策略,有利于更好地了解接口的安全状态,获得更全面的接口安全测试结果。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的接口安全测试设备的结构示意图;
图2为本发明接口安全测试方法第一实施例的流程示意图;
图3为本发明接口安全测试方法第二实施例的流程示意图;
图4为本发明接口安全测试方法第三实施例的流程示意图;
图5为本发明接口安全测试方法的全流程架构图;
图6为本发明接口安全测试装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的接口安全测试设备的结构示意图。
如图1所示,该接口安全测试设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(Wireless-Fidelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM),也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对接口安全测试设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及接口安全测试程序。
在图1所示的接口安全测试设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明接口安全测试设备中的处理器1001、存储器1005可以设置在接口安全测试设备中,所述接口安全测试设备通过处理器1001调用存储器1005中存储的接口安全测试程序,并执行本发明实施例提供的接口安全测试方法。
本发明实施例提供了一种接口安全测试方法,参照图2,图2为本发明接口安全测试方法第一实施例的流程示意图。
本实施例中,所述接口安全测试方法包括以下步骤:
步骤S10:根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具。
应该理解的是,接口安全测试的目的可以是发现和解决可能存在的漏洞、弱点或安全风险,以保护系统免受潜在的攻击和非法访问。通过接口安全测试,可以评估接口的身份验证、授权、输入验证、数据保护、错误处理等方面的安全性。
需要说明的是,本实施例方法可以是应用在需要对软件或是系统中接口的安全性进行评估和验证的场景中,本实施例方法的执行主体可以是具有数据处理、网络通信以及程序运行功能的计算服务设备,例如个人电脑、接口测试装置等,还可以是具有相同或相似功能的能实现接口安全测试方法的其他电子设备,本实施例对此不加以限制。此处选用上述接口安全测试设备(以下简称测试设备)为例对本发明接口安全测试方法的各项实施例进行说明。
还需说明的是,饱和式测试方式可是在安全测试中使用的策略,可以通过多个安全测试工具和软件对待测对象进行全面的测试和评估。该饱和式测试方式通过同时使用多个安全测试工具和软件,以覆盖不同的测试技术和方法,从而增加对系统安全性的检测能力。在接口安全测试中结合饱和式测试方式,可以增加接口安全测试的全面性和深度。因此,步骤S10之前,可以包括:
步骤S001:获取所述待测接口的运行环境。
应该理解的是,该待测接口可以为当前业务人员需要进行测试的接口,该待测接口可以为在接口开发过程中设计的接口。该待测接口的运行环境可以为用于模拟待测接口在开发完成后需要运行的真实场景的测试环境。
步骤S002:根据所述运行环境结合用户指令,确定应用于所述运行环境的测试工具,并生成所述测试工具集。
应该理解的是,用户指令中可以包含当前业务人员的测试需求,通过运行环境结合用户指令,可以搭建符合测试需求的包含测试环境和测试工具的安全测试平台。通过该安全测试平台,可以维护有包含各种类安全测试工具或软件的测试工具集。
可以理解的是,该测试工具集中的各个测试工具可以涵盖不同的安全测试类型,例如漏洞扫描工具、代码审计工具、安全配置检查工具以及安全协议分析工具等。上述不同的测试工具可以提供有开发的可供调用的安全协议(Secure Shell,SSH)或开放的应用程序接口(Application Programming Interface,API)即OpenAPI执行方式。
因此,步骤S10,包括:
步骤S100:根据所述待测接口,在所述测试工具集包含的各测试工具中确定对应所述待测接口的目标测试工具。
应该理解的是,在存在测试需求并确定了待测接口时,可以在预先搭建的安全测试平台中确定符合该测试需求的目标测试工具,例如若待测接口为某电子商务网站的登录接口时,当需要对该登录接口进行安全测试时,可以确定目标测试工具为漏洞扫描工具、代码审计工具和安全配置检查工具。
步骤S20:基于预设顺序对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据。
需要说明的是,由于对于某一系统或软件的测试需求中,待测接口的数量可以为多个,因此可以先确定各个待测接口的测试顺序,接着按照该测试顺序对各个待测接口逐个进行测试,能够确保全部的待测接口都可以进行测试,避免接口遗漏。
应该理解的是,该预设顺序可以是基于待测接口在整个系统或软件中的逻辑顺序自动生成的,还可以是基于业务人员个性化设置的,本实施例对此不加以限制。
在具体实现中,测试设备按照确定的测试顺序对各个待测接口分别采用上述确定的目标测试工具进行测试,可以获得各个待测接口的测试反馈数据。
步骤S30:根据所述反馈数据对所述待测接口进行安全性评估。
应该理解的是,在获取到反馈数据后,由于该反馈数据中包含各个目标测试工具的测试结果,因此可以对每个待测接口的多个测试结果进行综合性分析,识别不同测试工具下待测接口测试结果中的共性和差异性,并确定待测接口的安全状态,评估潜在的风险程度。
步骤S40:基于评估结果生成各所述待测接口的安全优化策略。
应该理解的是,在获取到评估结果后,可对评估结果进行分析,提取常见的安全漏洞问题,从预先设置的标准问题处理库或是连接网络信息库,获得用于解决该常见的安全漏洞问题的处理措施。并将该安全漏洞问题和处理措施进行对应,生成用于修复参考的安全优化策略。
进一步地,在生成安全优化策略后,可以与上述评估结果一同推送至用户端以便于业务人员及时获知待测接口的安全性测试的评估结果,以及可参考的安全优化策略,以便对待测接口中测试发现的安全漏洞进行修补或是进行接口功能的优化改进。
本实施例通过根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具;基于预设顺序对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据;根据所述反馈数据对所述待测接口进行安全性评估;基于评估结果生成各所述待测接口的安全优化策略。由于实施例能够在测试工具集中确定待测接口的目标测试工具,基于预设顺序进行接口测试,能够覆盖更多的安全测试类型,实现对每个接口进行不同类型的充分的安全测试,并根据测试获得的反馈数据进行安全性评估并生成安全优化策略,有利于更好地了解接口的安全状态,获得更全面的接口安全测试结果。
参考图3,图3为本发明接口安全测试方法第二实施例的流程示意图。
基于上述实施例,考虑到待测接口的数量可以不唯一,且对应的目标测试工具也可以不唯一,步骤S20,包括:
步骤S201:获取所述运行环境中的接口清单,并根据所述接口清单生成各所述待测接口的测试顺位。
应该理解的是,该接口清单可以包含系统或软件中全部的待测接口的信息,包括接口功能、接口相关业务以及接口在业务链上的位置。通过该接口清单可以获取待测接口的数量和位置信息,进而可以根据该接口清单自动生成待测接口的测试顺位。
需要说明的是,该测试顺位可以是基于是接口命名方式生成的,例如存在接口A名为get-user-info和接口B名为create-order,则可以根据接口名首字母顺序生成该两个接口的测试顺位为A先于B。该测试顺位还可以是基于接口创建先后时间生成的,或是根据接口处于业务链上的位置依序生成,本实施例对生成测试顺位的标准不加以限制。
步骤S202:基于所述测试顺位对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据。
具体地,可以在处于所述待测接口的测试顺位时,采用所述目标测试工具对所述待测接口进行测试,获得基于各所述目标测试工具的测试结果;对各所述测试结果进行整合,获得反馈数据。
应该理解的是,对每个待测接口可以基于不同的目标测试工具实施相应的安全测试,例如扫描漏洞、检查代码安全性、验证安全配置等。由于不同目标测试工具在具体测试方式和算法上存在差异,可以发现不同角度的安全漏洞和问题,进而提高接口安全测试的深度。
还需说明的是,由于获得了基于各个目标测试工具的测试结果,进而对该各个测试结果进行整合,可以更全面地了解接口的安全状态,以便于后续业务人员制订针对性的安全措施和修复计划。
本实施例通过获取所述运行环境中的接口清单,并根据所述接口清单生成各所述待测接口的测试顺位;在处于所述待测接口的测试顺位时,采用所述目标测试工具对所述待测接口进行测试,获得基于各所述目标测试工具的测试结果;对各所述测试结果进行整合,获得反馈数据。由于本实施例中根据接口清单生成各个待测接口的测试顺位并对各待测接口逐一采用测试工具进行多角度全面测试,有利于提高接口安全测试的深度,获得综合性的测试反馈结果。
参考图4,图4为本发明接口安全测试方法第三实施例的流程示意图。
基于上述实施例,为了基于各个目标测试工具的测试结果对待测接口进行可靠的安全性评估,步骤S30,包括:
步骤S301:提取所述反馈数据中各所述目标测试工具的测试结果,并根据所述测试结果判断是否存在预设类型的安全漏洞。
需要说明的是,由于不同的目标测试工具在具体的测试方式和算法上存在差异,获得的测试结果也存在差异,因此可以从测试结果中提取各个目标测试工具检测到的系统或软件存在的安全漏洞,并确定不同安全漏洞的类型。
应该理解的是,该预设类型的安全漏洞可以是基于漏洞危险级别划分的,例如可以区分为高危漏洞、中危漏洞以及低危漏洞的类型;还可以是基于漏洞的相关功能确定的,例如数据处理、接口权限、接口配置的类型。
还需说明的是,该预设类型还可以是特指某一类漏洞危险级别,例如若漏洞危险级别为高危漏洞时,若预先定义涉及到相关功能为数据处理、接口权限、接口配置的类型的安全漏洞为高危漏洞,则具体地可以在测试结果中判断是否存在上述高危漏洞类型的安全漏洞。
步骤S302:若是,则根据所述安全漏洞的数量和类型对所述待测接口进行安全性评估,获得所述待测接口的风险等级。
应该理解的是,在确定了测试结果中存在上述高危漏洞类型的安全漏洞时,可以根据高危漏洞类型中不同的相关功能类型的安全漏洞的数量进行安全性评估。
需要说明的是,可以预先设置有数量和相关功能类型与待测接口的风险等级的判定关系。例如:在存在有相关功能类型为数据处理的安全漏洞时,可以直接判定为待测接口为高风险等级;在相关功能类型为接口权限下,漏洞数量>6则可判定为高风险等级、漏洞数量>1可判定为一般风险等级、漏洞数量=1可判定为低风险等级;在相关功能类型为接口配置下,漏洞数量>5则可判定为高风险等级、存在该类型漏洞时则可直接判定为待测接口为一般风险等级。
还需说明的是,在上述判定关系的基础上,还可以设置当安全漏洞的总数量大于预设告警值时,例如当各相关功能类型的安全漏洞数量总和大于10时,直接判定待测接口的风险等级为高风险等级。并还可以设置在上述判定关系的基础上,在不同相关功能类型下判定得到两个低风险等级时,直接确定待测接口为高风险等级;基于不同相关功能类型下判定得到一个高风险等级和一个低风险等级时,直接确定待测接口为高风险等级。本实施例对基于安全漏洞的数量和类型进行待测接口的风险等级的判定标准不加以限制。
进一步地,考虑到各个安全漏洞都可以有相应的修复措施,因此,步骤S40,包括:
步骤S401:根据所述安全漏洞的数量和类型,生成对应各所述安全漏洞的一般修复措施。
应该理解的是,该一般修复措施可以为从网络上获取的,也可以是结合历史接口测试反馈数据提取得到的对不同安全漏洞进行修复或是优化的措施。该一般修复措施可以作为业务人员对安全漏洞的具体处理步骤的参考步骤。
步骤S402:根据所述待测接口的风险等级,对所述一般修复措施进行筛选,获得所述待测接口的安全优化策略。
应该理解的是,由于不同目标测试工具检测到的安全漏洞可能存在重叠,基于安全漏洞生成的一般修复措施也可能存在冗余的重复项,因此可以对上述生成的一般修复措施进行重复项筛选,获得待测接口的安全优化策略,能够降低后续数据传输的资源消耗。
进一步地,考虑到业务人员在接收到安全优化策略后可以采取相应的措施进行安全漏洞修复,步骤S402之后,还包括:
步骤S403:将所述安全优化策略推送至用户端,以使所述用户端基于所述安全优化策略对所述待测接口进行维护处理。
应该理解的是,业务人员在用户端接收到该安全优化策略后,可以参考该安全优化策略对待测接口制定相应的修复计划,进行相应安全漏洞的修复,实现对待测接口的维护处理。
步骤S404:在所述用户端完成所述待测接口的维护处理时,获取所述用户端对所述待测接口的操作数据。
应该理解的是,在业务人员采取措施完成对待测接口的维护处理后,为了确保上述安全测试检测到的安全漏洞已得到解决并为后续出现相同或相似的安全漏洞时提供更详细的参考修复措施,可以完整地记录业务人员对该待测接口的操作数据。
步骤S405:结合所述安全漏洞、所述安全优化策略以及所述操作数据,生成所述待测接口的安全测试日志。
需要说明的是,为了帮助业务人员更好地理解和分析该待测接口所属系统或软件的数据处理行为,进一步优化提升软件质量和测试效率,可以生成包含有目标测试工具检测到的安全漏洞、基于安全漏洞生成的安全优化策略以及上述业务人员对该待测接口进行漏洞修复的具体的操作数据的安全测试日志。
进一步地,可以将该安全测试日志基于时间间隔推送至用户端以便业务人员及时获取接口安全测试的测试结果和修复处理结果。
此外,可以参考图5对本发明接口安全测试方法的进行说明,图5为本发明接口安全测试方法的全流程架构图。
以测试场景为电子商务网站的接口安全测试为例。在图5中,首先确定待测接口的安全测试的运行环境为电子商务网站,以及待测接口为该电子商务网站的登录接口1、2、3;接着针对该登录接口在测试工具集中具体确定例如漏洞扫描工具A、代码审计工具B和安全配置检查工具C为目标测试工具;再执行各个目标测试工具,对各个登录接口分别采用目标测试工具进行测试,获得反馈数据(例如:工具A扫描发现了一个跨站脚本(XSS)漏洞、工具B通过代码分析发现了一个身份验证逻辑漏洞、工具C检查发现了一个安全配置错误);进而根据反馈数据进行安全性评估,对测试结果进行结果分析和整合,确定接口的安全状态;最后可以基于检测到的安全漏洞,给出相应的修复措施和优化计划(例如,工具A扫描发现的安全漏洞,建议修复方式可以为对用户输入进行合理的过滤和转义、工具B代码分析发现的安全漏洞,建议优化方式是修改验证逻辑以增强安全性、工具C检查发现的安全漏洞,建议修复方式是调整权限设置),有利于业务人员及时对待测接口进行安全性修复,从而提高了接口的安全性。
本实施例通过提取所述反馈数据中各所述目标测试工具的测试结果,并根据所述测试结果判断是否存在预设类型的安全漏洞,其中,所述预设类型包括数据处理、接口权限、接口配置;若是,则根据所述安全漏洞的数量和类型对所述待测接口进行安全性评估,获得所述待测接口的风险等级;根据所述安全漏洞的数量和类型,生成对应各所述安全漏洞的一般修复措施;根据所述待测接口的风险等级,对所述一般修复措施进行筛选,获得所述待测接口的安全优化策略;将所述安全优化策略推送至用户端,以使所述用户端基于所述安全优化策略对所述待测接口进行维护处理;在所述用户端完成所述待测接口的维护处理时,获取所述用户端对所述待测接口的操作数据;结合所述安全漏洞、所述安全优化策略以及所述操作数据,生成所述待测接口的安全测试日志。由于本实施例是根据测试结果判断是否存在预设类型的安全漏洞,能够具体地基于安全漏洞的数量和类型确定待测接口的风险等级,提升了评估结果的可靠性;并生成供业务人员参考的安全优化策略和安全测试日志,有利于业务人员及时对安全漏洞实现高效修复,从而进一步提高了待测接口的安全性。
此外,为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有接口安全测试程序,所述接口安全测试程序被处理器执行时实现如上文所述的接口安全测试方法的步骤。
参考图6,图6为本发明接口安全测试装置第一实施例的结构框图。
如图6所示,本发明实施例提出的接口安全测试装置包括:
工具确定模块601,用于根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具;
接口测试模块602,用于基于预设顺序对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据;
安全评估模块603,用于根据所述反馈数据对所述待测接口进行安全性评估;
策略反馈模块604,用于基于评估结果生成各所述待测接口的安全优化策略。
进一步地,所述工具确定模块601,用于获取所述待测接口的运行环境;根据所述运行环境结合用户指令,确定应用于所述运行环境的测试工具,并生成所述测试工具集;根据所述待测接口,在所述测试工具集包含的各测试工具中确定对应所述待测接口的目标测试工具。
本实施例通过根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具;基于预设顺序对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据;根据所述反馈数据对所述待测接口进行安全性评估;基于评估结果生成各所述待测接口的安全优化策略。由于实施例能够在测试工具集中确定待测接口的目标测试工具,基于预设顺序进行接口测试,能够覆盖更多的安全测试类型,实现对每个接口进行不同类型的充分的安全测试,并根据测试获得的反馈数据进行安全性评估并生成安全优化策略,有利于更好地了解接口的安全状态,获得更全面的接口安全测试结果。
基于本发明上述接口安全测试装置第一实施例,提出本发明接口安全测试装置第二实施例。
在本实施例中,接口测试模块602,用于获取所述运行环境中的接口清单,并根据所述接口清单生成所述待测接口的测试顺位;基于所述测试顺位对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据。
所述接口测试模块602,还用于在处于所述待测接口的测试顺位时,采用所述目标测试工具对所述待测接口进行测试,获得基于各所述目标测试工具的测试结果;对各所述测试结果进行整合,获得反馈数据。
安全评估模块603,用于提取所述反馈数据中各所述目标测试工具的测试结果,并根据所述测试结果判断是否存在预设类型的安全漏洞,其中,所述预设类型包括数据处理、接口权限、接口配置;若是,则根据所述安全漏洞的数量和类型对所述待测接口进行安全性评估,获得所述待测接口的风险等级。
策略反馈模块604,用于根据所述安全漏洞的数量和类型,生成对应各所述安全漏洞的一般修复措施;根据所述待测接口的风险等级,对所述一般修复措施进行筛选,获得所述待测接口的安全优化策略。
进一步地,所述策略反馈模块604,还用于将所述安全优化策略推送至用户端,以使所述用户端基于所述安全优化策略对所述待测接口进行维护处理;在所述用户端完成所述待测接口的维护处理时,获取所述用户端对所述待测接口的操作数据;结合所述安全漏洞、所述安全优化策略以及所述操作数据,生成所述待测接口的安全测试日志。
本发明分层数据自动化测试装置其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……限定”的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器/随机存取存储器、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种接口安全测试方法,其特征在于,所述方法包括:
根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具;
基于预设顺序对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据;
根据所述反馈数据对所述待测接口进行安全性评估;
基于评估结果生成各所述待测接口的安全优化策略;
其中,所述根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具之前,包括:
获取所述待测接口的运行环境;
根据所述运行环境结合用户指令,确定应用于所述运行环境的测试工具,并生成所述测试工具集,其中各所述测试工具对应不同的安全测试类型;
相应地,所述根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具,包括:
根据所述待测接口,在所述测试工具集包含的各测试工具中确定对应所述待测接口的目标测试工具;
其中,所述基于预设顺序对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据,包括:
获取所述运行环境中的接口清单,并根据所述接口清单生成所述待测接口的测试顺位;
基于所述测试顺位对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据。
2.如权利要求1所述的接口安全测试方法,其特征在于,所述基于所述测试顺位对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据,包括:
在处于所述待测接口的测试顺位时,采用所述目标测试工具对所述待测接口进行测试,获得基于各所述目标测试工具的测试结果;
对各所述测试结果进行整合,获得反馈数据。
3.如权利要求2所述的接口安全测试方法,其特征在于,所述根据所述反馈数据对所述待测接口进行安全性评估,包括:
提取所述反馈数据中各所述目标测试工具的测试结果,并根据所述测试结果判断是否存在预设类型的安全漏洞,其中,所述预设类型包括数据处理、接口权限、接口配置;
若是,则根据所述安全漏洞的数量和类型对所述待测接口进行安全性评估,获得所述待测接口的风险等级。
4.如权利要求3所述的接口安全测试方法,其特征在于,所述基于评估结果生成各所述待测接口的安全优化策略,包括:
根据所述安全漏洞的数量和类型,生成对应各所述安全漏洞的一般修复措施;
根据所述待测接口的风险等级,对所述一般修复措施进行筛选,获得所述待测接口的安全优化策略。
5.如权利要求4所述的接口安全测试方法,其特征在于,所述根据所述待测接口的风险等级,对所述一般修复措施进行筛选,获得所述待测接口的安全优化策略之后,包括:
将所述安全优化策略推送至用户端,以使所述用户端基于所述安全优化策略对所述待测接口进行维护处理;
在所述用户端完成所述待测接口的维护处理时,获取所述用户端对所述待测接口的操作数据;
结合所述安全漏洞、所述安全优化策略以及所述操作数据,生成所述待测接口的安全测试日志。
6.一种接口安全测试装置,其特征在于,所述装置包括:
工具确定模块,用于根据待测接口在测试工具集中确定对应所述待测接口的目标测试工具;
接口测试模块,用于基于预设顺序对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据;
安全评估模块,用于根据所述反馈数据对所述待测接口进行安全性评估;
策略反馈模块,用于基于评估结果生成各所述待测接口的安全优化策略;
所述工具确定模块,还用于获取所述待测接口的运行环境;根据所述运行环境结合用户指令,确定应用于所述运行环境的测试工具,并生成所述测试工具集,其中各所述测试工具对应不同的安全测试类型;根据所述待测接口,在所述测试工具集包含的各测试工具中确定对应所述待测接口的目标测试工具;
所述接口测试模块,还用于获取所述运行环境中的接口清单,并根据所述接口清单生成所述待测接口的测试顺位;基于所述测试顺位对各所述待测接口采用所述目标测试工具进行测试,获得反馈数据。
7.一种接口安全测试设备,其特征在于,所述接口安全测试设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的接口安全测试程序,所述接口安全测试程序被所述处理器执行时实现如权利要求1至5中任一项所述的接口安全测试方法的步骤。
8.一种存储介质,其特征在于,所述存储介质上存储有接口安全测试程序,所述接口安全测试程序被处理器执行时实现如权利要求1至5中任一项所述的接口安全测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311747142.XA CN117421253B (zh) | 2023-12-19 | 2023-12-19 | 接口安全测试方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311747142.XA CN117421253B (zh) | 2023-12-19 | 2023-12-19 | 接口安全测试方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117421253A CN117421253A (zh) | 2024-01-19 |
CN117421253B true CN117421253B (zh) | 2024-04-02 |
Family
ID=89530652
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311747142.XA Active CN117421253B (zh) | 2023-12-19 | 2023-12-19 | 接口安全测试方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117421253B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1761208A (zh) * | 2005-11-17 | 2006-04-19 | 郭世泽 | 网络信息系统的安全性及生存性评估的系统和方法 |
CN104461848A (zh) * | 2014-12-03 | 2015-03-25 | 浪潮(北京)电子信息产业有限公司 | 一种文件系统评估方法及系统 |
CN108153665A (zh) * | 2016-12-02 | 2018-06-12 | 北京奇虎科技有限公司 | 数据测试方法及装置 |
CN108898018A (zh) * | 2018-07-23 | 2018-11-27 | 南方电网科学研究院有限责任公司 | 一种程序代码安全检测方法、设备及可读存储介质 |
CN109857667A (zh) * | 2019-02-03 | 2019-06-07 | 苏州市龙测智能科技有限公司 | 接口自动化测试方法、测试装置、测试设备及存储介质 |
CN110519115A (zh) * | 2019-07-11 | 2019-11-29 | 深圳壹账通智能科技有限公司 | 网关接口测试方法、终端设备、存储介质及装置 |
CN113821440A (zh) * | 2021-09-27 | 2021-12-21 | 中车株洲电力机车有限公司 | 一种VxWorks应用软件测试方法、系统及模拟器 |
CN114676066A (zh) * | 2022-04-25 | 2022-06-28 | 中国工商银行股份有限公司 | 目标应用的安全测试方法及其装置、电子设备及存储介质 |
CN115576827A (zh) * | 2022-10-26 | 2023-01-06 | 中国农业银行股份有限公司 | 业务流程软件的性能测试方法、装置、设备及存储介质 |
CN116166536A (zh) * | 2022-12-26 | 2023-05-26 | 百度在线网络技术(北京)有限公司 | 一种测试方法、装置、电子设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9396094B2 (en) * | 2011-07-21 | 2016-07-19 | International Business Machines Corporation | Software test automation systems and methods |
US11048803B2 (en) * | 2019-05-08 | 2021-06-29 | International Business Machines Corporation | Portable security testing device |
US11265342B2 (en) * | 2020-07-02 | 2022-03-01 | Qualys, Inc. | Rest api scanning for security testing |
-
2023
- 2023-12-19 CN CN202311747142.XA patent/CN117421253B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1761208A (zh) * | 2005-11-17 | 2006-04-19 | 郭世泽 | 网络信息系统的安全性及生存性评估的系统和方法 |
CN104461848A (zh) * | 2014-12-03 | 2015-03-25 | 浪潮(北京)电子信息产业有限公司 | 一种文件系统评估方法及系统 |
CN108153665A (zh) * | 2016-12-02 | 2018-06-12 | 北京奇虎科技有限公司 | 数据测试方法及装置 |
CN108898018A (zh) * | 2018-07-23 | 2018-11-27 | 南方电网科学研究院有限责任公司 | 一种程序代码安全检测方法、设备及可读存储介质 |
CN109857667A (zh) * | 2019-02-03 | 2019-06-07 | 苏州市龙测智能科技有限公司 | 接口自动化测试方法、测试装置、测试设备及存储介质 |
CN110519115A (zh) * | 2019-07-11 | 2019-11-29 | 深圳壹账通智能科技有限公司 | 网关接口测试方法、终端设备、存储介质及装置 |
CN113821440A (zh) * | 2021-09-27 | 2021-12-21 | 中车株洲电力机车有限公司 | 一种VxWorks应用软件测试方法、系统及模拟器 |
CN114676066A (zh) * | 2022-04-25 | 2022-06-28 | 中国工商银行股份有限公司 | 目标应用的安全测试方法及其装置、电子设备及存储介质 |
CN115576827A (zh) * | 2022-10-26 | 2023-01-06 | 中国农业银行股份有限公司 | 业务流程软件的性能测试方法、装置、设备及存储介质 |
CN116166536A (zh) * | 2022-12-26 | 2023-05-26 | 百度在线网络技术(北京)有限公司 | 一种测试方法、装置、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
数据库系统安全代价测试工具的设计;叶晓俊 等;计算机科学;20080825(第08期);全文 * |
渗透测试在网络安全等级保护测评中的应用;王世轶 等;计算机应用与软件;20181112(第11期);第196-199页 * |
Also Published As
Publication number | Publication date |
---|---|
CN117421253A (zh) | 2024-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10873594B2 (en) | Test system and method for identifying security vulnerabilities of a device under test | |
KR101143999B1 (ko) | Api 기반 어플리케이션 분석 장치 및 방법 | |
Mirjalili et al. | A survey on web penetration test | |
Ghosh et al. | NetSecuritas: An integrated attack graph-based security assessment tool for enterprise networks | |
Maheshwari et al. | Integrating risk assessment and threat modeling within SDLC process | |
Qasaimeh et al. | Black box evaluation of web application scanners: Standards mapping approach | |
Johari et al. | Penetration testing in IoT network | |
CN112351021B (zh) | 资产风险探测方法、装置、可读存储介质及计算机设备 | |
CN115361203A (zh) | 一种基于分布式扫描引擎的脆弱性分析方法 | |
Subedi et al. | Secure paradigm for web application development | |
Alghaithi et al. | A study of risk management frameworks and security testing for secure software systems | |
Alghamdi | Effective penetration testing report writing | |
CN117421253B (zh) | 接口安全测试方法、装置、设备及存储介质 | |
Yermalovich et al. | Formalization of attack prediction problem | |
CN115935356A (zh) | 一种软件安全性测试方法、系统及应用 | |
Adebiyi et al. | Security Assessment of Software Design using Neural Network | |
Ashfaq | DEVELOPMENT OF A SECURITY TESTING PROCESS FOR YOCTO LINUX-BASED DISTRIBUTIONS | |
Hai et al. | Evaluating the security levels of the Web-Portals based on the standard ISO/IEC 15408 | |
Kahtan et al. | Evaluation dependability attributes of web application using vulnerability assessments tools | |
CN117435508B (zh) | 接口测试方法、装置、设备及存储介质 | |
Stewart | Improving software testing, verification and reliability in the software development life cycle | |
Bagri et al. | Automation Framework for Software Vulnerability Exploitability Assessment | |
WO2023047689A1 (ja) | 脅威分析方法および脅威分析システム | |
Deepa | Vulnerability Assessment in Contemporary Computing | |
Deowanshi | Penetration testing tool for vulnerability assessment |
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 |