CN107026851A - 一种基于流式数据处理的实时系统保护方法 - Google Patents
一种基于流式数据处理的实时系统保护方法 Download PDFInfo
- Publication number
- CN107026851A CN107026851A CN201710175328.0A CN201710175328A CN107026851A CN 107026851 A CN107026851 A CN 107026851A CN 201710175328 A CN201710175328 A CN 201710175328A CN 107026851 A CN107026851 A CN 107026851A
- Authority
- CN
- China
- Prior art keywords
- real
- request
- time
- stream data
- data processing
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- 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
-
- 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/1441—Countermeasures against malicious traffic
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明属于流处理与信息安全技术领域,公开了一种基于流式数据处理的实时系统保护方法,所述基于流式数据处理的实时系统保护方法将接受到的请求转换为请求原子,实时传送请求原子到流式数据计算框架;流式数据计算框架根据规则库,实时分析请求原子的处理方式,分为两大类:正常和异常;根据处理方式执行对系统的操作或者保护。本发明在系统真正执行操作之前进对系统接受到的请求进行了实时的分析,有效解决了现有一些系统遭到破坏之后才告警的尴尬问题。随着计算机计算能力的提高;本发明所述数据保护的实时性也会越来越好,具有良好的可用性及推广价值。
Description
技术领域
本发明属于流处理与信息安全技术领域,尤其涉及一种基于流式数据处理的实时系统保护方法。
背景技术
随着互联网技术的快速发展,各种各样的网站中的访问量越来越大,而且同时网络环境日益复杂,网站系统在内部和外部都面临着严峻的考验,一些网站系统面临着网络攻击、误操作和系统崩溃的风险。甚至一些大型公司也存在着用户数据丢失的问题,例如:网站gitlab由于管理员误操作丢失了707位用户的数据,5037个项目丢失。针对这些问题,及时发现他们,并积极采取措施防范,损失才会减小。现有的实时系统保护方法,大多采用日志分析方法,日志是在事件发生后的记录,虽然实时分析了这些日志,并发出告警信息,但是系统已经遭受破坏,不能起到实时保护的作用(如何有效且高效地在系统执行请求之前甄别出这次请求是否是恶意请求成为关键问题)。例如上面例子,也是从日志中才知道了丢失了哪些数据。这些方法虽然可以帮助我们预防下次的攻击,但是已经造成的损失并不能挽回。现有基于日志的系统保护方法并不是严格意义上的实时保护。
综上所述,现有技术存在的问题是:现有的实时系统保护方法存在不能起到实时保护,数据量太大;把处理请求和甄别请求并行处理,有可能导致恶意请求执行之后,才去报警,不能有效防止恶意请求破坏系统。解决这个问题的难点就是需要设计一种系统处理请求机制,在成千上万个请求中高效地发现恶意请求,并在它执行之前处理它。
发明内容
针对现有技术存在的问题,本发明提供了一种基于流式数据处理的实时系统保护方法。
本发明是这样实现的,一种基于流式数据处理的实时系统保护方法,所述基于流式数据处理的实时系统保护方法将接受到的请求转换为请求原子,(即通过http协议获取请求中的一些关键信息,组成字符串,这个包含请求关键信息的字符串在此称为请求原子)实时传送请求原子到流式数据计算框架;流式数据计算框架根据规则库,实时分析请求原子的处理方式,分为两大类:正常和异常;根据处理方式执行对系统的操作或者保护。
进一步,所述请求原子包括:请求者IP、请求者ID、请求类型、请求内容、目的端口、请求深度、请求宽度、请求数据比例、请求时间、回调函数指针。
进一步,将请求原子传送到流式数据处理框架根据规则库进行处理;
调用回调函数返回处理结果;
对异常的请求进行相应的处理;
对异常处理结果进行实时展示;
对处理结果进行查询,如果已经存在,则跳出等待继续处理系统接受的请求。
进一步,所述将请求原子传送到流式数据处理框架根据规则库进行处理的过程包括:
实时将请求原子传送到数据队列中;
传送到流式计算框架中;
根据规则库进行实时分析处理;
根据回调函数指针返回处理结果。
进一步,所述规则库的规则包括:
单条请求原子中内容是否符合规则;
一个时间窗口内特定请求出现的频率是否符合规则;
和其他请求之间的关联关系是否符合规则。
进一步,所述对处理结果进行展示包括:处理结果正常为true,异常为false,直接写入系统处理请求的线程中的局部变量中。
进一步,所述对异常请求进行相应的处理是实时流式数据计算框架触发规则库规则,根据触发的规则实时启动一个异常处理线程实现对系统的保护。
进一步,所述对异常处理结果进行实时展示,是指将请求原子、所符合规则与处理结果实时写入数据库中,经过处理实时显示在页面中。
本发明的另一目的在于提供一种应用所述基于流式数据处理的实时系统保护方法的网站系统。
本发明的另一目的在于提供一种应用所述基于流式数据处理的实时系统保护方法的计算机。
与现有技术相比,本发明具有以下突出的有效果:
(1)通过在请求执行之前检测此次请求,关于破坏处理概率;本发明是和规则库的恶意请求甄别率直接相关,而现有技术则是规则库的恶意请求甄别率减去破坏已经发生的概率,提高了破坏被处理的概率,使得系统更为安全。
(2)通过处理请求原子,与现有技术处理日志信息相比,减少了数据量,降低了数据复杂性,减轻了流式处理框架的压力。经过测试,使用相同计算框架时,比现有技术处理日志信息相比,处理每100条请求,提高了30%的效率。使得系统实时处理效率相应的提高了30%。
(3)随着计算机计算能力的提高;本发明中接受到请求到处理请求所需时间也会越来越少,系统的实时性也会随之提高。
本发明的优点及积极效果为:在系统真正执行外部请求之前,利用SparkStreaming实时流式处理工具,对接受到的请求进行了实时的分析,然后再去执行请求。能在破坏发生之前对系统及其中的数据进行保护。安全性高于现有其它方案。
本发明在系统真正执行操作之前进对系统接受到的请求进行了实时的分析,有效解决了现有一些系统遭到破坏之后才告警的尴尬问题。随着计算机计算能力的提高;本发明所述数据保护的实时性也会越来越好,具有良好的可用性及推广价值。
附图说明
图1是本发明实施例提供的基于流式数据处理的实时系统保护方法流程图。
图2是本发明实施例提供的基于流式数据处理的实时系统保护方法具体实现流程图。
图3是本发明实施例提供的基于流式数据处理的实时系统保护方法中一个外部请求的生命周期示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合附图对本发明的应用原理作详细的描述。
本发明在系统真正执行外部请求之前,利用流式处理工具,对接受到的请求进行了实时的分析,然后根据分析结果再执行请求。能有效的在破坏发生之前对系统及其中的数据进行保护。
如图1所示,本发明实施例提供的基于流式数据处理的实时系统保护方法包括以下步骤:
S101:接受系统外部请求;
S102:加入流式数据队列;
S103:实时分析流式数据;
S104:根据分析结果处理外部请求。
下面结合具体实施例对本发明的应用原理作进一步的描述。
如图2所示,本发明实施例提供的基于流式数据处理的实时系统保护方法包括以下步骤:
(1)系统接受外部请求:
本发明接受的外部主要是http协议中的8种类型请求:OPTIONS、HEAD、GET、POST、PUT、DELETE、TRACE和CONNECT。主要是GET和POST。接受到请求之后建立一个请求处理线程。执行线程的类中包含一个Callback()回调函数,以便异步接收实时流式数据处理框架返回的分析结果消息。
(2)将外部请求转换成请求原子:
请求原子为一串字符串,请求原子包括:请求者IP、请求者ID、请求类型、请求内容、目的端口、请求深度、请求宽度、请求数据比例、请求时间、回调函数指针。
根据http的request获取这些用户信息,其中获取用户IP的方法是:取X-Forwarded-For中的第一个非unknown的有效IP字符串,防止一些用户使用代理,甚至有些黑客使用多级反向代理来访问系统。通过request.getRemotePort()获取端口号。回调函数指针的作用是让分析部分调用并通知请求处理线程是否正常响应请求。请求时间为一个13位十进制数字,为unix时间戳,同时作为请求标号来区别每个请求。请求深度是指本次请求资源的次数。请求宽度是指请求资源的类型数。
(3)根据时间先后加入到请求原子队列中:
Kafka:将请求原子输入Kafka中构成请求原子队列。Kafka的整体架构非常简单,是显式分布式架构,producer、broker和consumer都可以有多个,Producer,consumer实现Kafka注册的接口,数据从producer发送到broker,broker承担一个中间缓存和分发的作用。broker分发注册到系统中的consumer。broker的作用类似于缓存,即活跃的数据和流式数据处理系统之间的缓存。所以可以并行接受大量请求原子组成消息队列,缓存这些请求原子,并快速地发送给流式数据计算框架进行处理。
(4)利用流式数据计算框架,根据规则库进行分析,结果分为两类:正常和异常:
流式数据计算框架这里选择用Spark Streaming,规则库采用已知的网站威胁规则知识库,改规则知识库支持对规则的增加、删除、修改、查询等操作。其中网站威胁包括:SQL注入攻击、跨站脚本攻击、密码暴力破解、非法大量下载、频繁登录、参数异常、敏感路径猜测、管理后台访问等常见网站攻击和异常操作行为。
(5)调用请求线程的回调函数,返回分析结果:
Spark Streaming每处理一个请求原子就新建一个线程,调用请求原子的回调函数,返回分析的结果,分析结果分为两种类型:正常和异常。
(6)继续处理外部请求:
请求处理线程接收到Spark Streaming的分析结果,然后继续处理外部请求,如果是正常则执行这次请求,如果是异常,则返回Response为NULL。
(7)如果分析结果是异常则:同时启动一个线程保护系统:
如果是异常则新建一个线程采取相应的实现设定的规则,系统直接自动执行,如对相关数据进行加密。
(8)将异常处理结果进行实时页面展示:
处理结果主要包括:异常发现时间,触发规则,处理对象,处理结果。然后将这些信息存储在mysql数据库中的处理结果表中,前端页面使用Ajax以异步轮训的方式查询处理结果表,以实现实时的显示。
本发明实施例中,一个外部请求的生命周期流程如图3所示,生命周期分为两部分,第一部分:将请求转化成请求原子并将请求原子加入到Kafka消息队列中以便实时流式数据计算框架进行分析,然后一直等待。第二部分:接收到Spark Streaming处理结果的通知,结束等待,如果是正常消息则继续执行请求,返回相应的response,如果是异常消息则直接返回值为NULL的response。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于流式数据处理的实时系统保护方法,其特征在于,所述基于流式数据处理的实时系统保护方法将接受到的请求转换为请求原子,实时传送请求原子到流式数据计算框架;流式数据计算框架根据规则库,实时分析请求原子的处理方式,分为两大类:正常和异常;根据处理方式执行对系统的操作或者保护。
2.如权利要求1所述的基于流式数据处理的实时系统保护方法,其特征在于,所述请求原子包括:请求者IP、请求者ID、请求类型、请求内容、目的端口、请求深度、请求宽度、请求数据比例、请求时间、回调函数指针。
3.如权利要求1所述的基于流式数据处理的实时系统保护方法,其特征在于,将请求原子传送到流式数据处理框架根据规则库进行处理;
调用回调函数返回处理结果;
对异常的请求进行相应的处理;
对异常处理结果进行实时展示;
对处理结果进行查询,如果已经存在,则跳出等待继续处理系统接受的请求。
4.如权利要求3所述的基于流式数据处理的实时系统保护方法,其特征在于,所述将请求原子传送到流式数据处理框架根据规则库进行处理的过程包括:
实时将请求原子传送到数据队列中;
传送到流式计算框架中;
根据规则库进行实时分析处理;
根据回调函数指针返回处理结果。
5.如权利要求4所述的基于流式数据处理的实时系统保护方法,其特征在于,所述规则库的规则包括:
单条请求原子中内容是否符合规则;
一个时间窗口内特定请求出现的频率是否符合规则;
和其他请求之间的关联关系是否符合规则。
6.如权利要求3所述的基于流式数据处理的实时系统保护方法,其特征在于,所述对处理结果进行展示包括:处理结果正常为true,异常为false,直接写入系统处理请求的线程中的局部变量中。
7.如权利要求3所述的基于流式数据处理的实时系统保护方法,其特征在于,所述对异常请求进行相应的处理是实时流式数据计算框架触发规则库规则,根据触发的规则实时启动一个异常处理线程实现对系统的保护。
8.如权利要求3所述的基于流式数据处理的实时系统保护方法,其特征在于,所述对异常处理结果进行实时展示,是指将请求原子、所符合规则与处理结果实时写入数据库中,经过处理实时显示在页面中。
9.一种应用权利要求1~8任意一项所述基于流式数据处理的实时系统保护方法的网站系统。
10.一种应用权利要求1~8任意一项所述基于流式数据处理的实时系统保护方法的计算机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710175328.0A CN107026851A (zh) | 2017-03-22 | 2017-03-22 | 一种基于流式数据处理的实时系统保护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710175328.0A CN107026851A (zh) | 2017-03-22 | 2017-03-22 | 一种基于流式数据处理的实时系统保护方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107026851A true CN107026851A (zh) | 2017-08-08 |
Family
ID=59525727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710175328.0A Pending CN107026851A (zh) | 2017-03-22 | 2017-03-22 | 一种基于流式数据处理的实时系统保护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107026851A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110007967A (zh) * | 2017-12-29 | 2019-07-12 | 杭州海康威视数字技术股份有限公司 | 一种基于流式框架的数据处理方法、装置及设备 |
CN110909380A (zh) * | 2019-11-11 | 2020-03-24 | 西安交通大学 | 一种异常文件访问行为监控方法和装置 |
CN111026749A (zh) * | 2019-11-11 | 2020-04-17 | 支付宝(杭州)信息技术有限公司 | 业务告警方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558601A (zh) * | 2004-01-19 | 2004-12-29 | �Ϻ���ͨ��ѧ | 一种抗拒绝服务攻击的Web服务器负载控制方法 |
CN101267357A (zh) * | 2007-03-13 | 2008-09-17 | 北京启明星辰信息技术有限公司 | 一种sql注入攻击检测方法及系统 |
CN104008349A (zh) * | 2014-04-28 | 2014-08-27 | 国家电网公司 | 数据库安全访问控制方法和系统 |
CN106371366A (zh) * | 2016-09-22 | 2017-02-01 | 南京中新赛克科技有限责任公司 | 基于arm架构的大数据采集与分析平台 |
-
2017
- 2017-03-22 CN CN201710175328.0A patent/CN107026851A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558601A (zh) * | 2004-01-19 | 2004-12-29 | �Ϻ���ͨ��ѧ | 一种抗拒绝服务攻击的Web服务器负载控制方法 |
CN101267357A (zh) * | 2007-03-13 | 2008-09-17 | 北京启明星辰信息技术有限公司 | 一种sql注入攻击检测方法及系统 |
CN104008349A (zh) * | 2014-04-28 | 2014-08-27 | 国家电网公司 | 数据库安全访问控制方法和系统 |
CN106371366A (zh) * | 2016-09-22 | 2017-02-01 | 南京中新赛克科技有限责任公司 | 基于arm架构的大数据采集与分析平台 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110007967A (zh) * | 2017-12-29 | 2019-07-12 | 杭州海康威视数字技术股份有限公司 | 一种基于流式框架的数据处理方法、装置及设备 |
CN110007967B (zh) * | 2017-12-29 | 2022-05-06 | 杭州海康威视数字技术股份有限公司 | 一种基于流式框架的数据处理方法、装置及设备 |
CN110909380A (zh) * | 2019-11-11 | 2020-03-24 | 西安交通大学 | 一种异常文件访问行为监控方法和装置 |
CN111026749A (zh) * | 2019-11-11 | 2020-04-17 | 支付宝(杭州)信息技术有限公司 | 业务告警方法及装置 |
CN111026749B (zh) * | 2019-11-11 | 2023-06-30 | 支付宝(杭州)信息技术有限公司 | 业务告警方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10430583B2 (en) | Systems and methods to detect and neutralize malware infected electronic communications | |
US9146787B2 (en) | Analytics for application programming interfaces | |
CN107003976B (zh) | 基于可准许活动规则确定可准许活动 | |
US20160164893A1 (en) | Event management systems | |
US8621282B1 (en) | Crash data handling | |
US11374948B2 (en) | Computer security system with network traffic analysis | |
US11503070B2 (en) | Techniques for classifying a web page based upon functions used to render the web page | |
US20160314211A1 (en) | Systems and Methods for Verifying User Credentials for Search | |
US11089024B2 (en) | System and method for restricting access to web resources | |
US20150106827A1 (en) | Rpc acceleration based on previously memorized flows | |
CN114327803A (zh) | 区块链访问机器学习模型的方法、装置、设备和介质 | |
CN107026851A (zh) | 一种基于流式数据处理的实时系统保护方法 | |
WO2021051536A1 (zh) | 安全预警方法及相关设备、计算机可读存储介质 | |
CN112612546A (zh) | 页面加载方法、装置、电子设备和存储介质 | |
CN111193633A (zh) | 异常网络连接的检测方法及装置 | |
US10187264B1 (en) | Gateway path variable detection for metric collection | |
CN106357482B (zh) | 一种基于网络协议实施监控网页访问的方法 | |
US8364776B1 (en) | Method and system for employing user input for website classification | |
CN113238815B (zh) | 一种接口访问控制方法、装置、设备及存储介质 | |
US20210112082A1 (en) | Computer security system for ingesting and analyzing network traffic | |
JP6517468B2 (ja) | 情報処理システム、情報処理装置、監視装置、監視方法、及び、プログラム | |
CN110955890A (zh) | 恶意批量访问行为的检测方法、装置和计算机存储介质 | |
CN114978649B (zh) | 基于大数据的信息安全保护方法、装置、设备及介质 | |
CN115828256A (zh) | 一种越权与未授权逻辑漏洞检测方法 | |
CN114900375A (zh) | 一种基于ai图分析的恶意威胁侦测方法 |
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 |
Application publication date: 20170808 |
|
RJ01 | Rejection of invention patent application after publication |