CN113162937A - 应用安全自动化检测方法、系统、电子设备及存储介质 - Google Patents
应用安全自动化检测方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113162937A CN113162937A CN202110450856.9A CN202110450856A CN113162937A CN 113162937 A CN113162937 A CN 113162937A CN 202110450856 A CN202110450856 A CN 202110450856A CN 113162937 A CN113162937 A CN 113162937A
- Authority
- CN
- China
- Prior art keywords
- detection
- preset
- response message
- safety
- information
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 211
- 230000004044 response Effects 0.000 claims abstract description 84
- 230000006399 behavior Effects 0.000 claims abstract description 47
- 238000012544 monitoring process Methods 0.000 claims abstract description 38
- 238000000034 method Methods 0.000 claims description 36
- 238000012360 testing method Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 18
- 230000015654 memory Effects 0.000 claims description 13
- 230000003068 static effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 11
- 238000011076 safety test Methods 0.000 description 9
- 238000002347 injection Methods 0.000 description 7
- 239000007924 injection Substances 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000013522 software testing Methods 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 4
- 238000009781 safety test method Methods 0.000 description 4
- 235000014510 cooky Nutrition 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 239000000243 solution Substances 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
- 238000012038 vulnerability analysis Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Alarm Systems (AREA)
Abstract
本公开提供了一种应用安全自动化检测方法,可用于金融领域或其他领域,包括:根据预置的监听范围,对用户操作行为进行监听并记录,生成相应的请求报文及响应报文;根据预置的第一检测规则,对响应报文进行信息安全检测,得到安全检测结果;对请求报文按照预置攻击规则对用户操作行为进行篡改后并重新发送请求,根据预置的第二检测规则对修改后的请求所生成的响应报文进行异常检测,得到自动化检测结果。本公开还提供了一种应用安全自动化检测系统、电子设备及计算机可读存储介质。
Description
技术领域
本公开涉及信息安全技术领域,具体涉及一种应用安全自动化检测方法、系统、电子设备及存储介质。
背景技术
目前的安全测试通常为使用工具扫描或手工测试方法。工具扫描,如AppScan黑盒扫描,其原理是通过使用者向工具提供应用扫描入口,通过对应用进行爬取后发送工具内置的攻击向量进行测试,再通过对响应报文进行分析判断应用是否存在安全风险。手工测试,通过如Burp Suite等代理工具对报文进行拦截和篡改,使用者根据响应报文或页面展示内容人工判断应用是否存在安全风险。
工具扫描使用内置攻击向量,测试范围有限,扫描涉及上送报表参数通常为自动填充因而会造成较高的误报率,且针对用户表单提交提供的测试方法分为两种:1、直接忽略而缺失此部分,2、每次执行向用户弹窗要求提交信息,对使用者时间占用较多,并未释放使用者精力,达到提升测试效率的目的。
发明内容
为解决上述现有技术中存在的技术问题,本公开提供了一种应用安全自动化检测方法、系统、电子设备及存储介质,旨在通过将自动化与人工测试相结合的方式,达到上述现有工具缺少的能力。
本公开的第一个方面提供了一种应用安全自动化检测方法,包括:根据预置的监听范围,对用户操作行为进行监听并记录,生成相应的请求报文及响应报文;根据预置的第一检测规则,对所述响应报文进行信息安全检测,得到安全检测结果;对所述请求报文按照预置攻击规则对所述用户操作行为进行篡改后并重新发送请求,根据预置的第二检测规则对修改后的请求所生成的响应报文进行异常检测,得到自动化检测结果。
进一步地,所述根据预置的第一检测规则,对所述响应报文进行信息安全检测,得到安全检测结果包括:根据预置的第一检测规则,对所述响应报文中的报文头安全属性及客户敏感信息进行信息安全检测,得到安全检测结果。
进一步地,所述对所述响应报文中的报文头安全属性进行信息安全检测包括:判断所述响应报文中的报文头HttpOnly属性是否设置为True,和/或X-Frame-Options是否设置为SAMEORIGIN,若是,则不存在安全隐患;否则,存在安全隐患。
进一步地,所述对所述响应报文中的客户敏感信息进行信息安全检测包括:对所述响应报文进行关键词检索,得到客户敏感信息;判断所述客户敏感信息是否进行了脱敏或加密处理,若是,则不存在安全隐患,否则,存在安全隐患。
进一步地,所述安全检测结果包括所述响应报文中是否存在安全隐患的分析结果。
进一步地,所述根据预置的第二检测规则对修改后的请求所生成的响应报文进行异常检测包括:根据预置的第二检测规则,对修改后的请求所生成的响应报文进行异常检测,判断该对修改后的请求所生成的响应报文中是否出现篡改后的请求中的客户信息,若出现,则存在攻击安全隐患,否则,不存在攻击安全隐患;其中,所述自动化检测结果包括是否存在攻击安全隐患的分析结果。
进一步地,该方法还包括:根据所述安全检测结果和所述自动化检测结果生成自动化检测报告;其中,所述自动化检测报告至少包括:请求报文、响应报文、篡改后的请求报文、篡改后的响应报文及请求报文与篡改后的请求报文的差异分析结果。
进一步地,所述用户操作行为包括用户根据应用页面提示输入的客户参数信息,其中,所述客户参数信息包括客户身份信息或客户敏感信息。
进一步地,所述报文头HttpOnly属性为所述客户身份信息的HttpOnly属性。
进一步地,所述客户身份信息包括:客户名称、身份证号、邮箱地址、手机号码、银行卡号中的一种或是多种。
进一步地,所述客户敏感信息包括:账号密码及CVV码。
本公开的第二个方面提供了一种应用安全自动化检测系统,包括:监控模块,用于根据预置的监听范围,对用户操作行为进行监听并记录,生成相应的请求报文及响应报文;安全检测模块,用于根据预置的第一检测规则,对所述响应报文进行信息安全检测,得到安全检测结果;自动化检测模块,用于对所述请求报文按照预置攻击规则对所述用户操作行为进行篡改后并重新发送请求,根据预置的第二检测规则对修改后的请求所生成的响应报文进行静态安全扫描,得到自动化检测结果。
进一步地,该系统还包括:报告生成模块,用于根据所述自动化检测结果生成自动化检测报告;其中,所述自动化检测报告至少包括:请求报文、响应报文、篡改后的请求报文、篡改后的响应报文及请求报文与篡改后的请求报文的差异分析结果。
本公开的第三个方面提供了一种电子设备,包括:存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,实现本公开的第一个方面提供的应用安全自动化检测方法。
本公开的第四个方面提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现本公开的第一个方面提供的应用安全自动化检测方法。
本公开提供的一种应用安全自动化检测方法、系统、电子设备及存储介质,通过预置的监听范围,对用户操作行为进行监听并记录的请求报文及响应报文进行自动信息安全检测及自动化异常检测,有效避免了安全测试机器扫描差错率高及安全测试机器扫描人工介入过多的问题,提高了安全测试纯人工的效率,改善了安全测试机器扫描快速大量发送测试请求对服务器带来的性能影响,所导致的同一时间段人工测试的效率问题(如服务器响应慢)。
附图说明
为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:
图1示意性示出了根据本公开实施例的应用安全自动化检测方法的应用场景;
图2示意性示出了根据本公开一实施例的应用安全自动化检测方法的流程图;
图3示意性示出了根据本公开一实施例的信息安全检测的流程图;
图4示意性示出了根据本公开另一实施例的应用安全自动化检测方法的流程图;
图5示意性示出了根据本公开一实施例的应用安全自动化检测方法的流程图;
图6示意性示出了根据本公开一实施例的应用安全自动化检测系统的方框图;
图7示意性示出了根据本公开一实施例的安全检测模块模块的方框图;
图8示意性示出了根据本公开另一实施例的应用安全自动化检测系统的方框图;
图9示意性示出了根据本公开一实施例的适于实现上文描述的方法的电子设备方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读存储介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。
本公开的实施例提供了一种应用安全自动化检测方法、系统、电子设备及存储介质,通过预置的监听范围,对用户操作行为进行监听并记录的请求报文及响应报文进行自动信息安全检测及自动化异常检测,有效避免了安全测试机器扫描差错率高及安全测试机器扫描人工介入过多的问题,提高了安全测试纯人工的效率,改善了安全测试机器扫描快速大量发送测试请求对服务器带来的性能影响,所导致的同一时间段人工测试的效率问题(如服务器响应慢)。
图1示意性示出了根据本公开实施例的可以应用于应用安全自动化检测方法的示例性系统架构100。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的系统架构100可以包括终端设备101、网络102和服务器103。网络102用以在终端设备101和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户(如软件测试工程师)可以使用终端设备101通过网络102与服务器103交互,以接收或发送消息等。终端设备101上可以安装有各种通讯客户端应用,例如各软件编程系统、测试工具、网页浏览器应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备101可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器103可以是提供各种服务的服务器,例如对用户利用终端设备101所按照的应用程序提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等进行分析处理,并将处理结果(例如根据用户操作请求生成相应的请求报文、响应报文、信息或数据等)反馈给终端设备。
需要说明的是,本公开实施例所提供的应用安全自动化检测方法一般可以由服务器103执行。相应地,本公开实施例所提供的应用安全自动化检测系统一般可以部署于服务器103中。本公开实施例所提供的应用安全自动化检测方法也可以由不同于服务器103且能够与终端设备101和/或服务器103通信的服务器或服务器集群执行。相应地,本公开实施例所提供的应用安全自动化检测系统也可以设置于不同于服务器103且能够与终端设备101和/或服务器103通信的服务器或服务器集群中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图2示意性示出了根据本公开实施例的应用安全自动化检测方法的流程图。
如图2所示,该应用安全自动化检测方法包括:
在操作S201,根据预置的监听范围,对用户操作行为进行监听并记录,生成相应的请求报文及响应报文。
本公开实施例中,用户可以指的是软件测试工程师,用户操作行为可以是软件测试工程师对网页或软件系统等操作的行为,预置的监听范围可以为测试工程师访问网页或软件系统的网页统一资源定位符(URL)的范围,例如预置的监听范围可以设置为http://www.待测试网站.com/AA.1b、http://www.待测试网站.com/AA.2b、http://www.待测试网站.com/AA.3b、……。需说明的是,该预置的监听范围仅为示例性的说明,并不构成对本公开监听范围的URL范围的限制。
在进行对用户操作行为进行监听前,用户可根据预置参数规则进行未设置或需修改替换参数进行新增或修改参数,该参数包括但不仅限于用户名、密码、手机号、卡号等信息,这些参数可用于后续信息安全检测中的判断依据,以及进行自动化检测时进行用户操作行为篡改的对象。该预置参数规则可以包括两两为一组的数据,即其中一组数据为软件测试工程师当天进行操作行为时使用的数据,另一组数据为其对应的对用户操作行为进行篡改后的数据,如下表1所示,A组数据为软件测试工程师当天进行操作行为时使用的数据,B组数据为A组数据对应的对用户操作行为进行篡改后的数据,可根据参数控制提供的预设内容进行有效替换,形成有效的篡改类型安全测试。
表1用户操作行为数据与篡改后数据的对应关系
项 | A组数据 | B组数据 |
姓名 | 张三 | 王五 |
密码 | Password | Wangwu2333 |
性别 | 男 | 女 |
手机号 | 13312345678 | 13487654321 |
邮箱 | 123456789@qq.com | wangwu2333@sina.cn |
所在地 | 北京 | 石家庄 |
需说明的是,表1中的数据仅为示例性的说明,其并不构成对本公开中用户操作行为数据的限定。
对用户操作行为进行监听可以根据实际应用需求进行分时段监控,即可以在软件测试工程师早上九点上班前开始对其操作行为进行监控,直至下午五点下班或中午12点或任意时间段停止对用户操作行为的监控,本公开对用户操作行为的监听时间段不做限定。
在监听过程中,软件测试工程师可根据需求随时修改监听范围、参数替换规则等,对用户操作行为进行监听后,随着用户对网页或软件系统进行行为操作,实时监听该用户进行的操作行为,并生成相应的请求报文及响应报文,生成的记录还可以至少包括:请求报文生成时间、响应报文生成时间、相应的页面截图等,软件测试工程师可以根据相应的页面截图及生成时间准确的定位安全隐患存在的网页位置及存在的安全隐患问题。
在操作S202,根据预置的第一检测规则,对所述响应报文进行信息安全检测,得到安全检测结果。
根据本公开的实施例,根据预置的第一检测规则,对所述响应报文中的报文头安全属性及客户敏感信息进行信息安全检测,得到安全检测结果。
预置的第一检测规则包括但不仅限于对响应报文中的报文头HttpOnly属性判断规则、X-Frame-Options属性的判断规则及响应报文中的客户敏感信息的判断规则等。
具体地,对响应报文中的报文头安全属性进行信息安全检测包括:判断所述响应报文中的报文头HttpOnly属性是否设置为True,和/或X-Frame-Options是否设置为SAMEORIGIN,若是,则不存在安全隐患;否则,存在安全隐患。其中,报文头HttpOnly属性为客户身份信息的HttpOnly属性,表示防止程序直接获取Cookie,如果设置为True,通过JS等将无法读取到Cookie,能有效的防止XSS攻击,该Cookie上存储了用户信息。X-Frame-Options设置了SAMEORIGIN属性,表示该页面可以在相同域名页面的frame中展示,网页使用此功能,来确保网页上的内容没有被嵌套到别的网页中去,从而可避免点击劫持(clickjacking)的攻击。
本公开的实施例中,客户指的是银行各业务系统的业务客户,如各类银行卡的客户,储蓄卡、信用卡等的客户等等。
需说明的是,本公开的实施例中,信息安全检测包括但不仅限于报文头HttpOnly属性、X-Frame-Options属性设置情况检测,在其他应用场景下,其也可以为其他信息属性的安全监测,本公开对此不做限制。
如图3所示,对响应报文中的客户敏感信息进行信息安全检测包括:
在操作S301,对该响应报文进行关键词检索,得到客户敏感信息;
在操作S302,判断客户敏感信息是否进行了脱敏或加密处理,若是,则不存在安全隐患,否则,存在安全隐患。
通过上述预置的第一检测规则,对响应报文中的报文头安全属性及客户敏感信息进行信息安全检测,得到的安全检测结果包括该响应报文中是否存在安全隐患的分析结果。
本公开的实施例中,用户操作行为包括用户根据应用页面提示输入的客户参数信息,其中,客户参数信息包括客户身份信息或客户敏感信息。具体地,客户身份信息包括:客户名称、身份证号、邮箱地址、手机号码、银行卡号中的一种或是多种。客户敏感信息包括:账号密码及CVV码等。
具体地,判断客户敏感信息是否进行了脱敏或加密处理具体包括:判断用户姓名、固定电话号、手机号、邮箱、地址等是否明文显示,其需部分位数屏蔽,如:客户名称“张三”应显示为“*三”;而客户账号密码、CVV码则需加密传输;对于其他信息则无需屏蔽,如表1中的客户性别、客户所在地等内容可以全部明文显示。若客户敏感信息中出现明文,则存在安全隐患,若密码、CVV码没进行加密传输,则存在安全隐患,并该安全隐患生成相应的安全隐患的分析结果。
需说明的是,参数控制提供针对自动化检测预置规则的例外,设置后则不再按此要求对应用进行扫描,如某些内部系统要求不对系统内用户信息进行部分位数屏蔽,则客户姓名“张三”展示为“张三”不再是安全问题。各参数的设置及判断规则并不仅限于上述示例说明,在实际应用过程中可做相应的调整。
在操作S203,对所述请求报文按照预置攻击规则对所述用户操作行为进行篡改后并重新发送请求,根据预置的第二检测规则对修改后的请求所生成的响应报文进行异常检测,得到自动化检测结果。
根据本公开的实施例,根据预置的第二检测规则对修改后的请求所生成的响应报文进行异常检测包括:根据预置的第二检测规则,对修改后的请求所生成的响应报文进行异常检测,判断该对修改后的请求所生成的响应报文中是否出现篡改后的请求中的客户信息,若出现,则存在攻击安全隐患,否则,不存在攻击安全隐患;其中,所述自动化检测结果包括是否存在攻击安全隐患的分析结果。
具体地,根据本公开内置的攻击向量和用户操作行为控制参数对软件测试工程师测试过程中生成的请求报文进行部分参数篡改后并重新发送请求,再根据预置的第二检测规则对修改后的请求所生成的响应报文进行异常检测,判断其是否存在攻击安全隐患,即判断该对修改后的请求所生成的响应报文中是否出现篡改后的请求中的客户信息,若出现,则存在攻击安全隐患,否则,不存在攻击安全隐患。以表1中的数据为例,对A组数据中的客户姓名、手机、邮箱、卡号等客户信息篡改为B组数据中的客户信息,然后重新发送用户请求,对其生成的响应报文根据第二检测规则进行异常检测,若其生成的响应报文中出现了B组数据中的客户账户信息,则判断为存在攻击安全隐患,否则,不存在。
其中,第二检测规则可根据预先设置的用户操作行为数据与其对应的篡改数据的对应关系进行设定,主要用于判断篡改后的请求所生成的响应数据中是否包含篡改操作行为后存在的数据,若存在,则存在攻击安全隐患。该攻击安全隐患可以为开发功能未实现导致的缺陷隐患或应用页面上存在恶意攻击行为,当输入篡改操作时也可得到对应的响应数据。
本公开的实施例中,对用户操作行为参数进行篡改,还可以为在请求参数中若替换为一组结构相似的恒真断言或恒假断言,若其对应生成的响应报文不一致,则存在攻击安全隐患;或是请求参数替换为包含可执行脚本后,响应报文中如出现该脚本,则存在攻击安全隐患(如XSS攻击等)。其中,恒真断言如1=1、2>1即为恒真断言,SQL注入为数据库语句拼接过程产生的漏洞,此处拼接的恒真断言则如and 1=1、and2>1。恒假断言:如1>1、2=1即为恒假断言,SQL注入为数据库语句拼接过程产生的漏洞,此处拼接的恒假断言则如and 1>1、and 2=1。
如图4所示,对所述请求报文按照预置攻击规则对所述用户操作行为进行篡改后并重新发送请求,根据预置的第二检测规则对修改后的请求所生成的响应报文进行异常检测,得到自动化检测结果之后,该方法还包括:
S204,根据安全检测结果和自动化检测结果生成自动化检测报告;其中,所述自动化检测报告至少包括:请求报文、响应报文、篡改后的请求报文、篡改后的响应报文及请求报文与篡改后的请求报文的差异分析结果。
本公开实施例中,根据生成的安全检测结果和自动化检测结果生成自动化检测报告(即漏洞分析报告),该报告中每个存在的隐患分析均对应的提供请求报文、响应报文、篡改后的请求报文、篡改后生成的响应报文、对应的页面截图,并配有请求报文与篡改后的请求报文的差异及差异分析结果。该自动化检测报告可在应用中进行查看或下载后保存到本地数据进行查阅。
图5示意性示出了根据本公开一实施例的应用安全自动化检测方法的流程图。
如图5所示,根据本公开提供的应用安全自动化检测方法,软件测试工程师可先设置监听URL范围,该URL范围可以为某一待检测网站(如www.待测试网站.com)域名下的所有链接对应的URL或部分子范围下对应的URL,然后根据参数修改需求对用户操作行为需输入的参数进行设置包括新增或修改等,该参数用于后续信息安全检测中的判断依据,以及进行自动化检测时进行用户操作行为篡改的对象。根据设置的监听URL范围,对该范围下的用户操作行为进行监听并记录,生成相应的请求报文、响应报文、相应的页面截图等。
对该响应报文进行信息安全检测,包括但不仅限于对响应报文中的报文头HttpOnly属性判断规则、X-Frame-Options属性的判断规则及响应报文中的客户敏感信息的判断规则等,例如:响应报文中的报文头HttpOnly属性是否设置为True,和/或X-Frame-Options是否设置为SAMEORIGIN等,根据这些属性设置的结果输出对应的信息安全检测结果。
对该请求报文按照预置攻击规则对所述用户操作行为进行篡改后并重新发送请求,根据预置的第二检测规则对修改后的请求所生成的响应报文进行异常检测,如检测该修改后的响应报文中是否出现修改后的请求报文中的客户信息,若出现,则存在攻击安全隐患,若未出现,这不存在攻击安全隐患。如表1中的示例所示,将原请求报文中的客户张三的信息(即A组数据)修改后王五的信息(即B组数据)后重新发送请求,若修改后的请求报文所对应生成的响应报文中出现了该客户王五的个人信息,则其对应的操作网页存在攻击安全隐患是,否则,不存在,根据该检测结果生成相应的自动化检测结果。
根据安全检测结果及自动化检测结果生成自动化检测报告,该报告包括但不仅限于每个存在的隐患分析均对应的提供请求报文、响应报文、篡改后的请求报文、篡改后生成的响应报文、对应的页面截图,并配有请求报文与篡改后的请求报文的差异及差异分析结果。软件测试工程师可根据该自动化检测报告追溯问题报文中所对应的页面功能,直接对存在的信息安全隐患进行定位,然后反馈给相关人员进行安全问题排查及优化,以使该应用系统或软件APP达到信息安全要求。
本公开实施例中,对最终生成的自动化检测报告格式不作限定,其可以为可保存于存储设备上的任何格式的文件或在应用网页上可直接查阅。
需说明的是,应用安全监测包括但不仅限于上述实施例中所示的否存在SQL注入、是否存在XSS攻击(指是否存在跨站脚本漏洞),如注入攻击检测还可以包括:SSI注入、Ldap注入,Xpath注入等漏洞;还可以包括网页挂马检测Web网页是否被黑客或恶意攻击者非法植入了木马程序,源代码泄露检测、数据库泄露检测等等。另外,客户身份信息分类也可以根据实际应用安全需求而定,其包括的客户身份信息及客户敏感信息分别包括的内容包括但不仅限于上述实施例所示。
图6示意性示出了根据本公开一实施例的应用安全自动化检测系统的方框图。
如图6所示,该应用安全自动化检测系统600包括:监控模块610、安全检测模块620、自动化检测模块630。
监控模块610,用于根据预置的监听范围,对用户操作行为进行监听并记录,生成相应的请求报文及响应报文。根据本公开的实施例,该监控模块610例如可以用于执行上文参考图2所描述的S201步骤,在此不再赘述。
安全检测模块620,用于根据预置的第一检测规则,对所述响应报文进行信息安全检测,得到安全检测结果。根据本公开的实施例,该安全检测模块620例如可以用于执行上文参考图2所描述的S202步骤,在此不再赘述。
自动化检测模块630,用于对所述请求报文按照预置攻击规则对所述用户操作行为进行篡改后并重新发送请求,根据预置的第二检测规则对修改后的请求所生成的响应报文进行静态安全扫描,得到自动化检测结果。根据本公开的实施例,该自动化检测模块630例如可以用于执行上文参考图2所描述的S203步骤,在此不再赘述。
如图7所示,该安全检测模块620包括:关键词检索模块6201及信息安全检测模块6202。
关键词检索模块6201,用于对所述响应报文进行关键词检索,得到客户敏感信息。根据本公开的实施例,该关键词检索模块6201例如可以用于执行上文参考图3所描述的S301步骤,在此不再赘述。
信息安全检测模块6202,用于判断所述客户敏感信息是否进行了脱敏或加密处理,若是,则不存在安全隐患,否则,存在安全隐患。根据本公开的实施例,该信息安全检测模块6202例如可以用于执行上文参考图3所描述的S302步骤,在此不再赘述。
如图8所示,该应用安全自动化检测系统600还包括:
报告生成模块640,用于根据所述自动化检测结果生成自动化检测报告;其中,所述自动化检测报告至少包括:请求报文、响应报文、篡改后的请求报文、篡改后的响应报文及请求报文与篡改后的请求报文的差异分析结果。根据本公开的实施例,该报告生成模块640例如可以用于执行上文参考图4所描述的S204步骤,在此不再赘述。
本公开提供的一种应用安全自动化检测方法、系统,通过预置的监听范围,对用户操作行为进行监听并记录的请求报文及响应报文进行自动信息安全检测及自动化异常检测,有效避免了安全测试机器扫描差错率高及安全测试机器扫描人工介入过多的问题,提高了安全测试纯人工的效率,改善了安全测试机器扫描快速大量发送测试请求对服务器带来的性能影响,所导致的同一时间段人工测试的效率问题,如服务器响应慢。
需说明的是,根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,监控模块610、安全检测模块620、自动化检测模块630及报告生成模块640中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,监控模块610、安全检测模块620、自动化检测模块630及报告生成模块640中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,监控模块610、安全检测模块620、自动化检测模块630及报告生成模块640中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
本公开提供的一种应用安全自动化检测方法及系统,可用于金融领域或其他领域,需说明的是,本公开提供的一种应用安全自动化检测方法及系统可用于金融领域,例如金融领域中银行各业务系统的信息安全自动化检测,也可用于除金融领域之外的任意领域,本公开提供的一种一种应用安全自动化检测方法及系统的应用领域不作限定。
图9示意性示出了根据本公开实施例的适于实现上文描述的方法的电子设备的方框图。图9示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图9所示,本实施例中所描述的电子设备900,包括:处理器901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储部分908加载到随机访问存储器(RAM)903中的程序而执行各种适当的动作和处理。处理器901例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器901还可以包括用于缓存用途的板载存储器。处理器901可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 903中,存储有电子设备900操作所需的各种程序和数据。处理器901、ROM902以及RAM 903通过总线904彼此相连。处理器901通过执行ROM 902和/或RAM 903中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM902和RAM 903以外的一个或多个存储器中。处理器901也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备900还可以包括输入/输出(I/O)接口905,输入/输出(I/O)接口905也连接至总线904。电子设备900还可以包括连接至I/O接口905的以下部件中的一项或多项:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被处理器901执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的应用安全自动化检测方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 902和/或RAM 903和/或ROM 902和RAM 903以外的一个或多个存储器。
需要说明的是,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。
Claims (15)
1.一种应用安全自动化检测方法,其特征在于,包括:
根据预置的监听范围,对用户操作行为进行监听并记录,生成相应的请求报文及响应报文;
根据预置的第一检测规则,对所述响应报文进行信息安全检测,得到安全检测结果;
对所述请求报文按照预置攻击规则对所述用户操作行为进行篡改后并重新发送请求,根据预置的第二检测规则对修改后的请求所生成的响应报文进行异常检测,得到自动化检测结果。
2.根据权利要求1所述的应用安全自动化检测方法,其特征在于,所述根据预置的第一检测规则,对所述响应报文进行信息安全检测,得到安全检测结果包括:
根据预置的第一检测规则,对所述响应报文中的报文头安全属性及客户敏感信息进行信息安全检测,得到安全检测结果。
3.根据权利要求2所述的应用安全自动化检测方法,其特征在于,所述对所述响应报文中的报文头安全属性进行信息安全检测包括:
判断所述响应报文中的报文头HttpOnly属性是否设置为True,和/或X-Frame-Options是否设置为SAMEORIGIN,若是,则不存在安全隐患;否则,存在安全隐患。
4.根据权利要求2所述的应用安全自动化检测方法,其特征在于,所述对所述响应报文中的客户敏感信息进行信息安全检测包括:
对所述响应报文进行关键词检索,得到客户敏感信息;
判断所述客户敏感信息是否进行了脱敏或加密处理,若是,则不存在安全隐患,否则,存在安全隐患。
5.根据权利要求3或4所述的应用安全自动化检测方法,其特征在于,所述安全检测结果包括所述响应报文中是否存在安全隐患的分析结果。
6.根据权利要求2所述的应用安全自动化检测方法,其特征在于,所述根据预置的第二检测规则对修改后的请求所生成的响应报文进行异常检测包括:
根据预置的第二检测规则,对修改后的请求所生成的响应报文进行异常检测,判断该对修改后的请求所生成的响应报文中是否出现篡改后的请求中的客户信息,若出现,则存在攻击安全隐患,否则,不存在攻击安全隐患;其中,所述自动化检测结果包括是否存在攻击安全隐患的分析结果。
7.根据权利要求1所述的应用安全自动化检测方法,其特征在于,该方法还包括:
根据所述安全检测结果和所述自动化检测结果生成自动化检测报告;其中,所述自动化检测报告至少包括:请求报文、响应报文、篡改后的请求报文、篡改后的响应报文及请求报文与篡改后的请求报文的差异分析结果。
8.根据权利要求3所述的应用安全自动化检测方法,其特征在于,所述用户操作行为包括用户根据应用页面提示输入的客户参数信息,其中,所述客户参数信息包括客户身份信息或客户敏感信息。
9.根据权利要求8所述的应用安全自动化检测方法,其特征在于,所述报文头HttpOnly属性为所述客户身份信息的HttpOnly属性。
10.根据权利要求8所述的应用安全自动化检测方法,其特征在于,所述客户身份信息包括:客户名称、身份证号、邮箱地址、手机号码、银行卡号中的一种或是多种。
11.根据权利要求3所述的应用安全自动化检测方法,其特征在于,所述客户敏感信息包括:账号密码及CVV码。
12.一种应用安全自动化检测系统,其特征在于,包括:
监控模块,用于根据预置的监听范围,对用户操作行为进行监听并记录,生成相应的请求报文及响应报文;
安全检测模块,用于根据预置的第一检测规则,对所述响应报文进行信息安全检测,得到安全检测结果;
自动化检测模块,用于对所述请求报文按照预置攻击规则对所述用户操作行为进行篡改后并重新发送请求,根据预置的第二检测规则对修改后的请求所生成的响应报文进行静态安全扫描,得到自动化检测结果。
13.根据权利要求12所述的应用安全自动化检测系统,其特征在于,该系统还包括:
报告生成模块,用于根据所述自动化检测结果生成自动化检测报告;其中,所述自动化检测报告至少包括:请求报文、响应报文、篡改后的请求报文、篡改后的响应报文及请求报文与篡改后的请求报文的差异分析结果。
14.一种电子设备,包括:存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现如权利要求1至11中任一项所述的应用安全自动化检测生成方法。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1至11中任一项所述的应用安全自动化检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110450856.9A CN113162937A (zh) | 2021-04-25 | 2021-04-25 | 应用安全自动化检测方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110450856.9A CN113162937A (zh) | 2021-04-25 | 2021-04-25 | 应用安全自动化检测方法、系统、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113162937A true CN113162937A (zh) | 2021-07-23 |
Family
ID=76870541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110450856.9A Pending CN113162937A (zh) | 2021-04-25 | 2021-04-25 | 应用安全自动化检测方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113162937A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113779443A (zh) * | 2021-09-26 | 2021-12-10 | 杭州默安科技有限公司 | 一种漏洞前端功能点定位方法和系统 |
CN115277476A (zh) * | 2022-07-24 | 2022-11-01 | 杭州迪普科技股份有限公司 | 入侵防御设备自动化测试方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160381061A1 (en) * | 2015-06-28 | 2016-12-29 | Check Point Software Technologies Ltd. | Proxy for mitigation of attacks exploiting misconfigured or compromised web servers |
CN106790189A (zh) * | 2016-12-30 | 2017-05-31 | 杭州迪普科技股份有限公司 | 一种基于响应报文的入侵检测方法和装置 |
CN110278207A (zh) * | 2019-06-21 | 2019-09-24 | 深圳前海微众银行股份有限公司 | 一种点击劫持漏洞检测方法、装置及计算机设备 |
CN110414242A (zh) * | 2019-08-02 | 2019-11-05 | 中国工商银行股份有限公司 | 用于检测业务逻辑漏洞的方法、装置、设备及介质 |
CN111914262A (zh) * | 2020-08-12 | 2020-11-10 | 中国工商银行股份有限公司 | 测试方法、装置、系统、电子设备及存储介质 |
-
2021
- 2021-04-25 CN CN202110450856.9A patent/CN113162937A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160381061A1 (en) * | 2015-06-28 | 2016-12-29 | Check Point Software Technologies Ltd. | Proxy for mitigation of attacks exploiting misconfigured or compromised web servers |
CN106790189A (zh) * | 2016-12-30 | 2017-05-31 | 杭州迪普科技股份有限公司 | 一种基于响应报文的入侵检测方法和装置 |
CN110278207A (zh) * | 2019-06-21 | 2019-09-24 | 深圳前海微众银行股份有限公司 | 一种点击劫持漏洞检测方法、装置及计算机设备 |
CN110414242A (zh) * | 2019-08-02 | 2019-11-05 | 中国工商银行股份有限公司 | 用于检测业务逻辑漏洞的方法、装置、设备及介质 |
CN111914262A (zh) * | 2020-08-12 | 2020-11-10 | 中国工商银行股份有限公司 | 测试方法、装置、系统、电子设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113779443A (zh) * | 2021-09-26 | 2021-12-10 | 杭州默安科技有限公司 | 一种漏洞前端功能点定位方法和系统 |
CN115277476A (zh) * | 2022-07-24 | 2022-11-01 | 杭州迪普科技股份有限公司 | 入侵防御设备自动化测试方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11593492B2 (en) | Assessment and analysis of software security flaws | |
US10521612B2 (en) | Hybrid on-premises/software-as-service applications | |
US10432662B2 (en) | Method and system for blocking malicious third party site tagging | |
US11861006B2 (en) | High-confidence malware severity classification of reference file set | |
US9503502B1 (en) | Feedback mechanisms providing contextual information | |
US9032066B1 (en) | Virtual sandboxing for supplemental content | |
US10795991B1 (en) | Enterprise search | |
US20120072968A1 (en) | Assessment and analysis of software security flaws in virtual machines | |
CN111914262A (zh) | 测试方法、装置、系统、电子设备及存储介质 | |
US20100281248A1 (en) | Assessment and analysis of software security flaws | |
US8621613B1 (en) | Detecting malware in content items | |
US10491629B2 (en) | Detecting sensitive data sent from client device to third-party | |
EP2126772A2 (en) | Assessment and analysis of software security flaws | |
US20190222587A1 (en) | System and method for detection of attacks in a computer network using deception elements | |
US11265342B2 (en) | Rest api scanning for security testing | |
US11444970B2 (en) | Dynamic security test system | |
CN114024764A (zh) | 数据库异常访问的监控方法、监控系统、设备和存储介质 | |
US11595436B2 (en) | Rule-based dynamic security test system | |
US10129278B2 (en) | Detecting malware in content items | |
CN113162937A (zh) | 应用安全自动化检测方法、系统、电子设备及存储介质 | |
CN113362173A (zh) | 防重机制验证方法、验证系统、电子设备及存储介质 | |
Cvitić et al. | Defining cross-site scripting attack resilience guidelines based on BeEF framework simulation | |
CN113114681B (zh) | 测试报文处理方法、装置、计算机系统及可读存储介质 | |
CN111241547A (zh) | 一种越权漏洞的检测方法、装置及系统 | |
CN114490264A (zh) | 应用系统的文件监控方法、装置、电子设备及存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210723 |