CN110611564A - 一种基于时间戳的api重放攻击的防御系统及方法 - Google Patents

一种基于时间戳的api重放攻击的防御系统及方法 Download PDF

Info

Publication number
CN110611564A
CN110611564A CN201910696772.6A CN201910696772A CN110611564A CN 110611564 A CN110611564 A CN 110611564A CN 201910696772 A CN201910696772 A CN 201910696772A CN 110611564 A CN110611564 A CN 110611564A
Authority
CN
China
Prior art keywords
request
client
api
module
system server
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.)
Granted
Application number
CN201910696772.6A
Other languages
English (en)
Other versions
CN110611564B (zh
Inventor
资平飞
许斌
聂莹
邱永华
邵翠萍
陆培生
李晓永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yunnan Kunming Electronic Mdt Infotech Ltd
Original Assignee
Yunnan Kunming Electronic Mdt Infotech Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yunnan Kunming Electronic Mdt Infotech Ltd filed Critical Yunnan Kunming Electronic Mdt Infotech Ltd
Priority to CN201910696772.6A priority Critical patent/CN110611564B/zh
Publication of CN110611564A publication Critical patent/CN110611564A/zh
Application granted granted Critical
Publication of CN110611564B publication Critical patent/CN110611564B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps

Abstract

本发明公开了一种基于时间戳的API重放攻击的防御系统及方法,旨在提供一种可提高系统安全性的防御系统及方法。所述的防御系统包括客户端和系统服务器;所述客户端作为API请求发起端,客户端根据业务需求向系统服务器发起API访问;按照既定的通讯协议组装接口请求参数,并处理服务器反馈结果,驱动业务流程走向;所述客户端包括时间戳同步模块,随机数生成模块,数据签名与加密模块;所述系统服务器用于接收来自客户端的API访问请求,提供开放服务;针对重放攻击防御,其会拦截所有的API请求并根据请求参数和系统记录判断是否重放攻击,并记录相关请求信息形成审计日志模块;所述系统服务器包括重放攻击判定模块,请求记录维护模块,审计日志模块。

Description

一种基于时间戳的API重放攻击的防御系统及方法
技术领域
本发明涉及信息系统访问安全技术领域,尤其是涉及一种基于时间戳的API重放攻击的防御系统及方法。
背景技术
随着互联网技术的迅速发展,企业信息化深入到企业生产制造、经营管理的方方面面,不同的行业不同的业务领域催生了诸多面向各个领域的专业信息化系统,为企业的生产、经营做出了巨大贡献。这些信息化系统既独立又相互关联,不同系统间存在频繁的信息交互,比如:电子商务系统可能依赖于OA办公系统的行政审批功能来完成物品采购申请的审批等。很多系统处理这种系统间的信息交互的方式均是通过开放API接口来实现的,系统提供基于webservice、RESTful协议的标准API接口给第三方信息系统使用,第三方信息系统可基于这些开放API灵活处理业务数据交互需求。
然而,随着网络安全形势的日趋严峻,除了保证信息系统本身安全、稳定运行,如何保证这些信息系统间的交互安全也变得至关重要。一般情况下,信息系统开放API均会提供接口调用的身份认证以及敏感数据加密传输的功能,这些安全机制显然是十分必要的,然而这些机制可以保证系统交互数据的传输安全,却并不能完全保证系统交互接口安全。攻击者可以在不绕过身份认证、不解密敏感数据的情况下对系统发起攻击,这种攻击被称为重放攻击,具体就是指攻击者利用网络监听或其他方式盗取一个目标主机已经接受过的数据包,然后把这个数据包原封不动的重新发给系统服务器,以达到欺骗服务器的目的。这种攻击一般用于身份认证、在线支付等安全性较高的业务场景。
在已经具备身份认证、核心数据加密、数据完整性校验等技术手段的前提下,如何避免不法分子利用重放攻击手段对信息系统开放API发起攻击,从而造成系统数据泄露、业务数据异常、业务流程混乱等问题,是目前信息化系统建设过程中亟需解决的问题。
发明内容
本发明的目的旨在克服现有技术存在的不足,提供了一种基于时间戳的API重放攻击的防御系统及方法。该防御方法处理流程简洁、实现成本较低,能保证信息系统开放API的安全,避免不法分子通过重放攻击手段造成系统数据泄露、业务数据异常以及企业利益损失等事故。
为了解决上述技术问题,本发明是通过以下技术方案实现的:
一种基于时间戳的API重放攻击的防御系统,其包括客户端和系统服务器;
所述客户端作为API请求发起端,客户端根据业务需求向系统服务器发起API访问;按照既定的通讯协议组装接口请求参数,并处理服务器反馈结果,驱动业务流程走向;所述客户端包括时间戳同步模块,随机数生成模块,数据签名与加密模块;
所述系统服务器用于接收来自客户端的API访问请求,提供开放服务;针对重放攻击防御,其会拦截所有的API请求并根据请求参数和系统记录判断是否重放攻击,并记录相关请求信息形成审计日志模块;所述系统服务器包括重放攻击判定模块,请求记录维护模块,审计日志模块。
具体的是,所述时间戳同步模块用于管理客户端API请求时间戳,间歇性地向系统服务器同步系统时间戳。
具体的是,所述随机数生成模块用于管理客户端API请求随机数,实时生成接口请求随机数,标识接口请求的唯一性。
具体的是,所述数据加密与签名模块用于客户端对API请求数据进行加密或签名。
具体的是,所述重放攻击判定模块用于拦截客户端所有的API请求,然后根据时间戳、随机数、系统中的接口请求记录、客户端审计结果对这些请求进行重放攻击判定,根据判定结果决定该次接口请求是执行废止还是转发到业务处理模块;同时,生成API请求记录和客户端访问异常日志记录。
具体的是,所述请求记录维护模块用于维护由重放攻击判定模块生成的API请求记录。
具体的是,所述日志审计模块用于审计客户端访问异常记录。
一种基于时间戳的API重放攻击的防御方法,整个处理流程由客户端发起,客户端因业务需求需调用系统服务器的开放API进行业务数据交互和流程驱动,系统服务器为客户端提供服务:该防御方法采用如上防御系统,具体处理流程如下:
101:客户端根据系统服务器提供的API调用规范生成业务交互请求参数,对需要加密处理的关键信息进行加密操作;
102:客户端根据时间戳同步模块策略,与系统服务器同步时间,然后获取当前时间戳,并将该时间戳添加到接口请求参数中;
103:客户端生成用于标识本次接口调用的随机数,该随机数据必须能够保证唯一性,并把其添加到接口请求参数中;
104:客户端将业务参数、时间戳、随机数结合用户授权Token进行SHA256数据签名,保证所有数据不被篡改,并把签名结果添加到接口请求参数中;
105:系统服务器拦截所有客户端发起的API请求,并转发到重放攻击判定模块进行预处理;
106:系统服务器的重放攻击判定模块先判断发起请求的客户端是否被添加到黑名单,以判定系统是否允许给其提供服务;
107:系统服务器被允许给客户端提供服务,则根据请求参数中的时间戳判定请求是否超过有效响应时间;
108:系统服务器不允许给客户端提供服务,则累计该客户端非法访问日志记录,同时跳出重放攻击判定流程;
109:系统服务器判定客户端接口请求未超时,则根据约定的签名算法校验请求参数签名是否正确;
110:系统服务器判定客户端接口请求已经超时,则记录该次请求日志信息,并跳出重放攻击判定流程;
111:系统服务器校验请求参数签名正确,再根据请求参数中的随机数从系统查询是否有该次请求的记录,若存在则判定本次请求为重放攻击,否则将请求转发到具体的业务处理流程;
112:系统服务器校验请求参数签名失败,则记录该次请求日志信息,并跳出重放攻击判定流程;
113:系统服务器通过随机数判断本次请求不是重放攻击请求,则记录本次请求随机数标识到数据库,同时记录请求日志信息,最后将接口请求转发到具体的业务处理流程;
114:系统服务器通过随机数判断本次请求是重放攻击,则记录该次请求日志信息,并跳出重放攻击判定流程;
115:系统服务器过程中,被终止重放攻击判定流程的请求,系统将返回错误信息给客户端,同时系统自动统计这些失败的请求信息,并根据请求审计配置策略,自动维护客户端黑名单,确保将异常的客户端第一时间内拒绝于系统之外;
116:系统服务器重放攻击判定通过的客户端请求,将被转发到具体的业务处理模块执行业务处理,具体执行结果将依赖于业务处理模块,重放攻击防御系统不再过问。
本发明具有如下特点:
(1)该方法需要客户端和系统服务器协同完成,技术方案是公开的不需要保密,所有需要访问系统服务器开放API的客户端均可通过公开的通讯协议进行访问,所有访问合法性校验均有系统服务器完成。
(2)客户端向系统服务器发起API访问请求时,除了接口业务参数外,需增加系统当前时间戳Timestamp以及标识本次请求的随机数RandomNumber。然后将所有参数与API访问授权Token进行数据签名,防止请求数据被篡改。最后将参数通过HTTPS协议发给系统服务器。
(3)系统服务器自动拦截所有来自客户端的API访问请求,解析请求参数通过接口中的时间戳Timestamp和随机数RandomNumber,判定本次请求是否属于重放攻击;判定方法为:首先,判断时间戳Timestamp是否超时,如果超时则将该请求终止处理返回超时错误;其次,若请求未超时则通过请求随机数RandomNumber查询在超时时间内是否已经有处理记录。如果有记录则将该请求判断为重放攻击,终止处理返回请求无效错误,同时记录客户端IP地址等信息。最后,如若查询不到处理记录,则记录该次请求的随机数,然后进行接口参数数据签名校验,数据签名校验通过后即可重定向到具体的业务处理流程。
(4)在该防御方法中,首先需要保证客户端时间戳与系统服务器同步,否则可能因为超时而被拒绝;其次需要保证唯一性接口请求随机数,能够标识每次发起的接口请求,否则可能因为随机数重复而被判定为重放攻击。
(5)在该防御方法中,系统服务器需要维护接口请求随机数记录,对记录中过了超时时间的进行删除,减少数据库数据量保证记录查询时间,减少服务器负荷,保证系统快速响应。
(6)在该防御方法中,需要先对请求参数进行加密或签名然后再进行传输,在保证数据传输安全和数据完整性的前提下,才能使用本方法防御重放攻击。
(7)在该防御方法中,采用面向切面的思想(AOP)设计和架构重放攻击判定模块,在客户端请求API到达实际处理模块之前,即对请求进行防御过滤。处理模块不需要再次调用防御模块,降低了系统耦合度。
主要的技术及方法
采用RSA对关键数据进行加密传输,保证数据安全;
采用SHA256算法对接口请求参数进行签名,保证数据完整性;
采用HTTPS加密协议进行数据交互,保证数据传输的安全性;
采用AOP面向切面设计思想,构建重放攻击防御模块,避免每个系统API都需要单独添加防御模块代码,降低系统耦合度、节约开发成本;
采用标准数据交互协议webservice、RESTful进行接口交互,以简化、规范系统交互方式;
采用分布式部署方式,提供多个服务器节点接收客户端API请求,确保在增加重放攻击防御模块后,系统可正常访问。
与现有技术相比,本发明具有如下优点:
本发明充分利用现有RSA、SSL、SHA256等安全技术,结合面向切面的设计思想,为应用系统服务器提供简洁、高效的重放攻击防御功能,避免不法分子使用重放攻击手段对应用系统进行攻击,造成系统敏感数据泄露、业务数据异常、用户财产权益损失,保障系统安全稳定运行。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明防御系统的模块构成图。
图2是本发明防御方法的处理流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。在以下描述中,为了清楚展示本发明的结构及工作方式,将以附图为基准,借助诸多方向性词语进行描述,但是应当将“前”、“后”、“左”、“右”、“上”、“下”等词语理解为方便用语,而不应当理解为限定性词语。
一种基于时间戳的API重放攻击的防御系统,包括客户端10和系统服务器20;所述客户端作为API请求发起端,客户端根据业务需求向系统服务器发起API访问;按照既定的通讯协议组装接口请求参数,并处理服务器反馈结果,驱动业务流程走向;所述系统服务器用于接收来自客户端的API访问请求,提供开放服务;针对重放攻击防御,其会拦截所有的API请求并根据请求参数和系统记录判断是否重放攻击,并记录相关请求信息形成审计日志模块等;所述客户端包括时间戳同步模块11,随机数生成模块12,数据签名与加密模块13;所述系统服务器包括重放攻击判定模块21,请求记录维护模块22,审计日志模块23:如图1所示,由客户端和系统服务器协同完成重放攻击防御任务,各个模块完成的工作如下:
所述时间戳同步模块用于管理客户端API请求时间戳,间歇性地向系统服务器同步系统时间戳,保证接口通讯时客户端、服务器之间时间一致;避免因为时间不同步造成API请求被服务器判定为超时;
所述随机数生成模块用于管理客户端API请求随机数,实时生成接口请求随机数,标识接口请求的唯一性;客户端每发起一次请求都需要生成新的随机数附加到请求参数中;
所述数据加密与签名模块用于客户端对API请求数据进行加密或签名,保证数据传输安全和数据完整性;防止数据传输过程中请求参数被篡改,导致无法根据时间戳和随机数判定重放攻击;
所述重放攻击判定模块用于拦截客户端所有的API请求,然后根据时间戳、随机数、系统中的接口请求记录、客户端审计结果对这些请求进行重放攻击判定,根据判定结果决定该次接口请求是执行废止还是转发到业务处理模块;同时,生成API请求记录和客户端访问异常日志记录;
所述请求记录维护模块用于维护由重放攻击判定模块生成的API请求记录,因系统接口请求十分频繁,如果不对这些请求记录进行处理数据量会越来越大,最终导致数据查询缓慢影响重放攻击判定速度,因此对存在时间大于接口访问超时时间的记录进行及时删除,保证重放攻击判定速度;主要通过定时任务对系统中记录进行维护,通过配置定时任务执行策略来控制定时认证执行时间间隔,以避免因频繁执行定时任务导致的数据访问缓慢;
所述日志审计模块用于审计客户端访问异常记录,这些记录均是被系统判定为重放攻击的客户端发起的;系统管理员配置相关日志审计策略,系统根据审计策略对发起这些异常请求的客户端进行审计,对触发规则的客户端加入黑名单,直接拒绝其所有访问请求;系统管理员也可手动审计这些日志记录,双管齐下从技术和管理两个方面防御重放攻击的发生。
一种基于时间戳的API重放攻击的防御方法,整个处理流程由客户端发起,客户端因业务需求需调用系统服务器的开放API进行业务数据交互和流程驱动,系统服务器为客户端提供服务:该防御方法采用如上所述的防御系统,具体处理流程如下:
101:客户端根据系统服务器提供的API调用规范生成业务交互请求参数,对需要加密处理的关键信息进行加密等操作;
102:客户端根据时间戳同步模块策略,与系统服务器同步时间,然后获取当前时间戳,并将该时间戳添加到接口请求参数中;
103:客户端生成用于标识本次接口调用的随机数,该随机数据必须能够保证唯一性,并把其添加到接口请求参数中;
104:客户端将业务参数、时间戳、随机数结合用户授权Token进行SHA256数据签名,保证所有数据不被篡改,并把签名结果添加到接口请求参数中;
105:系统服务器拦截所有客户端发起的API请求,并转发到重放攻击判定模块进行预处理;
106:系统服务器重放攻击判定模块先判断发起请求的客户端是否被添加到黑名单,以判定系统是否允许给其提供服务;
107系统服务器被允许给客户端提供服务,则根据请求参数中的时间戳判定请求是否超过有效响应时间;
108系统服务器不允许给客户端提供服务,则累计该客户端非法访问日志记录,同时跳出重放攻击判定流程;
109系统服务器判定客户端接口请求未超时,则根据约定的签名算法校验请求参数签名是否正确;
110系统服务器判定客户端接口请求已经超时,则记录该次请求日志信息,并跳出重放攻击判定流程;
111系统服务器校验请求参数签名正确,再根据请求参数中的随机数从系统查询是否有该次请求的记录,若存在则判定本次请求为重放攻击,否则将请求转发到具体的业务处理流程;
112系统服务器校验请求参数签名失败,则记录该次请求日志信息,并跳出重放攻击判定流程;
113系统服务器通过随机数判断本次请求不是重放攻击请求,则记录本次请求随机数标识到数据库,同时记录请求日志信息,最后将接口请求转发到具体的业务处理流程;
114系统服务器通过随机数判断本次请求是重放攻击,则记录该次请求日志信息,并跳出重放攻击判定流程;
115系统服务器过程中,被终止重放攻击判定流程的请求,系统将返回错误信息给客户端,同时系统自动统计这些失败的请求信息,并根据请求审计配置策略,自动维护客户端黑名单,确保将异常的客户端第一时间内拒绝于系统之外;
116系统服务器重放攻击判定通过的客户端请求,将被转发到具体的业务处理模块执行业务处理,具体执行结果将依赖于业务处理模块,重放攻击防御系统不再过问。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种基于时间戳的API重放攻击的防御系统,其特征在于:包括客户端和系统服务器;
所述客户端作为API请求发起端,客户端根据业务需求向系统服务器发起API访问;按照既定的通讯协议组装接口请求参数,并处理服务器反馈结果,驱动业务流程走向;所述客户端包括时间戳同步模块,随机数生成模块,数据签名与加密模块;
所述系统服务器用于接收来自客户端的API访问请求,提供开放服务;针对重放攻击防御,其会拦截所有的API请求并根据请求参数和系统记录判断是否重放攻击,并记录相关请求信息形成审计日志模块;所述系统服务器包括重放攻击判定模块,请求记录维护模块,审计日志模块。
2.根据权利要求1所述基于时间戳的API重放攻击的防御系统法,其特征在于:所述时间戳同步模块用于管理客户端API请求时间戳,间歇性地向系统服务器同步系统时间戳。
3.根据权利要求1所述基于时间戳的API重放攻击的防御系统法,其特征在于:所述随机数生成模块用于管理客户端API请求随机数,实时生成接口请求随机数,标识接口请求的唯一性。
4.根据权利要求1所述基于时间戳的API重放攻击的防御系统法,其特征在于:所述数据加密与签名模块用于客户端对API请求数据进行加密或签名。
5.根据权利要求1所述基于时间戳的API重放攻击的防御系统法,其特征在于:所述重放攻击判定模块用于拦截客户端所有的API请求,然后根据时间戳、随机数、系统中的接口请求记录、客户端审计结果对这些请求进行重放攻击判定,根据判定结果决定该次接口请求是执行废止还是转发到业务处理模块;同时,生成API请求记录和客户端访问异常日志记录。
6.根据权利要求1所述基于时间戳的API重放攻击的防御系统法,其特征在于:所述请求记录维护模块用于维护由重放攻击判定模块生成的API请求记录。
7.根据权利要求1所述基于时间戳的API重放攻击的防御系统法,其特征在于:所述日志审计模块用于审计客户端访问异常记录。
8.一种基于时间戳的API重放攻击的防御方法,其特征在于:整个处理流程由客户端发起,客户端因业务需求需调用系统服务器的开放API进行业务数据交互和流程驱动,系统服务器为客户端提供服务:该防御方法采用如权利要求1所述的防御系统,具体处理流程如下:
(101):客户端根据系统服务器提供的API调用规范生成业务交互请求参数,对需要加密处理的关键信息进行加密操作;
(102):客户端根据时间戳同步模块策略,与系统服务器同步时间,然后获取当前时间戳,并将该时间戳添加到接口请求参数中;
(103):客户端生成用于标识本次接口调用的随机数,该随机数据必须能够保证唯一性,并把其添加到接口请求参数中;
(104):客户端将业务参数、时间戳、随机数结合用户授权Token进行SHA256数据签名,保证所有数据不被篡改,并把签名结果添加到接口请求参数中;
(105):系统服务器拦截所有客户端发起的API请求,并转发到重放攻击判定模块进行预处理;
(106):系统服务器的重放攻击判定模块先判断发起请求的客户端是否被添加到黑名单,以判定系统是否允许给其提供服务;
(107):系统服务器被允许给客户端提供服务,则根据请求参数中的时间戳判定请求是否超过有效响应时间;
(108):系统服务器不允许给客户端提供服务,则累计该客户端非法访问日志记录,同时跳出重放攻击判定流程;
(109):系统服务器判定客户端接口请求未超时,则根据约定的签名算法校验请求参数签名是否正确;
(110):系统服务器判定客户端接口请求已经超时,则记录该次请求日志信息,并跳出重放攻击判定流程;
(111):系统服务器校验请求参数签名正确,再根据请求参数中的随机数从系统查询是否有该次请求的记录,若存在则判定本次请求为重放攻击,否则将请求转发到具体的业务处理流程;
(112):系统服务器校验请求参数签名失败,则记录该次请求日志信息,并跳出重放攻击判定流程;
(113):系统服务器通过随机数判断本次请求不是重放攻击请求,则记录本次请求随机数标识到数据库,同时记录请求日志信息,最后将接口请求转发到具体的业务处理流程;
(114):系统服务器通过随机数判断本次请求是重放攻击,则记录该次请求日志信息,并跳出重放攻击判定流程;
(115):系统服务器过程中,被终止重放攻击判定流程的请求,系统将返回错误信息给客户端,同时系统自动统计这些失败的请求信息,并根据请求审计配置策略,自动维护客户端黑名单,确保将异常的客户端第一时间内拒绝于系统之外;
(116):系统服务器重放攻击判定通过的客户端请求,将被转发到具体的业务处理模块执行业务处理,具体执行结果将依赖于业务处理模块,重放攻击防御系统不再过问。
CN201910696772.6A 2019-07-30 2019-07-30 一种基于时间戳的api重放攻击的防御系统及方法 Active CN110611564B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910696772.6A CN110611564B (zh) 2019-07-30 2019-07-30 一种基于时间戳的api重放攻击的防御系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910696772.6A CN110611564B (zh) 2019-07-30 2019-07-30 一种基于时间戳的api重放攻击的防御系统及方法

Publications (2)

Publication Number Publication Date
CN110611564A true CN110611564A (zh) 2019-12-24
CN110611564B CN110611564B (zh) 2022-11-11

Family

ID=68890212

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910696772.6A Active CN110611564B (zh) 2019-07-30 2019-07-30 一种基于时间戳的api重放攻击的防御系统及方法

Country Status (1)

Country Link
CN (1) CN110611564B (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111262701A (zh) * 2020-01-10 2020-06-09 普联国际有限公司 一种重放攻击检测方法、系统、设备及存储介质
CN111901124A (zh) * 2020-07-29 2020-11-06 北京天融信网络安全技术有限公司 一种通信安全防护方法、装置及电子设备
CN112016082A (zh) * 2020-10-26 2020-12-01 成都掌控者网络科技有限公司 一种权限清单安全控制方法
CN112019548A (zh) * 2020-08-28 2020-12-01 重庆可兰达科技有限公司 防止恶意攻击的自定义接口签名方法、服务器及系统
CN112039857A (zh) * 2020-08-14 2020-12-04 苏州浪潮智能科技有限公司 一种公用基础模块的调用方法和装置
CN112423294A (zh) * 2020-07-30 2021-02-26 深圳市纬嘉壹科技有限公司 一种基于5g终端的区块链记录方法
CN112699374A (zh) * 2020-12-28 2021-04-23 山东鲁能软件技术有限公司 一种完整性校验漏洞安全防护的方法及系统
CN112711759A (zh) * 2020-12-28 2021-04-27 山东鲁能软件技术有限公司 一种防重放攻击漏洞安全防护的方法及系统
CN112968910A (zh) * 2021-03-30 2021-06-15 中国建设银行股份有限公司 一种防重放攻击方法和装置
CN113132373A (zh) * 2021-04-14 2021-07-16 北京计算机技术及应用研究所 一种主动干扰策略的Web攻击防御方法
CN113382011A (zh) * 2021-06-18 2021-09-10 金陵科技学院 一种api接口防止重放攻击的方法
CN113612795A (zh) * 2021-08-18 2021-11-05 广州科语机器人有限公司 重放攻击判断方法、物联网设备、电子设备及存储介质
CN114499995A (zh) * 2021-12-30 2022-05-13 中国电信股份有限公司 一种防止重放攻击的方法、装置和系统
CN114697132A (zh) * 2022-04-24 2022-07-01 平安科技(深圳)有限公司 重复访问请求攻击拦截方法、装置、设备及存储介质
CN115065503A (zh) * 2022-05-11 2022-09-16 浪潮云信息技术股份公司 一种api网关防重放攻击的方法
CN115460598A (zh) * 2021-06-07 2022-12-09 中移物联网有限公司 一种离线密码的鉴权方法、生成方法、设备端及服务端

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090235349A1 (en) * 2008-03-12 2009-09-17 Intuit Inc. Method and apparatus for securely invoking a rest api
US8392709B1 (en) * 2009-04-28 2013-03-05 Adobe Systems Incorporated System and method for a single request—single response protocol with mutual replay attack protection
CN103023710A (zh) * 2011-09-21 2013-04-03 阿里巴巴集团控股有限公司 一种安全测试系统和方法
US20140095887A1 (en) * 2012-09-29 2014-04-03 Alex Nayshtut Method and apparatus for maintaining trusted time at a client computing device
CN106130979A (zh) * 2016-06-27 2016-11-16 武汉斗鱼网络科技有限公司 基于移动端app的服务器防御系统和服务器防御方法
CN106302346A (zh) * 2015-05-27 2017-01-04 阿里巴巴集团控股有限公司 Api调用的安全认证方法、装置、系统
US20170163618A1 (en) * 2015-12-07 2017-06-08 Salesforce.Com, Inc. Api authentication
CN107453878A (zh) * 2017-08-11 2017-12-08 四川长虹电器股份有限公司 一种支持rest api防篡改防重放的方法
CN107911219A (zh) * 2017-11-09 2018-04-13 成都知道创宇信息技术有限公司 一种基于密钥签名的api防cc方法
US20180124043A1 (en) * 2012-11-27 2018-05-03 Robojar Pty Ltd System and method for authenticating the legitimacy of a request for a resource by a user
CN108183907A (zh) * 2017-12-29 2018-06-19 浪潮通用软件有限公司 一种认证方法、服务器及认证系统

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090235349A1 (en) * 2008-03-12 2009-09-17 Intuit Inc. Method and apparatus for securely invoking a rest api
US8392709B1 (en) * 2009-04-28 2013-03-05 Adobe Systems Incorporated System and method for a single request—single response protocol with mutual replay attack protection
CN103023710A (zh) * 2011-09-21 2013-04-03 阿里巴巴集团控股有限公司 一种安全测试系统和方法
US20140095887A1 (en) * 2012-09-29 2014-04-03 Alex Nayshtut Method and apparatus for maintaining trusted time at a client computing device
US20180124043A1 (en) * 2012-11-27 2018-05-03 Robojar Pty Ltd System and method for authenticating the legitimacy of a request for a resource by a user
CN106302346A (zh) * 2015-05-27 2017-01-04 阿里巴巴集团控股有限公司 Api调用的安全认证方法、装置、系统
US20170163618A1 (en) * 2015-12-07 2017-06-08 Salesforce.Com, Inc. Api authentication
CN106130979A (zh) * 2016-06-27 2016-11-16 武汉斗鱼网络科技有限公司 基于移动端app的服务器防御系统和服务器防御方法
CN107453878A (zh) * 2017-08-11 2017-12-08 四川长虹电器股份有限公司 一种支持rest api防篡改防重放的方法
CN107911219A (zh) * 2017-11-09 2018-04-13 成都知道创宇信息技术有限公司 一种基于密钥签名的api防cc方法
CN108183907A (zh) * 2017-12-29 2018-06-19 浪潮通用软件有限公司 一种认证方法、服务器及认证系统

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111262701A (zh) * 2020-01-10 2020-06-09 普联国际有限公司 一种重放攻击检测方法、系统、设备及存储介质
CN111262701B (zh) * 2020-01-10 2023-05-23 普联国际有限公司 一种重放攻击检测方法、系统、设备及存储介质
CN111901124A (zh) * 2020-07-29 2020-11-06 北京天融信网络安全技术有限公司 一种通信安全防护方法、装置及电子设备
CN112423294A (zh) * 2020-07-30 2021-02-26 深圳市纬嘉壹科技有限公司 一种基于5g终端的区块链记录方法
CN112039857A (zh) * 2020-08-14 2020-12-04 苏州浪潮智能科技有限公司 一种公用基础模块的调用方法和装置
CN112039857B (zh) * 2020-08-14 2022-05-13 苏州浪潮智能科技有限公司 一种公用基础模块的调用方法和装置
CN112019548A (zh) * 2020-08-28 2020-12-01 重庆可兰达科技有限公司 防止恶意攻击的自定义接口签名方法、服务器及系统
CN112016082A (zh) * 2020-10-26 2020-12-01 成都掌控者网络科技有限公司 一种权限清单安全控制方法
CN112699374A (zh) * 2020-12-28 2021-04-23 山东鲁能软件技术有限公司 一种完整性校验漏洞安全防护的方法及系统
CN112711759A (zh) * 2020-12-28 2021-04-27 山东鲁能软件技术有限公司 一种防重放攻击漏洞安全防护的方法及系统
CN112968910A (zh) * 2021-03-30 2021-06-15 中国建设银行股份有限公司 一种防重放攻击方法和装置
CN112968910B (zh) * 2021-03-30 2022-12-27 中国建设银行股份有限公司 一种防重放攻击方法和装置
CN113132373A (zh) * 2021-04-14 2021-07-16 北京计算机技术及应用研究所 一种主动干扰策略的Web攻击防御方法
CN113132373B (zh) * 2021-04-14 2022-12-02 北京计算机技术及应用研究所 一种主动干扰策略的Web攻击防御方法
CN115460598A (zh) * 2021-06-07 2022-12-09 中移物联网有限公司 一种离线密码的鉴权方法、生成方法、设备端及服务端
CN113382011A (zh) * 2021-06-18 2021-09-10 金陵科技学院 一种api接口防止重放攻击的方法
CN113612795A (zh) * 2021-08-18 2021-11-05 广州科语机器人有限公司 重放攻击判断方法、物联网设备、电子设备及存储介质
CN114499995A (zh) * 2021-12-30 2022-05-13 中国电信股份有限公司 一种防止重放攻击的方法、装置和系统
CN114697132A (zh) * 2022-04-24 2022-07-01 平安科技(深圳)有限公司 重复访问请求攻击拦截方法、装置、设备及存储介质
CN114697132B (zh) * 2022-04-24 2023-08-22 平安科技(深圳)有限公司 重复访问请求攻击拦截方法、装置、设备及存储介质
CN115065503A (zh) * 2022-05-11 2022-09-16 浪潮云信息技术股份公司 一种api网关防重放攻击的方法

Also Published As

Publication number Publication date
CN110611564B (zh) 2022-11-11

Similar Documents

Publication Publication Date Title
CN110611564B (zh) 一种基于时间戳的api重放攻击的防御系统及方法
JP7301150B2 (ja) ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置
EP2755162B1 (en) Identity controlled data center
US9043589B2 (en) System and method for safeguarding and processing confidential information
US9531749B2 (en) Prevention of query overloading in a server application
US20050268091A1 (en) Secure distributed time service in the fabric environment
Zhong et al. Distributed blockchain-based authentication and authorization protocol for smart grid
US8274401B2 (en) Secure data transfer in a communication system including portable meters
CN110069918A (zh) 一种基于区块链技术的高效双因子跨域认证方法
CN103179134A (zh) 基于Cookie的单点登录方法、系统及其应用服务器
CA2771816A1 (en) Trusted message storage and transfer protocol and system
KR101817152B1 (ko) 신뢰된 권한 정보 제공 방법, 신뢰된 권한 정보를 포함하는 사용자 크리덴셜 발급 방법 및 사용자 크리덴셜 획득 방법
CN107534645A (zh) 主机存储认证
CN112968910B (zh) 一种防重放攻击方法和装置
US11392615B2 (en) Process for establishing trust between multiple autonomous systems for the purposes of command and control
CN111314381A (zh) 安全隔离网关
US20200322334A1 (en) Authentication of network devices based on extensible access control protocols
EP4274192A1 (en) Access control method and apparatus, and network-side device, terminal and blockchain node
CN113872992B (zh) 一种在BMC系统中实现远程Web访问强安全认证的方法
CN113259350A (zh) 一种基于密钥生成算法的密码学用户授权认证系统
CN111935164B (zh) 一种https接口请求方法
CN117118640A (zh) 一种数据处理方法、装置、计算机设备以及可读存储介质
CN109753824B (zh) 一种分布式电子签章方法和系统
Kraxberger et al. Trusted identity management for overlay networks
CN115314262B (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
GR01 Patent grant
GR01 Patent grant