CN109743303B - 应用保护方法、装置、系统和存储介质 - Google Patents
应用保护方法、装置、系统和存储介质 Download PDFInfo
- Publication number
- CN109743303B CN109743303B CN201811591568.XA CN201811591568A CN109743303B CN 109743303 B CN109743303 B CN 109743303B CN 201811591568 A CN201811591568 A CN 201811591568A CN 109743303 B CN109743303 B CN 109743303B
- Authority
- CN
- China
- Prior art keywords
- access request
- client
- access
- service logic
- application protection
- 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
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种应用保护方法、装置、系统和存储介质。该方法包括:对于经过负载均衡器进行负载分配后的访问请求,通过调用访问请求所属的客户端的接口,验证访问请求所属的客户端是否为合法客户端;客户端为合法客户端时,判定访问请求的访问内容所属业务逻辑是否正确;访问请求的访问内容所属业务逻辑正确时,发送访问请求至负载分配后的访问请求对应的应用服务器;对于访问请求对应的访问内容,根据所属业务逻辑封装访问内容,发送封装后的访问内容至负载均衡器,以保护客户端对应用服务器的访问。根据本发明实施例提供的方法,可以应对自动化工具的攻击,降低应用安全风险,提高应用安全防护级别。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及应用保护方法、装置、系统和存储介质。
背景技术
随着运营商业务系统互联网化的快速发展,大量来自互联网新兴的安全风险也给运营商带来极大的挑战。以网上营业厅、手机营业厅、网上商城等业务应用为例,提供业务办理便利的同时,也给攻击者窥探漏洞、挖掘攻击入口提供了机会。客户信息成为攻击者获取利益的诱人筹码和目标,这些客户信息的泄漏对于电信欺诈风险在某种程度上也有作用,甚至引发了社会性问题和事件。
现有应用安全防护技术,无论是图形验证码、短信验证码,都发现有绕过验证码的自动化工具出现。通过自动化攻击工具进行漏洞利用、模拟合法业务操作、绕过验证码等,传统的应用安全防护技术可以被轻易绕过,应用安全防护效果差。
发明内容
本发明实施例提供一种应用保护方法、装置、系统和存储介质,可以应对自动化工具的攻击,降低应用安全风险,提高应用安全防护级别。
根据本发明实施例的一方面,提供一种应用保护方法,包括:
对于经过负载均衡器进行负载分配后的访问请求,通过调用所述访问请求所属的客户端的接口,验证所述访问请求所属的客户端是否为合法客户端;
客户端为合法客户端时,判定访问请求的访问内容所属业务逻辑是否正确;
访问请求的访问内容所属业务逻辑正确时,发送访问请求至负载分配后的访问请求对应的应用服务器;
对于访问请求对应的访问内容,根据所属业务逻辑封装访问内容,发送封装后的访问内容至负载均衡器,以保护客户端对应用服务器的访问。
根据本发明实施例的另一方面,提供一种应用保护装置,包括:
客户端验证模块,用于对于经过负载均衡器进行负载分配后的访问请求,通过调用访问请求所属的客户端的接口,验证访问请求所属的客户端是否为合法客户端;
业务逻辑验证模块,用于客户端为合法客户端时,判定访问请求的访问内容所属业务逻辑是否正确;
访问请求发送模块,用于访问请求的访问内容所属业务逻辑正确时,发送访问请求至负载分配后的访问请求对应的应用服务器;
访问内容发送模块,用于对于访问请求对应的访问内容,根据所属业务逻辑封装访问内容,发送封装后的访问内容至负载均衡器,以保护客户端对应用服务器的访问。
根据本发明实施例的再一方面,提供一种应用保护系统,包括:存储器和处理器;该存储器用于存储程序;该处理器用于读取存储器中存储的可执行程序代码以执行上述的应用保护方法。
根据本发明实施例的又一方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当指令在计算机上运行时,使得计算机执行上述各方面的应用保护方法。
根据本发明实施例的应用保护方法、装置、系统和存储介质,在将客户端的应用访问请求发送到应用服务器之前,可以调用该客户端的接口,随机检查客户端特性,提高应用安全防护级别,并通过根据业务逻辑为客户端的应用访问请求添加动态校验因子,确保业务访问逻辑的正确性,从而降低应用安全风险,对来自客户端的自动化工具的攻击进行主动防御。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是示出根据本发明实施例的应用保护方法的流程图;
图2是示出根据本发明示例性实施例的应用保护方法的处理流程图;
图3是示出根据本发明实施例的应用保护系统验证客户端合法性的具体流程;
图4是示出根据本发明实施例的对业务逻辑进行校验的时序图;
图5是示出根据本发明一实施例提供的应用保护装置的结构示意图;
图6是示出可以实现根据本发明实施例的应用保护方法和装置的计算设备的示例性硬件架构的结构图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
现有技术中针对自动化攻击工具,例如可以在基础架构中部署基于特征规则的防火墙、应用防火墙(Web Application Firewall,WAF)、IDS (Intrusion Detection System入侵检测系统)/IPS(Intrusion Prevention System入侵防御系统)等设备,针对网络层、应用层、对非法请求予以实时阻断,从而对各类应用进行防护。但是,自动化工具的特征码越来越难以通过分析来发现,传统基于特征规则的防火墙、WAF、IDS/IPS等设备可以被轻易绕过。
上述自动化攻击工具从漏洞利用向模拟合法操作转变,由于攻击工具是模拟的合法操作,现有的安全设备无法检测。为了对抗自动化工具,有的应用在登录界面或敏感操作界面加入了验证码功能。新一代的自动工具可以通过内置的光学字符识别(OpticalCharacter Recognition,OCR)模块对验证进行自动识别,对于比较复杂的验证码,还可以集成打码平台接口来验证。
本发明实施例提供一种应用保护方法、装置、系统和存储介质,将安全防护视角放到应用自身上,通过应用自身的处理实现对已知攻击和未知攻击的防护,从而应对自动化工具的攻击,降低应用安全风险,提高应用安全防护级别。
为了更好的理解本发明,下面将结合附图,详细描述根据本发明实施例的应用保护方法、装置、系统和存储介质。应注意,这些实施例并不是用来限制本发明公开的范围。
图1是示出根据本发明实施例的应用保护方法的流程图。如图1所示,本发明实施例中的应用保护方法100包括以下步骤:
步骤S110,对于经过负载均衡器进行负载分配后的访问请求,通过调用访问请求所属的客户端的接口,验证访问请求所属的客户端是否为合法客户端。
步骤S120,客户端为合法客户端时,判定访问请求的访问内容所属业务逻辑是否正确。
步骤S130,访问请求的访问内容所属业务逻辑正确时,发送访问请求至负载分配后的访问请求对应的应用服务器。
步骤S140,对于访问请求对应的访问内容,根据所属业务逻辑封装访问内容,发送封装后的访问内容至负载均衡器,以保护客户端对应用服务器的访问。
在一个实施例中,应用保护系统可以位于负载均衡器和应用服务器之间。作为一个示例,可以将应用保护系统例如动态应用防御系统串联在应用服务器之前。
根据本发明实施例的应用保护方法,通过验证客户端的合法性以及业务访问逻辑的正确性,实现主动动态应用防御,应对来自互联网应用层的自动化攻击,对现有防护手段失效的攻击行为进行防御,降低应用安全风险,实现对用户信息和数据的保护。
在一个实施例中,步骤S110具体可以包括:
步骤S111,客户端的运行环境非指定的自动化工具时,基于客户端的类型,从客户端的指定接口中随机选择预定数量的指标,验证每个指标的指标值是否正确。
在该步骤中,根据客户端的实现形式,客户端类型可以包括浏览器形式的客户端和应用程序形式的客户端。
步骤S112,如果经验证存在指标值不正确的指标,统计指标值不正确的指标的数量;
步骤S113,当客户端的运行环境为指定的自动化工具,或指标值不正确的指标的数量超过不正确指标数量阈值时,判定客户端非合法客户端。
在该实施例中,对通过包括无头浏览器PhantomJS和网页内驱动软件 Web Driver在内的所有流行自动化工具进行检测,检测客户端运行环境,从而针对性的阻止自动化扫描和入侵。
作为一个示例,可以对用户的操作行为进行检测和分析,包括检测鼠标的点击鼠标的移动、触摸屏点击、按键行为等特征,从而更有效地防止自动化工具的扫描和入侵。每次验证都会随机选取客户端接口的检测的项目与数量,共有约16万种组合,以增加应用的不可预测性,提升攻击者或自动化工具假冒合法客户端的难度。
例如,某些自动化工具为了绕过传统安全机制基于IP的访问控制规则,会利用代理服务器不断切换其IP地址,从而假冒合法用户顺利地访问服务器并实施恶意行为;动态验证技术则不会被IP之类的“表象”所欺骗,它可以从“根源”出发直接指向恶意用用户的要害,使攻击者无论如何切换 IP地址也无法隐藏其真实身份。
在一个实施例中,步骤S110具体还可以包括:
步骤S114,收集客户端的指纹特征,客户端的指纹特征与其他客户端的指纹特征相同时,判定客户端与其他客户端均非合法客户端。
在该实施例中,客户端的指纹信息例如可以包括客户端的语言、插件、时区信息等指纹特征中的一项或多项。
在一个实施例中,步骤S110具体还可以包括:
步骤S115,收集来自客户端的用户行为,分析用户行为的特征规律,当用户行为的特征规律符合机器行为标准时,判定客户端非合法客户端。
在上述实施例中,应用保护系统通过检查客户端运行环境、客户端接口、客户端指纹、疑似机器攻击行为等因素,防止恶意终端访问。
在一个实施例中,步骤S120中判定访问请求的访问内容所属业务逻辑是否正确的步骤,具体可以包括:
步骤S121,当访问请求非首次访问,确定在预设业务逻辑处理过程中访问请求对应的访问内容所属业务逻辑的优先级,以及访问请求对应的访问内容所属业务逻辑对应的校验因子。
步骤S122,如果访问请求携带的校验因子,包括优先级高于所属业务逻辑的优先级的所有业务逻辑对应的校验因子,访问请求中携带的校验因子合法,判定访问请求的访问内容所属业务逻辑正确。
在一个实施例中,应用保护方法100还可以包括:
步骤S123,当访问请求非首次访问,且访问请求携带的校验因子不包括优先级高于所属业务逻辑的优先级的所有业务逻辑对应的校验因子,判定访问请求的访问内容所属业务逻辑不正确。或者,
步骤S124,当接收到的访问请求非首次访问,且在预设业务逻辑处理过程中访问请求对应的访问内容所属业务逻辑的优先级最高时,
如果访问请求携带的校验因子不包括访问请求对应的访问内容所属业务逻辑对应的校验因子,判定访问请求的访问内容所属业务逻辑不正确。
在一个实施例中,应用保护方法100,还可以包括:
步骤S125,如果访问请求为首次访问,且访问请求对应的访问内容所属业务逻辑的优先级最高,发送访问请求至负载分配后的访问请求对应的应用服务器。
在一个实施例中,步骤S140中,根据预设的业务逻辑对访问请求对应的访问内容进行封装的步骤,具体可以包括:
当访问请求非首次访问,为访问请求对应的访问内容添加访问请求对应的访问内容所属业务逻辑对应的校验因子。
在本发明实施例中,业务逻辑对应的校验因子,可以是根据数据加密算法计算得到的业务逻辑返回内容的地址的指纹值。
作为一个示例,如果业务逻辑对应的返回内容为一个页面,该业务逻辑对应的校验因子,可以是利用数据加密算法计算得到的,该返回页面的页面地址的指纹值。
在一个实施例中,应用保护方法100,还可以包括:
当验证客户端非合法客户端,或者访问请求的访问内容所属业务逻辑不正确,拒绝访问请求。
在本发明实施例中,基于校验因子的业务逻辑保护方法,确保业务访问逻辑的正确性,有效对抗重访及越权攻击,最终实现主动动态应用防御。
为了更好的理解本发明,下面结合图2,描述根据本发明实施例示例性的应用保护方法。图2示出了根据本发明示例性实施例的应用保护方法的处理流程图。
如图2所示,在一个实施例中,本发明实施例的应用保护方法,具体可以包括:
步骤S21,如图2中的①发起访问请求所示,客户端发起应用访问请求。
步骤S22,如图2中②负载分配所示,访问请求经过地址转换,以及经过负载均衡器利用负载均衡算法,将访问请求分配到相应的应用保护系统。
步骤S23,如图2中③内容请求所示,应用保护系统检查客户端真实性,如果识别客户端自动化攻击工具后,将访问请求发送至负载均衡器。
步骤S24,如图2中④资源请求所示,负载均衡器依照负载均衡算法选择相应的应用服务器资源,向选择的服务器资源发送该访问请求。
步骤S25,如图2中⑤返回内容所示,应用服务器返回访问内容。
步骤S26,如图2中⑥返回内容所示,负载均衡器将返回内容发送至应用防御系统。
步骤S27,如图2中⑦动态封装后返回所示,应用保护系统将访问内容做封装后,返回负载均衡器。
步骤S28,如图2中⑧安全内容返回所示,负载均衡器将封装后的请求内容返回客户端。
通过上述实施例可以看出,本发明实施例的应用保护方法,改变了攻防视角,采取主动防护方法,利用动态应用保护系统,对客户端应用的每一次访问请求进行客户端真实性检查,并将每一次应用服务器的返回内容动态封装后返回客户端应用,对来自互联网应用层的自动化攻击主动进行防御,降低应用安全风险,实现对用户信息和数据的保护。
下面结合图3,描述应用保护系统验证客户端的具体过程。图3示出了根据本发明实施例的应用保护系统验证客户端合法性的具体流程。如图 3所示,应用保护方法300,包括:
步骤S301,接收客户端向应用发起的访问请求。
步骤S302,如果该访问请求是首次访问,返回给用户一个动态验证装置进行信息收集和通信。
步骤S303,动态验证装置执行时,首先判断运行环境是否为预设的已知自动化工具。作为一个示例,预设的自动化工具可以包括主流自动化工具例如爬虫工具Phantom JS、浏览器自动化操作框架Web Driver、Web应用程序自动测试工具Selenium等预设已知的自动化工具。
在该步骤中,如果判断运行环境为预设已知的自动化工具,结束该访问请求对服务器的访问。
步骤S304,如果判断运行环境非预设已知的自动化工具后,服务器对客户端真实性进行检测。
在该步骤中,可以随机抽取客户端指标和数量,发送给用户客户端的动态验证装置将这些信息返回后,服务器根据其客户端类型对这些指标进行判定该客户端是否被自动化工具封装,若存不正确指标超过门限比例,则判定该用户客户端为自动化工具并拒绝访问。
步骤S305,若通过客户端真实性验证,动态验证装置同样会收集客户端的语言、插件、时区信息等指纹特征,并反馈给应用保护系统,验证客户端之间是否存在重复的指纹特征。
在该步骤中,如判定多个IP地址的客户端指纹相同,则认为这些客户端均为自动化工具,并拒绝其访问。
步骤S306,如果该访问请求非首次访问,或者在用户端客户端访问网页期间,动态验证装置同样会收集用户端的用户行为,并将收集的用户行为发送给应用保护系统。
作为一个示例,用户行为例如可以包括鼠标的轨迹、点击频率,点击位置信息,键盘的敲击频率,触摸屏的点击频率、按键行为等。
步骤S307,服务器分析用户行为特征规律,判断该用户行为是否为机器动作。在该步骤中,如果判定客户端为自动化工具,拒绝访问请求。
作为一个示例,机器动作例如可以包括鼠标轨迹为直线,点击按键规律固定等。
步骤S308,如果经客户端检验,该客户端非自动化工具、该客户端为真实客户端、客户端之间不存在重复的指纹特征、并且用户端的用户行为非机器动作,判定该客户端的用户为正常/合法用户,来自该客户端的访问请求可以访问服务。
在本发明实施例中,如果经客户端检验,该客户端为自动化工具、该客户端非真实客户端、客户端之间重复的指纹特征、或者用户端的用户行为为机器动作,判定该客户端的用户为非法用户,访问保护服务器拒绝该客户端的访问请求。
下面通过图4介绍根据本发明实施例的利用业务逻辑进行动态校验因子安全认证方法。图4示出了根据本发明实施例的对业务逻辑进行校验的时序图。如图4所示,对业务逻辑进行校验的步骤具体可以包括:
步骤S401,客户端发起对业务逻辑A的第一次应用访问请求。
步骤S402,对业务逻辑A的第一次应用访问请求经过应用保护系统,不检查校验因子,直接请求应用服务器资源。
步骤S403,应用服务器响应,并返回业务逻辑A对应的访问内容至动态应用防御系统。
步骤S404,应用保护系统在业务逻辑A对应的访问内容中添加一次性动态校验因子A。
步骤S405,客户端发起第二次携带一次性动态校验因子A的应用访问请求。
步骤S406,应用保护系统请求校验模块确定校验因子A合法性。
步骤S407,验证通过后,请求业务逻辑A的内容。
步骤S408,业务逻辑A响应,并返回业务逻辑A对应的访问内容至应用保护系统。
步骤S409,防御系统封装业务逻辑A内容后返回至客户端。
步骤S410,根据业务逻辑访问业务逻辑B,并携带校验因子A请求业务逻辑B的内容。
步骤S411,应用保护系统根据业务逻辑的优先级顺序,确认检验校验因子A。
例如业务逻辑的优先级顺序为业务逻辑A的优先级高于业务逻辑B的优先级,且业务逻辑B的优先级高于业务逻辑C的优先级。
步骤S412,验证校验因子A通过后,请求业务逻辑B的内容。
步骤S413,业务逻辑B响应,并返回业务逻辑B对应的访问内容至应用保护系统。
步骤S414,应用保护系统封装业务逻辑B内容后返回至客户端。
在本发明实施例中,可以在实现动态验证功能的同时,加入一次性的动态校验因子,确保执行过程中业务逻辑的正确性。
作为一个示例,业务逻辑A包括填写信息,业务逻辑B包括确认订单,业务逻辑C包括负责支付,动态校验因子技术将自动获取业务逻辑处理过程的优先级顺序是:业务逻辑A的优先级高于业务逻辑B的优先级,且业务逻辑B的优先级高于业务逻辑C的优先级。也就是说,按照业务逻辑A、业务逻辑B和业务逻辑C的先后顺序进行处理。
在本发明实施例中,可以给每个业务逻辑一个校验因子,即对业务逻辑B的访问请求必须携带有业务逻辑A的校验因子,对业务逻辑C的访问请求必须携带有业务逻辑B逻辑的校验因子。否则,例如没有经过A逻辑,即没有携带业务逻辑A的校验因子,而去直接访问业务逻辑B或者业务逻辑C的访问请求,将会被识别和拒绝。
在本发明实施例中,可以通过串联在应用服务器之前的应用保护系统调用接口随机检查客户端特性和数量,实现动态验证,提高应用安全防护级别,同时基于动态校验因子的业务逻辑保护方法,确保业务访问逻辑的正确性,有效对抗重访及越权攻击,最终实现主动动态应用防御。
本发明实施例的应用保护方法,首先可以通过验证客户端的运行环境监测已知自动化工具,然后通过客户端特性和客户端指纹信息进行监测,并且客户端监测项目和数量随机组合,增加不确定性和识别准确性,客户端访问期间持续监控鼠标、触屏等行为规律,通过特征判定模仿正常用户行为的自动化工具。
并且,可以基于动态应用防御系统的动态安全校验因子安全认证方法,应对日益变化的新兴自动化攻击威胁,特别是模拟合法业务逻辑,造成业务逻辑滥用而获取访问权限,导致进一步用户信息泄露和欺诈的行为,弥补传统手段在此类风险防御上能力的欠缺。
下面结合附图,详细介绍根据本发明实施例的应用保护装置。图5示出了根据本发明一实施例提供的应用保护装置的结构示意图。如图5所示,应用保护装置500包括:
客户端验证模块510,用于对于经过负载均衡器进行负载分配后的访问请求,通过调用访问请求所属的客户端的接口,验证访问请求所属的客户端是否为合法客户端;
业务逻辑验证模块520,用于客户端为合法客户端时,判定访问请求的访问内容所属业务逻辑是否正确;
访问请求发送模块530,用于访问请求的访问内容所属业务逻辑正确时,发送访问请求至负载分配后的访问请求对应的应用服务器;
访问内容发送模块540,用于对于访问请求对应的访问内容,根据所属业务逻辑封装访问内容,发送封装后的访问内容至负载均衡器,以保护客户端对应用服务器的访问。
在一个实施例中,客户端验证模块510可以包括:
指标验证单元,用于客户端的运行环境非指定的自动化工具时,基于客户端的类型,从客户端的指定接口中随机选择预定数量的指标,验证每个指标的指标值是否正确;
验证统计单元,用于如果经验证存在指标值不正确的指标,统计指标值不正确的指标的数量;
验证判定单元,用于当客户端的运行环境为指定的自动化工具,或指标值不正确的指标的数量超过不正确指标数量阈值时,判定客户端非合法客户端。
在一个实施例中,应用保护装置500还可以包括:
指纹判定模块,用于收集客户端的指纹特征,客户端的指纹特征与其他客户端的指纹特征相同时,判定客户端与其他客户端均非合法客户端。
在一个实施例中,应用保护装置500还可以包括:
行为分析模块,用于收集来自客户端的用户行为,分析用户行为的特征规律,当用户行为的特征规律符合机器行为标准时,判定客户端非合法客户端。
在一个实施例中,业务逻辑验证模块520,具体可以包括:
校验信息确定单元,用于业务逻辑当访问请求非首次访问,确定在预设业务逻辑处理过程中访问请求对应的访问内容所属业务逻辑的优先级,以及访问请求对应的访问内容所属业务逻辑对应的校验因子;
第一逻辑校验单元,用于如果访问请求携带的校验因子,包括优先级高于所属业务逻辑的优先级的所有业务逻辑对应的校验因子,访问请求中携带的校验因子合法,判定访问请求的访问内容所属业务逻辑正确。
在一个实施例中,业务逻辑验证模块520,具体还可以包括:
第二逻辑校验单元,用于当访问请求非首次访问,且访问请求携带的校验因子不包括优先级高于所属业务逻辑的优先级的所有业务逻辑对应的校验因子,判定访问请求的访问内容所属业务逻辑不正确;或者,
第三逻辑校验单元,用于当接收到的访问请求非首次访问,且在预设业务逻辑处理过程中访问请求对应的访问内容所属业务逻辑的优先级最高时,
第四逻辑校验单元,用于如果访问请求携带的校验因子不包括访问请求对应的访问内容所属业务逻辑对应的校验因子,判定访问请求的访问内容所属业务逻辑不正确。
在一个实施例中,业务逻辑验证模块520,具体还可以包括:
第五逻辑校验单元,用于如果访问请求为首次访问,且访问请求对应的访问内容所属业务逻辑的优先级最高,发送访问请求至负载分配后的访问请求对应的应用服务器。
在一个实施例中,访问内容发送模块540,具体可以包括:
当访问请求非首次访问,为访问请求对应的访问内容添加访问请求对应的访问内容所属业务逻辑对应的校验因子。
在一个实施例中,应用保护装置500还可以包括:
访问内容拒绝模块,用于当验证客户端非合法客户端,或者访问请求的访问内容所属业务逻辑不正确,拒绝访问请求。
本发明实施例的应用保护装置,改善了现有应用防护手段,变被动防护为主动防护,通过对客户端的应用界面添加动态一次性的校验因子,对自动化工具模拟合法操作的行为进行判定和阻挡;并可以对低频度、多来源的模拟合法操作行为进行识别,弥补传统安全产品防护技术上的空白以创新的技术补充和完善应用安全防护体系和机制,与快速变化和越来越复杂的互联网威胁环境抗衡,迅速扭转攻防局面。从而对现有防护手段失效的攻击行为进行防御,降低应用安全风险,实现对用户信息和数据的保护。
需要明确的是,本发明并不局限于上文实施例中所描述并在图中示出的特定配置和处理。为了描述的方便和简洁,这里省略了对已知方法的详细描述,并且上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图6是示出能够实现根据本发明实施例的应用保护方法和装置的计算设备的示例性硬件架构的结构图。
如图6所示,计算设备600包括输入设备601、输入接口602、中央处理器603、存储器604、输出接口605、以及输出设备606。其中,输入接口602、中央处理器603、存储器604、以及输出接口605通过总线610相互连接,输入设备601和输出设备606分别通过输入接口602和输出接口 605与总线610连接,进而与计算设备600的其他组件连接。
具体地,输入设备601接收来自外部的输入信息,并通过输入接口602 将输入信息传送到中央处理器603;中央处理器603基于存储器604中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器604中,然后通过输出接口605将输出信息传送到输出设备606;输出设备606将输出信息输出到计算设备600的外部供用户使用。
在一个实施例中,图6所示的计算设备600可以被实现为一种应用保护系统,该应用保护系统可以包括:存储器,被配置为存储程序;处理器,被配置为运行存储器中存储的程序,以执行上述实施例描述的应用保护方法。
根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以从网络上被下载和安装,和/或从可拆卸存储介质被安装。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令,当其在计算机上运行时,使得计算机执行上述各个实施例中描述的方法。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线 (例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘)等。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使对应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (12)
1.一种应用保护方法,包括:
对于经过负载均衡器进行负载分配后的访问请求,通过调用所述访问请求所属的客户端的接口,验证所述访问请求所属的客户端是否为合法客户端;
所述客户端为合法客户端时,判定所述访问请求的访问内容所属业务逻辑是否正确;
所述访问请求的访问内容所属业务逻辑正确时,发送所述访问请求至所述负载分配后的访问请求对应的应用服务器;
对于所述访问请求对应的访问内容,根据所述所属业务逻辑封装所述访问内容,发送封装后的访问内容至所述负载均衡器,以保护所述客户端对所述应用服务器的访问;
所述判定所述访问请求的访问内容所属业务逻辑是否正确,包括:
当所述访问请求非首次访问,确定在预设业务逻辑处理过程中所述访问请求对应的访问内容所属业务逻辑的优先级,以及所述访问请求对应的访问内容所属业务逻辑对应的校验因子;
如果所述访问请求携带的校验因子,包括优先级高于所述所属业务逻辑的优先级的所有业务逻辑对应的校验因子,所述访问请求中携带的校验因子合法,判定所述访问请求的访问内容所属业务逻辑正确。
2.根据权利要求1所述的应用保护方法,其中,所述通过调用所述访问请求所属的客户端的接口,验证所述客户端是否为合法客户端,包括:
所述客户端的运行环境非指定的自动化工具时,基于所述客户端的类型,从所述客户端的指定接口中随机选择预定数量的指标,验证每个指标的指标值是否正确;
如果经验证存在指标值不正确的指标,统计所述指标值不正确的指标的数量;
当所述客户端的运行环境为所述指定的自动化工具,或所述指标值不正确的指标的数量超过不正确指标数量阈值时,判定所述客户端非合法客户端。
3.根据权利要求2所述的应用保护方法,其中,所述应用保护方法还包括:
收集所述客户端的指纹特征,所述客户端的指纹特征与其他客户端的指纹特征相同时,判定所述客户端与所述其他客户端均非合法客户端。
4.根据权利要求2所述的应用保护方法,还包括:
收集来自所述客户端的用户行为,分析所述用户行为的特征规律,当所述用户行为的特征规律符合机器行为标准时,判定所述客户端非合法客户端。
5.根据权利要求1所述的应用保护方法,还包括:
当所述访问请求非首次访问,且所述访问请求携带的校验因子不包括优先级高于所述所属业务逻辑的优先级的所有业务逻辑对应的校验因子,判定所述访问请求的访问内容所属业务逻辑不正确;或者,
当接收到的访问请求非首次访问,且在预设业务逻辑处理过程中所述访问请求对应的访问内容所属业务逻辑的优先级最高时,
如果所述访问请求携带的校验因子不包括所述访问请求对应的访问内容所属业务逻辑对应的校验因子,判定所述访问请求的访问内容所属业务逻辑不正确。
6.根据权利要求1所述的应用保护方法,还包括:
如果所述访问请求为首次访问,且所述访问请求对应的访问内容所属业务逻辑的优先级最高,发送所述访问请求至所述负载分配后的访问请求对应的应用服务器。
7.根据权利要求1所述的应用保护方法,其中,所述根据预设的业务逻辑对所述访问请求对应的访问内容进行封装,包括:
当所述访问请求非首次访问,为所述访问请求对应的访问内容添加所述访问请求对应的访问内容所属业务逻辑对应的校验因子。
8.根据权利要求1所述的应用保护方法,还包括:
当验证所述客户端非合法客户端,或者所述访问请求的访问内容所属业务逻辑不正确,拒绝所述访问请求。
9.一种应用保护装置,包括:
客户端验证模块,用于对于经过负载均衡器进行负载分配后的访问请求,通过调用所述访问请求所属的客户端的接口,验证所述访问请求所属的客户端是否为合法客户端;
业务逻辑验证模块,用于所述客户端为合法客户端时,判定所述访问请求的访问内容所属业务逻辑是否正确;
访问请求发送模块,用于所述访问请求的访问内容所属业务逻辑正确时,发送所述访问请求至所述负载分配后的访问请求对应的应用服务器;
访问内容发送模块,用于对于所述访问请求对应的访问内容,根据所述所属业务逻辑封装所述访问内容,发送封装后的访问内容至所述负载均衡器,以保护所述客户端对所述应用服务器的访问;
所述业务逻辑验证模块,具体包括:
校验信息确定单元,用于当所述访问请求非首次访问,确定在预设业务逻辑处理过程中所述访问请求对应的访问内容所属业务逻辑的优先级,以及所述访问请求对应的访问内容所属业务逻辑对应的校验因子;
第一逻辑校验单元,用于如果所述访问请求携带的校验因子,包括优先级高于所述所属业务逻辑的优先级的所有业务逻辑对应的校验因子,所述访问请求中携带的校验因子合法,判定所述访问请求的访问内容所属业务逻辑正确。
10.根据权利要求9所述的应用保护装置,还包括:
指纹判定模块,用于收集所述客户端的指纹特征,所述客户端的指纹特征与其他客户端的指纹特征相同时,判定所述客户端与所述其他客户端均非合法客户端。
11.一种应用保护系统,其特征在于,包括存储器和处理器;
所述存储器用于储存有可执行程序代码;
所述处理器用于读取所述存储器中存储的可执行程序代码以执行权利要求1至8中任一项所述的应用保护方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至8中任一项所述的应用保护方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811591568.XA CN109743303B (zh) | 2018-12-25 | 2018-12-25 | 应用保护方法、装置、系统和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811591568.XA CN109743303B (zh) | 2018-12-25 | 2018-12-25 | 应用保护方法、装置、系统和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109743303A CN109743303A (zh) | 2019-05-10 |
CN109743303B true CN109743303B (zh) | 2021-10-01 |
Family
ID=66359848
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811591568.XA Active CN109743303B (zh) | 2018-12-25 | 2018-12-25 | 应用保护方法、装置、系统和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109743303B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113783919B (zh) * | 2020-11-26 | 2024-05-21 | 北京京东拓先科技有限公司 | 访问请求分流方法、系统、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105491001A (zh) * | 2015-05-14 | 2016-04-13 | 瑞数信息技术(上海)有限公司 | 一种安全通讯方法和装置 |
CN106534224A (zh) * | 2017-01-23 | 2017-03-22 | 余洋 | 智能网络攻击检测方法及装置 |
CN106656959A (zh) * | 2016-09-28 | 2017-05-10 | 腾讯科技(深圳)有限公司 | 访问请求调控方法和装置 |
CN108259441A (zh) * | 2016-12-29 | 2018-07-06 | 中国移动通信集团公司 | 一种防止url访问绕行的方法及装置 |
CN108881184A (zh) * | 2018-05-30 | 2018-11-23 | 努比亚技术有限公司 | 访问请求处理方法、终端、服务器及计算机可读存储介质 |
CN108881368A (zh) * | 2018-04-22 | 2018-11-23 | 平安科技(深圳)有限公司 | 高并发业务请求处理方法、装置、计算机设备和存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104079557A (zh) * | 2014-05-22 | 2014-10-01 | 汉柏科技有限公司 | 一种cc攻击的防护方法及装置 |
US10033702B2 (en) * | 2015-08-05 | 2018-07-24 | Intralinks, Inc. | Systems and methods of secure data exchange |
US9367554B1 (en) * | 2015-09-14 | 2016-06-14 | Atlassian Pty Ltd | Systems and methods for enhancing performance of a clustered source code management system |
-
2018
- 2018-12-25 CN CN201811591568.XA patent/CN109743303B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105491001A (zh) * | 2015-05-14 | 2016-04-13 | 瑞数信息技术(上海)有限公司 | 一种安全通讯方法和装置 |
CN106656959A (zh) * | 2016-09-28 | 2017-05-10 | 腾讯科技(深圳)有限公司 | 访问请求调控方法和装置 |
CN108259441A (zh) * | 2016-12-29 | 2018-07-06 | 中国移动通信集团公司 | 一种防止url访问绕行的方法及装置 |
CN106534224A (zh) * | 2017-01-23 | 2017-03-22 | 余洋 | 智能网络攻击检测方法及装置 |
CN108881368A (zh) * | 2018-04-22 | 2018-11-23 | 平安科技(深圳)有限公司 | 高并发业务请求处理方法、装置、计算机设备和存储介质 |
CN108881184A (zh) * | 2018-05-30 | 2018-11-23 | 努比亚技术有限公司 | 访问请求处理方法、终端、服务器及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
"智能云电视公共安全服务平台建设";王雅哲、徐震、王瑜、晏敏、张妍;《中国科学:信息科学》;20151020;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109743303A (zh) | 2019-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4954979B2 (ja) | 詐欺監視、検出、および階層状ユーザ認証のためのシステムおよび方法 | |
US8819803B1 (en) | Validating association of client devices with authenticated clients | |
CN103593609B (zh) | 一种可信行为识别的方法和装置 | |
US20150121532A1 (en) | Systems and methods for defending against cyber attacks at the software level | |
Campobasso et al. | Impersonation-as-a-service: Characterizing the emerging criminal infrastructure for user impersonation at scale | |
JP6438534B2 (ja) | 安全なオンラインバンキングトランザクションを実行するためのシステム及び方法 | |
CN111786966A (zh) | 浏览网页的方法和装置 | |
EP3750275B1 (en) | Method and apparatus for identity authentication, server and computer readable medium | |
CN113542279A (zh) | 一种网络安全风险评估方法、系统及装置 | |
CN110912855A (zh) | 一种基于渗透性测试用例集的区块链架构安全评估方法及系统 | |
WO2016121348A1 (ja) | マルウェア対策装置、マルウェア対策システム、マルウェア対策方法、及び、マルウェア対策プログラムが格納された記録媒体 | |
CN106685899A (zh) | 用于识别恶意访问的方法和设备 | |
CN116545650B (zh) | 一种网络动态防御方法 | |
EP3172692A1 (en) | Remedial action for release of threat data | |
Djanali et al. | SQL injection detection and prevention system with raspberry Pi honeypot cluster for trapping attacker | |
Durey et al. | FP-Redemption: Studying browser fingerprinting adoption for the sake of web security | |
CN107122664B (zh) | 安全防护方法及装置 | |
Zhang et al. | I'm SPARTACUS, No, I'm SPARTACUS: Proactively Protecting Users from Phishing by Intentionally Triggering Cloaking Behavior | |
CN109743303B (zh) | 应用保护方法、装置、系统和存储介质 | |
CN107172038B (zh) | 一种用于提供安全服务的信息处理方法、平台、组件及系统 | |
Shahriar et al. | Mobile anti-phishing: Approaches and challenges | |
Amrollahi et al. | A survey on application of big data in fin tech banking security and privacy | |
CN117201060A (zh) | 零信任访问主体身份认证授权访问资源方法及相关装置 | |
CN107679865B (zh) | 一种基于触压面积的身份验证方法和装置 | |
US20220303293A1 (en) | Methods of monitoring and protecting access to online services |
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 |