CN114253847A - 一种程序安全测试方法、装置、设备及存储介质 - Google Patents
一种程序安全测试方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114253847A CN114253847A CN202111552887.1A CN202111552887A CN114253847A CN 114253847 A CN114253847 A CN 114253847A CN 202111552887 A CN202111552887 A CN 202111552887A CN 114253847 A CN114253847 A CN 114253847A
- Authority
- CN
- China
- Prior art keywords
- interface
- detected
- data
- case set
- normal
- 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.)
- Pending
Links
Images
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/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- 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
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种程序安全测试方法,包括:向抓包工具导入接口文档;接口文档包括待检测接口的标识信息;调用抓包工具捕获目标程序向服务器发送的正常请求数据;当发送正常请求数据的接口为待检测接口时,调用抓包工具中预设的控制模块修改待检测接口的接口参数值,生成对应待检测接口的用例集;用例集包括漏洞攻击操作;将用例集以及正常请求数据传入服务器,以获取服务器返回的对应正常请求数据的正常接口数据,以及对应用例集的待检测接口数据;调用控制模块对比正常接口数据与待检测接口数据,生成接口检测结果,从而可以方便快捷的对程序进行安全测试。本发明还提供了一种装置、设备及存储介质,同样具有上述有益效果。
Description
技术领域
本发明涉及软件安全检测技术领域,特别是涉及一种程序安全测试方法、一种程序安全测试装置、一种程序安全测试设备以及一种计算机可读存储介质。
背景技术
平常软件开发者的质量参差不齐,写出来的代码很容易造成漏洞,导致用户数据被获取,用户数据被篡改等。安全测试是确保测试质量的重要手段。安全性测试就是在软件研发和维护过程中,通过不同的测试方法,发现安全性的问题,安全测试是确保测试质量的重要手段。通过安全测试,可以暴露软件的安全问题,进而极大程度的保护用户信息安全。
对于软件安全测试,已经有很成熟的专用工具及方案,例如开源工具OWASP ZAP和Burp Suite等。但是现有的安全测试方案通常操作比较繁琐,操作流程较长。所以如何简化安全操作流程,提供一种方便快捷的安全测试方案是本领域技术人员急需解决的问题。
发明内容
本发明的目的是提供一种程序安全测试方法,可以方便快捷的对程序进行安全测试;本发明的另一目的在于提供一种程序安全测试装置、一种程序安全测试设备以及一种计算机可读存储介质,可以方便快捷的对程序进行安全测试。
为解决上述技术问题,本发明提供一种程序安全测试方法,包括:
向抓包工具导入接口文档;所述接口文档包括待检测接口的标识信息;
调用所述抓包工具捕获目标程序向服务器发送的正常请求数据;
当发送所述正常请求数据的接口为所述待检测接口时,调用所述抓包工具中预设的控制模块修改所述待检测接口的接口参数值,生成对应所述待检测接口的用例集;所述用例集包括漏洞攻击操作;
将所述用例集以及所述正常请求数据传入所述服务器,以获取所述服务器返回的对应所述正常请求数据的正常接口数据,以及对应所述用例集的待检测接口数据;
调用所述控制模块对比所述正常接口数据与所述待检测接口数据,生成接口检测结果。
可选的,所述漏洞攻击操作包括以下任意一项或任意组合:
sql注入、xss攻击、越权访问。
可选的,所述生成接口检测结果包括:
当所述正常接口数据与所述待检测接口数据相同时,确定所述待检测接口有漏洞。
可选的,所述生成接口检测结果包括:
当所述正常接口数据与所述待检测接口数据不同时,确定所述待检测接口无漏洞。
可选的,在所述当发送所述正常请求数据的接口为所述待检测接口时,调用所述抓包工具中预设的控制模块修改所述待检测接口的接口参数值,生成对应所述待检测接口的用例集之前,还包括:
将控制模块嵌入所述抓包工具。
可选的,所述控制模块为jar包。
可选的,所述抓包工具为fiddler工具。
本发明还提供了一种程序安全测试装置,包括:
导入模块,用于向抓包工具导入接口文档;所述接口文档包括待检测接口的标识信息;
抓包模块,用于调用所述抓包工具捕获目标程序向服务器发送的正常请求数据;
用例集生成模块,用于当发送所述正常请求数据的接口为所述待检测接口时,调用所述抓包工具中预设的控制模块修改所述待检测接口的接口参数值,生成对应所述待检测接口的用例集;所述用例集包括漏洞攻击操作;
传输模块,用于将所述用例集以及所述正常请求数据传入所述服务器,以获取所述服务器返回的对应所述正常请求数据的正常接口数据,以及对应所述用例集的待检测接口数据;
比对模块,用于调用所述控制模块对比所述正常接口数据与所述待检测接口数据,生成接口检测结果。
本发明还提供了一种程序安全测试设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上述任意一项所述程序安全测试方法的步骤。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行以实现如上述任意一项所述程序安全测试方法的步骤。
本发明所提供的一种程序安全测试方法,包括:向抓包工具导入接口文档;接口文档包括待检测接口的标识信息;调用抓包工具捕获目标程序向服务器发送的正常请求数据;当发送正常请求数据的接口为待检测接口时,调用抓包工具中预设的控制模块修改待检测接口的接口参数值,生成对应待检测接口的用例集;用例集包括漏洞攻击操作;将用例集以及正常请求数据传入服务器,以获取服务器返回的对应正常请求数据的正常接口数据,以及对应用例集的待检测接口数据;调用控制模块对比正常接口数据与待检测接口数据,生成接口检测结果。
通过抓包工具及其预设的控制模块可以自动的对待检测接口进行抓包,并自动的生成用例集,以及将用例集发送至服务器自动进行检测,生成接口检测结果。该方法适用于各种软件接口,只要能被抓包,就可以进行测试。且具体操作过程简单,并不需要操作人员手动编写大量的用例集,便于操作,从而可以方便快捷的对程序进行安全测试。
本发明还提供了一种程序安全测试装置、一种程序安全测试设备以及一种计算机可读存储介质,同样具有上述有益效果,在此不再进行赘述。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的一种程序安全测试方法的流程图;
图2为本发明实施例所提供的一种具体的程序安全测试方法的流程图;
图3为本发明实施例所提供的一种程序安全测试装置的结构框图;
图4为本发明实施例所提供的一种程序安全测试设备的结构框图。
具体实施方式
本发明的核心是提供一种程序安全测试方法。在现有技术中,对于软件安全测试,已经有很成熟的专用工具及方案,例如开源工具OWASP ZAP和Burp Suite等。但是现有的安全测试方案通常操作比较繁琐,操作流程较长。
而本发明所提供的一种程序安全测试方法,包括:向抓包工具导入接口文档;接口文档包括待检测接口的标识信息;调用抓包工具捕获目标程序向服务器发送的正常请求数据;当发送正常请求数据的接口为待检测接口时,调用抓包工具中预设的控制模块修改待检测接口的接口参数值,生成对应待检测接口的用例集;用例集包括漏洞攻击操作;将用例集以及正常请求数据传入服务器,以获取服务器返回的对应正常请求数据的正常接口数据,以及对应用例集的待检测接口数据;调用控制模块对比正常接口数据与待检测接口数据,生成接口检测结果。
通过抓包工具及其预设的控制模块可以自动的对待检测接口进行抓包,并自动的生成用例集,以及将用例集发送至服务器自动进行检测,生成接口检测结果。该方法适用于各种软件接口,只要能被抓包,就可以进行测试。且具体操作过程简单,并不需要操作人员手动编写大量的用例集,便于操作,从而可以方便快捷的对程序进行安全测试。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例所提供的一种程序安全测试方法的流程图。
参见图1,在本发明实施例中,程序安全测试方法包括:
S101:向抓包工具导入接口文档。
在本发明实施例中,所述接口文档包括待检测接口的标识信息。
在本发明实施例中所使用的抓包工具可以为fiddler工具,fiddler工具比较大众,其学习成本较低。当然,在本发明实施例中也可以使用其他的抓包工具,在此不做具体限定。
在本步骤中,会向抓包工具导入接口文档,该接口文档至少需要包括待检测接口的标识信息,以使抓包工具可以对待检测接口传输的流量进行抓包。当然,上述接口文档还可以包括其他信息,例如后续自动生成的用例集所对应的漏洞攻击操作的具体类型等,在此不做具体限定。需要说明的是,在本发明实施例中,接口文档用不会设置有直接向服务器传输的用例集,而是会在后续步骤中自动生成对应的用例集。
S102:调用抓包工具捕获目标程序向服务器发送的正常请求数据。
在本步骤中,会调用抓包工具对待监听的客户端进行监听,然后当目标程度,即客户端中的目标软件通过接口向服务器发送的正常请求数据时,上述抓包工具会对该正常请求数据进行抓包,从而捕获目标程序向服务器发送的正常请求数据。有关抓包工具对客户端进行监听的具体内容可以参考现有技术,在此不再进行赘述。
S103:当发送正常请求数据的接口为待检测接口时,调用抓包工具中预设的控制模块修改待检测接口的接口参数值,生成对应待检测接口的用例集。
在本发明实施例中,所述用例集包括漏洞攻击操作。
在本步骤中,当抓包工具捕获到通过接口发送的目标数据时,会先根据接口文档匹配接口。当匹配成功后,在本步骤中会调用抓包工具中预设的控制模块生成用例集,该用例集通常包括有大量的用例,每一待检测接口通常会对应多个用例。用例集通常包括有接口输入参数和接口执行后预期结果,同时该用例集会体现漏洞攻击操作,而漏洞攻击操作通常包括以下任意一项或任意组合:sql注入、xss攻击、越权访问。即上述用例集中的漏洞攻击操作通常包括对待检测接口的接口参数进行sql注入、xss攻击、越权访问等操作。相应的,本步骤通常具体需要调用控制模块修改待检测接口的接口参数值,生成对应待检测接口的用例集。
上述sql注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL(结构化查询语言)语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。
xss攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。
越权访问一般越权访问包含未授权访问、平行越权、垂直越权。未授权访问就是在没有任何授权的情况下对需要认证的资源进行访问以及增删改查;垂直越权为通过低权限向高权限跨越形成垂直越权访问;平行越权顾名思义就是同等用户权限之下,不用进入其他用户的账户也可以对别的用户资料或者订单等信息进行增删改查操作的目的。
当然,在本发明实施例中用例集还可以包括其他种类的漏洞攻击操作,在此不再进行赘述。在本发明实施例中,上述控制模块可以为jar包。JAR(Java ARchive,Java归档)是一种与平台无关的文件格式,可将多个文件合成一个文件。用户可将多个Java applet及其所需组件,例如.class文件、图像和声音等绑定到JAR文件中,从而形成jar包。在本发明实施例中,jar包设置有对应的任务,可以通过嵌入抓包工具的jar包实现本发明实施例中对应控制模块所需要执行的操作。当然,在本发明实施例中控制模块可以具有其他的格式,在本发明实施例中不做具体限定。
S104:将用例集以及正常请求数据传入服务器,以获取服务器返回的对应正常请求数据的正常接口数据,以及对应用例集的待检测接口数据。
在本步骤中,会将上述用例集对应的待检测请求数据,以及S102获取的正常请求数据传输至服务器,此时服务器会即对正常请求数据进行响应,返回对应的正常接口数据;以及对待检测请求数据进行响应,返回对应的待检测接口数据。
S105:调用控制模块对比正常接口数据与待检测接口数据,生成接口检测结果。
在本步骤中,具体会调用控制模块将正常接口数据与待检测接口数据进行比对,生成检测结果。本步骤的具体内容将在下述发明实施例中做详细介绍,在此不再进行赘述。
本发明实施例所提供的一种程序安全测试方法,包括:向抓包工具导入接口文档;接口文档包括待检测接口的标识信息;调用抓包工具捕获目标程序向服务器发送的正常请求数据;当发送正常请求数据的接口为待检测接口时,调用抓包工具中预设的控制模块修改待检测接口的接口参数值,生成对应待检测接口的用例集;用例集包括漏洞攻击操作;将用例集以及正常请求数据传入服务器,以获取服务器返回的对应正常请求数据的正常接口数据,以及对应用例集的待检测接口数据;调用控制模块对比正常接口数据与待检测接口数据,生成接口检测结果。
通过抓包工具及其预设的控制模块可以自动的对待检测接口进行抓包,并自动的生成用例集,以及将用例集发送至服务器自动进行检测,生成接口检测结果。该方法适用于各种软件接口,只要能被抓包,就可以进行测试。且具体操作过程简单,并不需要操作人员手动编写大量的用例集,便于操作,从而可以方便快捷的对程序进行安全测试。
有关本发明所提供的一种程序安全测试方法的具体内容将在下述发明实施例中做详细介绍。
请参考图2,图2为本发明实施例所提供的一种具体的程序安全测试方法的流程图。
参见图2,在本发明实施例中,程序安全测试方法包括:
S201:将控制模块嵌入所述抓包工具。
在本发明实施例中,若目标程序具体可以通过浏览器进行相应的操作,则在本发明实施例中首先需要打开抓包工具和浏览器,对抓包工具进行配置,使其代理监听客户端的http及https请求。
而在本步骤中,会将编写好的控制模块嵌入抓包工具,例如将编写好的jar包嵌入fiddler工具,此时控制模块会预先设置有对应的任务,监测接口请求。
S202:向抓包工具导入接口文档。
本步骤与上述发明实施例中S101基本一致,详细内容请参考上述发明实施例,在此不再进行赘述。
S203:调用抓包工具捕获目标程序向服务器发送的正常请求数据。
在本步骤中,测试人员可以通过浏览器操作相应程序页面,此时目标程序会通过接口向服务器发送正常请求数据。而该数据从客户端发送到服务器的时候会经过抓包工具,此时抓包工具可以捕获客户端的正常请求数据。
S204:当发送正常请求数据的接口为待检测接口时,调用抓包工具中预设的控制模块修改待检测接口的接口参数值,生成对应待检测接口的用例集。
本步骤与上述发明实施例中S103基本一致,详细内容已在上述发明实施例中做详细介绍,在此不再进行赘述。
S205:将用例集以及正常请求数据传入所述服务器,以获取服务器返回的对应正常请求数据的正常接口数据,以及对应用例集的待检测接口数据。
本步骤与上述发明实施例中S104基本一致,详细内容已在上述发明实施例中做详细介绍,在此不再进行赘述。
S206:当正常接口数据与待检测接口数据相同时,确定待检测接口有漏洞。
在本步骤中,控制模块会自动解析接口出参,即解析正常接口数据与待检测接口数据主要是通过将篡改后的待检测接口数据的返回参数与正常接口数据的返回参数作比较。例如:若接口返回格式是json格式,则比对待检测接口数据与正常接口数据之间所有的key值和value值,检测其是否都一致。同理,若接口返回格式是xml的格式,也会对比两种数据对应的参数值是否一致。
而在本步骤中,当正常接口数据与待检测接口数据相同时,即上述对比结果显示对比值均相同时,则表明对待检测接口的接口参数及执行漏洞攻击操作前后,其返回值没有发生变化,表明接口不会对上述漏洞攻击操作产生反应,该接口允许通过了上述不安全的操作,此时确定待检测接口存在漏洞。
S207:当正常接口数据与待检测接口数据不同时,确定待检测接口无漏洞。
反之,当在本步骤中确定正常接口数据与待检测接口数据不同时,表明接口会对上述漏洞攻击操作产生反应,该接口不允许通过上述不安全的操作,此时确定待检测接口无漏洞。
本发明实施例所提供的一种程序安全测试方法,通过抓包工具及其预设的控制模块可以自动的对待检测接口进行抓包,并自动的生成用例集,以及将用例集发送至服务器自动进行检测,生成接口检测结果。该方法适用于各种软件接口,只要能被抓包,就可以进行测试。且具体操作过程简单,并不需要操作人员手动编写大量的用例集,便于操作,从而可以方便快捷的对程序进行安全测试。
下面对本发明实施例所提供的一种程序安全测试装置进行介绍,下文描述的程序安全测试装置与上文描述的程序安全测试方法可相互对应参照。
请参考图3,图3为本发明实施例所提供的一种程序安全测试装置的结构框图。参照图3,程序安全测试装置可以包括:
导入模块100,用于向抓包工具导入接口文档;所述接口文档包括待检测接口的标识信息。
抓包模块200,用于调用所述抓包工具捕获目标程序向服务器发送的正常请求数据。
用例集生成模块300,用于当发送所述正常请求数据的接口为所述待检测接口时,调用所述抓包工具中预设的控制模块修改所述待检测接口的接口参数值,生成对应所述待检测接口的用例集;所述用例集包括漏洞攻击操作。
传输模块400,用于将所述用例集以及所述正常请求数据传入所述服务器,以获取所述服务器返回的对应所述正常请求数据的正常接口数据,以及对应所述用例集的待检测接口数据。
比对模块500,用于调用所述控制模块对比所述正常接口数据与所述待检测接口数据,生成接口检测结果。
作为优选的,在本发明实施例中,所述漏洞攻击操作包括以下任意一项或任意组合:
sql注入、xss攻击、越权访问。
作为优选的,在本发明实施例中,比对模块500具体用于:
当所述正常接口数据与所述待检测接口数据相同时,确定所述待检测接口有漏洞。
作为优选的,在本发明实施例中,比对模块500具体用于:
当所述正常接口数据与所述待检测接口数据不同时,确定所述待检测接口无漏洞。
作为优选的,在本发明实施例中,还包括:
嵌入模块,用于将控制模块嵌入所述抓包工具。
作为优选的,在本发明实施例中,所述控制模块为jar包。
作为优选的,在本发明实施例中,所述抓包工具为fiddler工具。
本实施例的程序安全测试装置用于实现前述的程序安全测试方法,因此程序安全测试装置中的具体实施方式可见前文中的程序安全测试方法的实施例部分,例如,导入模块100,抓包模块200,用例集生成模块300,传输模块400,比对模块500分别用于实现上述程序安全测试方法中步骤S101至S105,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
下面对本发明实施例提供的一种程序安全测试设备进行介绍,下文描述的程序安全测试设备与上文描述的程序安全测试方法以及程序安全测试装置可相互对应参照。
请参考图4,图4为本发明实施例所提供的一种程序安全测试设备的结构框图。
参照图4,该程序安全测试设备可以包括处理器11和存储器12。
所述存储器12用于存储计算机程序;所述处理器11用于执行所述计算机程序时实现上述发明实施例中所述的程序安全测试方法的具体内容。
本实施例的程序安全测试设备中处理器11用于安装上述发明实施例中所述的程序安全测试装置,同时处理器11与存储器12相结合可以实现上述任一发明实施例中所述的程序安全测试方法。因此程序安全测试设备中的具体实施方式可见前文中的程序安全测试方法的实施例部分,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一发明实施例中所介绍的一种程序安全测试方法。其余内容可以参照现有技术,在此不再进行展开描述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种程序安全测试方法、一种程序安全测试装置、一种程序安全测试设备以及一种计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种程序安全测试方法,其特征在于,包括:
向抓包工具导入接口文档;所述接口文档包括待检测接口的标识信息;
调用所述抓包工具捕获目标程序向服务器发送的正常请求数据;
当发送所述正常请求数据的接口为所述待检测接口时,调用所述抓包工具中预设的控制模块修改所述待检测接口的接口参数值,生成对应所述待检测接口的用例集;所述用例集包括漏洞攻击操作;
将所述用例集以及所述正常请求数据传入所述服务器,以获取所述服务器返回的对应所述正常请求数据的正常接口数据,以及对应所述用例集的待检测接口数据;
调用所述控制模块对比所述正常接口数据与所述待检测接口数据,生成接口检测结果。
2.根据权利要求1所述的方法,其特征在于,所述漏洞攻击操作包括以下任意一项或任意组合:
sql注入、xss攻击、越权访问。
3.根据权利要求2所述的方法,其特征在于,所述生成接口检测结果包括:
当所述正常接口数据与所述待检测接口数据相同时,确定所述待检测接口有漏洞。
4.根据权利要求2所述的方法,其特征在于,所述生成接口检测结果包括:
当所述正常接口数据与所述待检测接口数据不同时,确定所述待检测接口无漏洞。
5.根据权利要求1所述的方法,其特征在于,在所述当发送所述正常请求数据的接口为所述待检测接口时,调用所述抓包工具中预设的控制模块修改所述待检测接口的接口参数值,生成对应所述待检测接口的用例集之前,还包括:
将控制模块嵌入所述抓包工具。
6.根据权利要求5所述的方法,其特征在于,所述控制模块为jar包。
7.根据权利要求5所述的方法,其特征在于,所述抓包工具为fiddler工具。
8.一种程序安全测试装置,其特征在于,包括:
导入模块,用于向抓包工具导入接口文档;所述接口文档包括待检测接口的标识信息;
抓包模块,用于调用所述抓包工具捕获目标程序向服务器发送的正常请求数据;
用例集生成模块,用于当发送所述正常请求数据的接口为所述待检测接口时,调用所述抓包工具中预设的控制模块修改所述待检测接口的接口参数值,生成对应所述待检测接口的用例集;所述用例集包括漏洞攻击操作;
传输模块,用于将所述用例集以及所述正常请求数据传入所述服务器,以获取所述服务器返回的对应所述正常请求数据的正常接口数据,以及对应所述用例集的待检测接口数据;
比对模块,用于调用所述控制模块对比所述正常接口数据与所述待检测接口数据,生成接口检测结果。
9.一种程序安全测试设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至7任意一项所述程序安全测试方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行以实现如权利要求1至7任意一项所述程序安全测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111552887.1A CN114253847A (zh) | 2021-12-17 | 2021-12-17 | 一种程序安全测试方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111552887.1A CN114253847A (zh) | 2021-12-17 | 2021-12-17 | 一种程序安全测试方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114253847A true CN114253847A (zh) | 2022-03-29 |
Family
ID=80795651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111552887.1A Pending CN114253847A (zh) | 2021-12-17 | 2021-12-17 | 一种程序安全测试方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114253847A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114884705A (zh) * | 2022-04-22 | 2022-08-09 | 方圆标志认证集团浙江有限公司 | 一种信息安全评估的实施用例的生成方法及系统 |
-
2021
- 2021-12-17 CN CN202111552887.1A patent/CN114253847A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114884705A (zh) * | 2022-04-22 | 2022-08-09 | 方圆标志认证集团浙江有限公司 | 一种信息安全评估的实施用例的生成方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9584543B2 (en) | Method and system for web integrity validator | |
CN108989355B (zh) | 一种漏洞检测方法和装置 | |
Antunes et al. | Effective detection of SQL/XPath injection vulnerabilities in web services | |
CN105141647B (zh) | 一种检测Web应用的方法和系统 | |
Antunes et al. | Enhancing penetration testing with attack signatures and interface monitoring for the detection of injection vulnerabilities in web services | |
KR101902747B1 (ko) | 클라이언트 측 웹 취약점 분석 방법 및 장치 | |
CN111835756B (zh) | App隐私合规检测方法、装置、计算机设备及存储介质 | |
CN101964026A (zh) | 网页挂马检测方法和系统 | |
CN107566350B (zh) | 安全配置漏洞监控方法、装置以及计算机可读存储介质 | |
KR101972825B1 (ko) | 하이브리드 분석 기술을 이용한 임베디드 기기 취약점 자동 분석 방법, 장치 및 그 방법을 실행하는 컴퓨터 프로그램 | |
CN107832617B (zh) | 一种php代码执行漏洞的黑盒检测方法及装置 | |
CN113315767B (zh) | 一种电力物联网设备安全检测系统及方法 | |
CN110968872A (zh) | 文件漏洞的检测处理方法、装置、电子设备及存储介质 | |
CN113342673A (zh) | 漏洞检测方法、设备及可读存储介质 | |
CN114253847A (zh) | 一种程序安全测试方法、装置、设备及存储介质 | |
US20240160748A1 (en) | Method And System For Data Flow Monitoring To Identify Application Security Vulnerabilities And To Detect And Prevent Attacks | |
CN112422527B (zh) | 变电站电力监控系统的威胁评估系统、方法和装置 | |
KR101464736B1 (ko) | 정보보호 관리 시스템 및 이를 통한 홈페이지 위변조 탐지 방법 | |
CN110691090B (zh) | 网站检测方法、装置、设备及存储介质 | |
CN111949992A (zh) | Web应用程序的自动化安全监测方法及系统 | |
CN113946869B (zh) | 用于联邦学习和隐私计算的内部安全攻击检测方法及装置 | |
CN112383536B (zh) | 防火墙验证方法、装置、计算机设备及存储介质 | |
CN113868670A (zh) | 一种漏洞检测流程检验方法及系统 | |
CN112528286A (zh) | 终端设备安全检测方法、关联设备以及计算机程序产品 | |
Jain et al. | Testing application security with aspects |
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 |