CN111092910A - 数据库安全访问方法、装置、设备、***及可读存储介质 - Google Patents
数据库安全访问方法、装置、设备、***及可读存储介质 Download PDFInfo
- Publication number
- CN111092910A CN111092910A CN201911403382.1A CN201911403382A CN111092910A CN 111092910 A CN111092910 A CN 111092910A CN 201911403382 A CN201911403382 A CN 201911403382A CN 111092910 A CN111092910 A CN 111092910A
- Authority
- CN
- China
- Prior art keywords
- database
- user
- illegal
- session
- sql statement
- 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
Links
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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- 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/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
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)
- Computer And Data Communications (AREA)
Abstract
本申请公开了一种数据库安全访问方法、装置、设备、***及可读存储介质,该方法包括以下步骤:获取标注了用户ID的用户行为数据,以及非法活动对应的非法ID集;将各条用户行为数据转换为用户ID与SQL语句的对应组合;利用非法ID集为各个对应组合添加标签;标签为合法标签或非法标签;创建与具有标签的对应组合匹配的安全策略,并利用安全策略对数据库访问请求进行处理。相较于目前的仅基于防火墙的数据保障机制,本方法可在数据库管理设备上基于安全策略进行访问控制,以保障数据库的数据安全。
Description
技术领域
本申请涉及数据安全技术领域,特别是涉及一种数据库安全访问方法、装置、设备、***及可读存储介质。
背景技术
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,通常访问数据库的方式包括以下5种:
1、应用服务器访问数据库服务器主要为业务交互,一般由用户浏览器或者APP向应用服务器发起访问,应用服务器再向数据库服务器请求访问数据,并将结果返回给用户;
2、运维平台访问数据库服务器主要是运维管理的需求,一般由运维人员通过运维管理工具和运维主机向数据库传达运维指令;
3、SQL客户端访问数据库主要是数据分析或数据提取,一般由大数据挖掘工具或者数据分析师直接通过客户端的形式进行数据提取。
4、数据库备份工作站主要是对数据进行备份以防止数据的丢失,一般都是通过数据库提供的接口进行数据同步。
5、子网特指资源子网,主要负责全网的信息处理和数据处理业务,向用户提供数据库的网络资源和网络服务。
为了保障数据库安全,目前主要依赖数据库防火墙(DB Firewall)规则验证每一个数据报包的风险特征。数据库防火墙防泄密原理:数据以包(Packet)的形式在网络中进行传输的,数据包分为控制部分和数据部分,从包的结构中,可以得到整个数据流的五元组,DB Firewall可以基于这些信息对数据库进行防护。例如,当来自应用(Application)的数据通过DB Firewall时,DB Firewall会基于设定的规则对该包进行检查,如果检查通过,包会被允许穿过DB Firewall,则Application的数据就能到达Database,反之,则该包会被DB Firewall丢弃(Drop)或返回错误标识以拒绝(reject)该会话。
基于防火墙原理,传统的方案以DB Firewall为主,存在以下缺陷:DBFirewall基于规则和数据特征识别活动风险,一般通过检测黑客攻击行为和数据特征作为样本,利用规则和数据特征来识别非法活动会导致特征识别误判,从而造成正常用户无法访问数据库,而本应当拒绝响应的非法请求得到了数据库的响应。
综上所述,如何有效地解决数据库安全访问等问题,是目前本领域技术人员急需解决的技术问题。
发明内容
本申请的目的是提供一种数据库安全访问方法、装置、设备、***及可读存储介质,通过联动上网用户行为管理设备和NGAF,对数据库访问请求进行处理,可保障数据库的数据安全。
为解决上述技术问题,本申请提供如下技术方案:
一种数据库安全访问方法,包括:
获取标注了用户ID的用户行为数据,以及非法活动对应的非法ID集;
将各条所述用户行为数据转换为用户ID与SQL语句的对应组合;
利用所述非法ID集为各个所述对应组合添加标签;所述标签为合法标签或非法标签;
创建与具有所述标签的对应组合匹配的安全策略,并利用所述安全策略对数据库访问请求进行处理。
优选地,利用所述安全策略对数据库访问请求进行处理,包括:
接收并解析所述数据库访问请求,获得目标会话ID和目标SQL语句;
利用所述安全策略,确定执行所述目标SQL语句是否合法;
若是,则执行所述目标SQL语句;若否,则终止访问。
优选地,利用所述安全策略,确定执行所述目标SQL语句是否合法,包括:
当所述安全策略包括具有所述合法标签的对应组合时,且在所述白名单中查询到所述目标会话ID与所述目标SQL语句的对应组合时,确定执行所述目标SQL语句合法;所述白名单包括标签为合法的所述对应组合;
或,当所述安全策略包括具有所述非法标签的对应组合时,且在所述黑名单中查询到所述目标会话ID与所述目标SQL语句的对应组合时,确定执行所述目标SQL语句非法;所述黑名单为包括标签为非法的所述对应组合。
优选地,所述获取标注了用户ID的用户行为数据,包括:
接收上网行为管理设备发送所述用户行为数据;其中,所述用户行为数据包括所述上网行为管理设备通过跟踪用户名而获得的应用程序对应各个所述用户ID对应的整个HTTP会话;
相应地,所述将各条所述用户行为数据转换为用户ID与SQL语句的对应组合,包括:
将会话ID与相应的HTTP会话令牌进行绑定;所述会话ID与所述用户ID具有对应关系;
解析确定所述HTTP会话令牌对应的SQL语句,并利用所述会话ID与所述用户ID具有对应关系,获得所述对应组合。
优选地,获取非法活动对应的非法ID集,包括:
接收防火墙发送的所述非法ID集。
优选地,当所述防火墙为NGAF时,所述接收防火墙发送的所述非法ID集,包括:
接收所述NGAF在识别单个用户进行的恶意攻击行为而获得的所述非法ID集。
一种数据库安全访问装置,包括:
参考数据获取模块,用于获取标注了用户ID的用户行为数据,以及非法活动对应的非法ID集;
对应组合获取模块,用于将各条所述用户行为数据转换为用户ID与SQL语句的对应组合;
标签确定模块,用于利用所述非法ID集为各个所述对应组合添加标签;所述标签为合法标签或非法标签;
访问控制模块,用于创建与具有所述标签的对应组合匹配的安全策略,并利用所述安全策略对数据库访问请求进行处理。
一种数据库安全访问设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述数据库安全访问方法的步骤。
一种数据库安全访问***,包括:
数据库、如上述的数据库安全访问设备、业务***、上网行为管理设备、客户端和NGAF;
在所述业务***和所述数据库之间部署所述数据库安全访问设备;
所述业务***包括Web应用服务器。
一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述数据库安全访问方法的步骤。
应用本申请实施例所提供的方法,获取标注了用户ID的用户行为数据,以及非法活动对应的非法ID集;将各条用户行为数据转换为用户ID与SQL语句的对应组合;利用非法ID集为各个对应组合添加标签;标签为合法标签或非法标签;创建与具有标签的对应组合匹配的安全策略,并利用安全策略对数据库访问请求进行处理。
获得标注了用户ID的用户行为数据和非法ID集。然后,将用户行为数据转换为用户ID与SQL语句具有一一对应关系的对应组合。然后,利用非法ID集判断每一个对应组合的合法性,并为各个对应组合添加上合法标签或非标签。如此,便可创建出与具有标签的对应组合相匹配的安全策略,并基于该安全策略对数据库访问请求进行处理。相较于目前的仅基于防火墙的数据保障机制,本方法可在数据库管理设备上基于安全策略进行访问控制,以保障数据库的数据安全。
相应地,本申请实施例还提供了与上述数据库安全访问方法相对应的数据库安全访问装置、设备、***和可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1(a)为本申请实施例中一种数据库安全访问方法的实施流程图;
图1(b)为本申请实施例中一种数据库安全访问方法的具体实施流程图;
图2为本申请实施例中一种数据库安全访问方法的具体实现示意图;
图3为本申请实施例中一种数据库安全访问装置的结构示意图;
图4为本申请实施例中一种数据库安全访问设备的结构示意图;
图5为本申请实施例中一种数据库安全访问设备的具体结构示意图;
图6为本申请实施例中一种数据库安全访问***的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一:
请参考图1(a),图1(a)为本申请实施例中一种数据库安全访问方法的实施流程图,该方法可应用于数据库安全审计设备(DAS,Database Audit Security)中,该DAS可部署于业务***与数据库之间,用来审计数据库操作行为的网络安全设备,通常以旁路的方式部署在数据库前面的交换机上。该方法包括以下步骤:
S10、获取标注了用户ID的用户行为数据,以及非法活动对应的非法ID集。
在本实施例中,可从可读存储介质中直接读取预先存储的标注了用户ID的用户行为数据以及非法活动对应的非法ID集,也可与其他设备进行通信交互,获得标注了用户ID的用户行为数据以及非法活动对应的非法ID集。
在实际应用中,可从一个或多个存储设备中直接读取获得用户行为数据和非法ID集,也可与一个或多个设备进行交互,获得用户行为数据和非法ID机。
优选地,由于上网行为管理设备可监管用户行为,得到用户行为数据,以及对应的用户ID,因此,在本实施例中,可接收上网行为管理设备发送用户行为数据;其中,用户行为数据包括上网行为管理设备通过跟踪用户名而获得的应用程序对应各个用户ID对应的整个HTTP会话。由于防火墙可对非法活动进行有效识别,因此在本实施例中接收防火墙发送的非法ID集。也就是说,在本实施例中,可利用上网行为管理识别获得标注了用户ID的用户行为数据,利用防火墙获得非法获得对应的非法ID集。
优选地,在本申请实施例中,可在数据中心出口部署NGAF(Next GenerationApplication Firewall),即下一代应用防火墙,主要对所有流经它的流量进行应用层的安全分析,防范安全威胁事件的发生。当防火墙为NGAF时,接收防火墙发送的非法ID集,即接收NGAF在识别单个用户进行的恶意攻击行为而获得的非法ID集。也就是说,非法ID集中的ID分别对应每一个具有恶意攻击行为的用户。
S20、将各条用户行为数据转换为用户ID与SQL语句的对应组合。
其中,SQL(Structured Query Language)语句即结构化查询语言,结构化查询语言为一种数据库查询和程序设计语言,可用于存取数据以及查询、更新和管理关系数据库***,也就是说,SQL语句即为对数据库进行操作的一种指令语言。
在本实施例中,可将每一条用户行为数据转换为用户ID与SQL语句的对应组合。以便了解在数据库中,相应用户ID对数据库的具体操作。
具体的,当通过接收上网行为管理设备发送用户行为数据的方式获取用户行为数据时;该用户行为数据包括上网行为管理设备通过跟踪用户名而获得的应用程序对应各个用户ID对应的整个HTTP会话。如此,在将各条用户行为数据转换为用户ID与SQL语句的对应组合,可具体包括:
步骤一、将会话ID与相应的HTTP会话令牌进行绑定;会话ID与用户ID具有对应关系;
步骤二、解析确定HTTP会话令牌对应的SQL语句,并利用会话ID与用户ID具有对应关系,获得对应组合。
为便于描述,下面将上述两个步骤结合起来进行说明。
在本文中会话指一个终端用户与交互***进行通讯的过程,比如从输入账户密码进入操作***到退出操作***就是一个会话过程。Session代表服务器与浏览器的一次会话过程,这个过程是连续的,也可以时断时续的。举例说明:在Servlet中,当JSP页面没有显式禁止session的时候,在打开浏览器第一次请求该jsp的时候,服务器会自动为其创建一个session,并赋予其一个sessionID,发送给客户端的浏览器。以后客户端接着请求本应用中其他资源的时候,会自动在请求头上添加:(Cookie:SESSIONID=客户端第一次拿到的session ID)。这样,服务器端在接到请求时候,就会收到session ID,并根据ession ID在内存中找到之前创建的session对象,提供给请求使用。
也就是说,会话ID与用户ID具有对应关系,会话ID与HTTP会话具有对应关系,因而用户ID与HTTP会话也有对应关系。因此,可根据会话ID与用户ID的对应关系,会话ID与HTTP会话的对应关系,将会话ID与相应的HTTP会话令牌进行绑定。绑定即指确定标注用户ID与HTTP会话的对应关系。
解析确定HTTP会话令牌对应的SQL语句后,便可利用会话ID与用户ID具有对应关系,获得对应组合。对应组合即指用户ID与SQL语句的对应组合关系。
S30、利用非法ID集为各个对应组合添加标签。
其中,标签为合法标签或非法标签。
获得对应组合关系之后,由于非法ID集为具有恶意攻击行为的用户ID,因此可基于非法ID集,确定出用户ID与SQL语句的对应组合所指代的某用户行为是否合法。如此,便可为对应组合添加相应的标签。具体的,可仅添加对应的合法标签,也可仅添加对应的非法标签,也可对所有的对应组合均添加加相应的标签(如非法行为对应组合对应非法标签,合法行为对应组合对应合法标签)。
S40、创建与具有标签的对应组合匹配的安全策略,并利用安全策略对数据库访问请求进行处理。
即基于有标签的对应组合创建安全策略。利用安全策略对数据库访问请求进行处理,可具体包括:
步骤一、接收并解析数据库访问请求,获得目标会话ID和目标SQL语句;
步骤二、利用安全策略,确定执行目标SQL语句是否合法;
步骤三、若是,则执行目标SQL语句;若否,则终止访问。
也就是说,当接收到数据库访问请求之后,可对数据库访问请求进行解析,得到该数据库访问请求对应的目标会话ID以及目标SQL语句,其中目标SQL语句即为用户希望数据库响应的操作指令。
然后,利用安全策略,确定出目标SQL语句是否合法,如果合法则执行目标SQL语句,如果不合法则确定数据库访问请求异常,无需处理。
在本实施例中,安全策略可具体为包括合法标签对应的组合,即白名单安全策略;安全策略也可具体为包括非法标签对应的组合,即黑名单安全策略;安全策略还可具体为包括非法标签和合法标签对应的组合,即黑白名单安全策略。
具体的,当安全策略包括具有合法标签的对应组合时,且在白名单中查询到目标会话ID与目标SQL语句的对应组合时,确定执行目标SQL语句合法;白名单包括标签为合法的对应组合;
或,当安全策略包括具有非法标签的对应组合时,且在黑名单中查询到目标会话ID与目标SQL语句的对应组合时,确定执行目标SQL语句非法;黑名单为包括标签为非法的对应组合。
也就是说,当在安全策略中查询到了目标会话ID与目标SQL语句的对应组合时,若该对应组合对应黑名单,则确定该对应组合为非法组合,此时无需继续处理;若该对应组合对应白名单,则确定该对应组合为合法组织,此时可继续处理,即执行目标SQL语句对应的操作。
在本实施例中,获取标注了用户ID的用户行为数据,以及非法活动对应的非法ID集;将各条用户行为数据转换为用户ID与SQL语句的对应组合;利用非法ID集为各个对应组合添加标签;标签为合法标签或非法标签;创建与具有标签的对应组合匹配的安全策略,并利用安全策略对数据库访问请求进行处理。
获得标注了用户ID的用户行为数据和非法ID集。然后,将用户行为数据转换为用户ID与SQL语句具有一一对应关系的对应组合。然后,利用非法ID集判断每一个对应组合的合法性,并为各个对应组合添加上合法标签或非标签。如此,便可创建出与具有标签的对应组合相匹配的安全策略,并基于该安全策略对数据库访问请求进行处理。相较于目前的仅基于防火墙的数据保障机制,本方法可在数据库管理设备上基于安全策略进行访问控制,以保障数据库的数据安全。
实施例二:
本实施例与上述实施例一可相互参照。请参考图1(b),图1(b)为本申请实施例中一种数据库安全访问方法的具体实施流程图,该方法可应用于数据库安全审计设备中,该DAS可部署于业务***与数据库之间,用来审计数据库操作行为的网络安全设备,通常以旁路的方式部署在数据库前面的交换机上。该方法包括以下步骤:
S101、接收上网行为管理设备发送的用户行为数据,以及NGAF发送的非法活动黑名单。
在本申请实施例中,可在数据中心出口部署NGAF(Next Generation ApplicationFirewall),即下一代应用防火墙,主要对所有流经它的流量进行应用层的安全分析,防范安全威胁事件的发生;在客户端用户到业务***之间部署上文行为管理设备(AccessControl),以对所有经过的用户上网行为进行实时管控。
部署了上网行为管理设备和NGAF之后,NAS便可接收上网行为管理设备发送的用户行为数据以及NGAF发送的非法活动黑名单。具体的,接收上网行为管理设备发送的用户行为数据,以及NGAF发送的非法活动黑名单,即包括:
步骤一、接收上网行为管理设备通过跟踪用户名而获得的用户行为数据;
步骤二、接收NGAF在识别单个用户进行的恶意攻击行为而获得的非法活动黑名单。
可见,上述步骤一即:DAS通过与上网行为管理设备关联,并通过上网行为管理设备获取用户行为数据的实现方式;上述步骤二即:DAS通过与NGAF关联,并通过NGAF获取非法获得黑名单的实现方式。
其中,获取用户行为数据的实现方式可具体为接收上网行为管理设备通过跟踪用户名而获得的应用程序用户整个HTTP会话。即,上网行为管理设备(AC)可通过追踪用户名获得应用程序用户整个HTTP会话(包括:客户端到web应用服务器的用户、web应用服务器到数据库服务器的用户、SQL连接的用户),当用户登录到应用程序时,AC利用Web审计技术来识别和跟踪会话,并通过关联会话ID(如Cookie或会话参数)和用户名。其中,在同一个应用程序中,用户的会话ID为唯一可确定的标识。
其中,NGAF可通过基线学习非法活动,并动态生成非法活动黑名单。
S102、关联分析用户行为数据和非法活动黑名单,并创建关联会话ID和SQL语句的安全策略。
得到用户行为数据和非法获得黑名单之后,便可关联分析用户行为数据和非法获得黑名单,并基于分析结果,创建出管理会话ID和SQL语句的安全策略。在本申请的其他实施例中,也可以采用其他操作数据库的语言对应的语句建立安全策略,建立过程同本实施例中基于SQL语言的实现过程,在此不再一一赘述。
优选地,关联分析用户行为数据和非法活动黑名单,并创建关联会话ID和SQL语句的安全策略,包括:
步骤一、对用户行为数据进行审计,并通过会话ID与相应的HTTP会话令牌进行绑定,并将会话ID关联到对应的SQL语句;
步骤二、通过非法活动黑名单对用户行为数据进行识别,获得非法活动对应的完整会话;其中,完整会话为用户从访问web应用服务器到数据库服务器的所有会话;
步骤三、将完整会话对应的非法会话ID和非法SQL语句添加至安全策略。
为便于描述,下面将上述三个步骤结合起来进行说明。
在此关联分析过程中,即将AC通过追踪用户获得整个用户的活动,将NGAF通过基线学习非法活动,并动态生成非法活动黑名单进行联合审计。即,DAS审计所有访问数据库的活动,并通过联动AC和NGAF来关联对应活动的每一个会话ID,以获得用户访问web应用服务器到数据库服务器的完整会话,DAS知道完整会话后,便可确定出哪些访问途径是合法的,哪些访问途经不合法。即在NGAF上就能通过动态建模进行非法和合法活动的区分,最终可在DAS上实现,并可通过创建安全策略来阻止非法活动。
需要说明的是,上述步骤S101、S102可定期被执行,可在***运行初期被执行,在获得较为完善的安全策略后,便无需被执行;当然,考虑到非法用户的非法活动或非法操作层出不穷,上述步骤S101、S102也可定期或实时被执行,以便及时或实时更新安全策略。
S103、接收并解析数据库访问请求,获得目标会话ID和目标SQL语句。
在获得安全策略之后,当DAS接收到数据库访问请求之后,便可获取目标会话ID以及对应的SQL语句。对于如何接收并接收数据库访问请求,以获得目标会话ID和目标SQL语句可具体参照现有的数据库访问请求接收解析的具体实现过程,在此不再一一赘述。
其中,接收并解析数据库访问请求,获得目标会话ID和目标SQL语句,可为接收并解析Web应用服务器发送的数据库访问请求,获得目标会话ID和目标SQL语句。例如,在实际应用过程中,客户端用户可给web应用服务器发起一个认证请求,web应用服务器回应客户端的认证请求,并check客户端用户的合法性,客户端用户合法则进行下一步认证,否则终止访问请求。其中,下一步认证请求即Web应用服务器向数据库发起认证请求,database(数据库)回应应用服务器的认证请求,并check数据库中用户的合法性。数据库确定是否合法的判断规则即由DAS完成。
S104、利用安全策略,确定目标会话ID是否有权访问数据库。
在本申请实施例中,安全策略可为合法会话ID以及与合法会话ID关联的SQL语句,此时,可将安全策略视为白名单;安全策略也可为非法会话ID以及非法会话ID关联的非法SQL语句,此时可将安全策略视为黑名单;当然,可也在安全策略中记录合法ID和非法ID以及对应的SQL语句,此时安全策略视为黑白名单。相应地,确定目标会话ID是否有权访问数据库,即确定其与安全策略的对应关系即可。例如,当安全策略采用白名单机制,若目标会话ID被记录在安全策略中,此时则认为目标会话ID有权访问数据库;当安全策略采用黑名单机制,若目标会话ID被记录在安全策略中,此时可认为目标会话ID无权访问数据库;当安全策略采用黑白名单机制,则将目标会话ID与安全策略进行匹配,根据其对应匹配结果确定是否有权访问数据库。即确定是否有权访问数据库的具体实现,可参考现有的黑和/或白名单机制。
确定是否有权访问数据库之后,便可根据判定结果,执行后续步骤。具体的,若判断结果为是,则执行步骤S105;若判定结果为否,则执行步骤S106。
S105、执行目标SQL语句。
具体的,即执行目标SQL语句并返回SQL数据。即向数据库访问请求对应的发起者反馈相应的数据结果。
S106、终止访问。
当确定出无访问权限时,此时可终止访问。例如,可无需执行目标SQL语句,并向数据库访问请求对应的发起者反馈相应的无权限或操作错误的提示信息。
在本实施例中,通过联动上网行为管理设备和NGAF,便可获得用户行为数据和非法活动黑名单。关联分析用户行为数据和非法活动黑名单可创建关联会话ID和SQL预警的安全策略。如此,当接收到数据库访问请求时,在获得该数据库访问请求对应的目标会话ID和目标SQL语句后,便可利用安全策略确定目标会话ID是否有权访问数据库。当确定有权访问数据库时,则执行目标SQL语句;当确定无权访问数据库时,则终止访问。可见,处理数据库访问请求时,通过联动上网行为管理设备和NGAF,获得关联会话ID和SQL预警的安全策略,并基于该安全策略对数据库访问请求进行处理,相较于目前的仅基于防火墙的数据保障机制,本方法可准确识别非法访问请求,可保障数据库的数据安全。
实施例三:
为便于本领域技术人员更好地理解本申请实施例所提供的数据库安全访问方法,下面以具体的应用场景为例,对本申请实施例所提供的数据库安全访问方法进行详细说明。
请参考图2,图2为本申请实施例中一种数据库安全访问方法的具体实现示意图。
在实现上述方法实施例所提供的数据库安全访问方法之前,可在数据中心出口部署下一代应用防火墙(NGAF),在客户端用户到业务***之间部署深信服上网行为管理设备(AC),在业务***到数据库之间部署数据库安全审计(DAS),并在DAS上开启联动功能。
按照图2所示的交互过程中,当用户User登录到应用程序时,Web应用程序用户跟踪利用了深信服上网行为管理会话跟踪技术专识别,通过关联会话ID(如Cookie或会话参数)和用户名,AC可以通过用户名跟踪所有Web活动,DAS联动AC后可以利用统一用户跟踪技术将用户与他们的操作关联起来,DAS联动NGAF将动态跟踪每个访问数据库用户的登录,并通过ID与相应的HTTP会话令牌进行绑定,以实现在DAS上创建数据库安全策略来按用户ID限制访问。
整体流程梳理如下:
1、客户端用户给web应用服务器发起一个认证请求,web应用服务器回应客户端的认证请求,并check客户端用户的合法性,客户端用户合法则进行下一步认证,否则终止访问请求。
2、Web应用服务器向database发起认证请求,database回应应用服务器的认证请求,并check数据库中用户的合法性,web应用服务器合法则之行SQl语句并返回SQL数据,否则终止访问请求。
也就是说,在认证过程中,上网行为管理设备(AC)通过追踪用户名获得应用程序用户整个HTTP会话(包括:客户端到web应用服务器的用户、web应用服务器到数据库服务器的用户、SQL连接的用户),当用户登录到应用程序时,AC可利用Web审计技术来识别和跟踪会话,并关联会话ID(如Cookie或会话参数)和用户名。
3、AC通过追踪用户将动态跟踪每个用户的登录和所有web的活动以及SQL的活动,并联动通知给数据库安全审计(DAS)。
4、NGAF具备识别单个应用程序用户进行的恶意攻击行为,NGAF黑名单安全模型能够检测应用程序或数据库在使用中的任何更改,并通过机器学习动态更新黑名单模型,NGAF联动数据库安全审计(DAS),DAS能够通过黑名单查找出哪些活动是恶意攻击或非法操作行为。
5、DAS审计web应用服务器到数据库服务器的所有活动,通过ID与相应的HTTP会话令牌进行绑定,并关联到SQL语句,则可以在DAS上可以按用户会话ID创建数据库安全策略来限制访问。
也就是说,在关联分析过程中,AC通过追踪用户获得整个用户的活动,NGAF通过基线学习非法活动,并动态生成黑名单,DAS审计所有访问数据库的活动,并通过联动AC和NGAF来关联对应活动的每一个会话ID,以获得用户访问web应用服务器到数据库服务器的完整会话,知道完整会话就能知道哪些访问途径是合法的,哪些访问途经不合法,则在NGAF上就能通过动态建模进行非法和合法活动的区分,最终在DAS上,通过配置策略来阻止非法活动。
可见,本申请实施例所提供的数据库安全访问方法,可在DAS上通过配置策略来实现数据库的安全访问。相较于DB Firewall要劫持会话,所以必须串接在数据库前面,增加了数据库传输的网络故障节点,并且防火墙要对每一个会话都进行规则匹配,也会造成数据库的请求网络延时;在本申请实施例中,在获得安全策略之后,DAS仅需对数据库访问请求的会话ID进行匹配验证即可完成安全访问,可减少占用计算资源和带宽。
实施例四:
相应于上面的方法实施例,本申请实施例还提供了一种数据库安全访问装置,下文描述的数据库安全访问装置与上文描述的数据库安全访问方法可相互对应参照。
参见图3所示,该装置包括以下模块:
参考数据获取模块101,用于获取标注了用户ID的用户行为数据,以及非法活动对应的非法ID集;
对应组合获取模块102,用于将各条用户行为数据转换为用户ID与SQL语句的对应组合;
标签确定模块103,用于利用非法ID集为各个对应组合添加标签;标签为合法标签或非法标签;
访问控制模块104,用于创建与具有标签的对应组合匹配的安全策略,并利用安全策略对数据库访问请求进行处理。
应用本申请实施例所提供的装置,获取标注了用户ID的用户行为数据,以及非法活动对应的非法ID集;将各条用户行为数据转换为用户ID与SQL语句的对应组合;利用非法ID集为各个对应组合添加标签;标签为合法标签或非法标签;创建与具有标签的对应组合匹配的安全策略,并利用安全策略对数据库访问请求进行处理。
获得标注了用户ID的用户行为数据和非法ID集。然后,将用户行为数据转换为用户ID与SQL语句具有一一对应关系的对应组合。然后,利用非法ID集判断每一个对应组合的合法性,并为各个对应组合添加上合法标签或非标签。如此,便可创建出与具有标签的对应组合相匹配的安全策略,并基于该安全策略对数据库访问请求进行处理。相较于目前的仅基于防火墙的数据保障机制,本装置可在数据库管理设备上基于安全策略进行访问控制,以保障数据库的数据安全。
在本申请的一种具体实施方式中,访问控制模块104,具体用于接收并解析数据库访问请求,获得目标会话ID和目标SQL语句;利用安全策略,确定执行目标SQL语句是否合法;若是,则执行目标SQL语句;若否,则终止访问。
在本申请的一种具体实施方式中,访问控制模块104,具体用于当安全策略包括具有合法标签的对应组合时,且在白名单中查询到目标会话ID与目标SQL语句的对应组合时,确定执行目标SQL语句合法;白名单包括标签为合法的对应组合;
或,当安全策略包括具有非法标签的对应组合时,且在黑名单中查询到目标会话ID与目标SQL语句的对应组合时,确定执行目标SQL语句非法;黑名单为包括标签为非法的对应组合。
在本申请的一种具体实施方式中,参考数据获取模块101,具体用于接收上网行为管理设备发送用户行为数据;其中,用户行为数据包括上网行为管理设备通过跟踪用户名而获得的应用程序对应各个用户ID对应的整个HTTP会话;
相应地,对应组合获取模块102,具体用于将会话ID与相应的HTTP会话令牌进行绑定;会话ID与用户ID具有对应关系;解析确定HTTP会话令牌对应的SQL语句,并利用会话ID与用户ID具有对应关系,获得对应组合。
在本申请的一种具体实施方式中,参考数据获取模块101,具体用于接收防火墙发送的非法ID集。
在本申请的一种具体实施方式中,当防火墙为NGAF时,参考数据获取模块101,具体用于接收NGAF在识别单个用户进行的恶意攻击行为而获得的非法ID集。
实施例五:
相应于上面的方法实施例,本申请实施例还提供了一种数据库安全访问设备,下文描述的一种数据库安全访问设备与上文描述的一种数据库安全访问方法可相互对应参照。
参见图4所示,该数据库安全访问设备包括:
存储器D1,用于存储计算机程序;
处理器D2,用于执行计算机程序时实现上述方法实施例的数据库安全访问方法的步骤。
具体的,请参考图5,图5为本实施例提供的一种数据库安全访问设备的具体结构示意图,该数据库安全访问设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在数据库安全访问设备301上执行存储介质330中的一系列指令操作。
数据库安全访问设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作***341。例如,Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
上文所描述的数据库安全访问方法中的步骤可以由数据库安全访问设备的结构实现。
实施例六:
相应于上面的方法实施例,本申请实施例还提供了一种数据库安全访问***,下文描述的一种数据库安全访问***与上文描述的一种数据库安全访问方法可相互对应参照。
参见图6所示,该数据库安全访问设备包括:
数据库601、如上述的数据库安全访问设备602、业务***603、上网行为管理设备604、NGAF605、客户端606;
在业务***和数据库之间部署数据库安全访问设备;
业务***包括Web应用服务器6031。
其中,数据库安全访问设备可具体为DAS。
上文所描述的数据库安全访问方法中的步骤可以由数据库安全访问***的结构实现。
实施例七:
相应于上面的方法实施例,本申请实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种数据库安全访问方法可相互对应参照。
一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的数据库安全访问方法的步骤。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
Claims (10)
1.一种数据库安全访问方法,其特征在于,包括:
获取标注了用户ID的用户行为数据,以及非法活动对应的非法ID集;
将各条所述用户行为数据转换为用户ID与SQL语句的对应组合;
利用所述非法ID集为各个所述对应组合添加标签;所述标签为合法标签或非法标签;
创建与具有所述标签的对应组合匹配的安全策略,并利用所述安全策略对数据库访问请求进行处理。
2.根据权利要求1所述的数据库安全访问方法,其特征在于,利用所述安全策略对数据库访问请求进行处理,包括:
接收并解析所述数据库访问请求,获得目标会话ID和目标SQL语句;
利用所述安全策略,确定执行所述目标SQL语句是否合法;
若是,则执行所述目标SQL语句;若否,则终止访问。
3.根据权利要求2所述的数据库安全访问方法,其特征在于,利用所述安全策略,确定执行所述目标SQL语句是否合法,包括:
当所述安全策略包括具有所述合法标签的对应组合时,且在所述白名单中查询到所述目标会话ID与所述目标SQL语句的对应组合时,确定执行所述目标SQL语句合法;所述白名单包括标签为合法的所述对应组合;
或,当所述安全策略包括具有所述非法标签的对应组合时,且在所述黑名单中查询到所述目标会话ID与所述目标SQL语句的对应组合时,确定执行所述目标SQL语句非法;所述黑名单为包括标签为非法的所述对应组合。
4.根据权利要求1所述的数据库安全访问方法,其特征在于,所述获取标注了用户ID的用户行为数据,包括:
接收上网行为管理设备发送所述用户行为数据;其中,所述用户行为数据包括所述上网行为管理设备通过跟踪用户名而获得的应用程序对应各个所述用户ID对应的整个HTTP会话;
相应地,所述将各条所述用户行为数据转换为用户ID与SQL语句的对应组合,包括:
将会话ID与相应的HTTP会话令牌进行绑定;所述会话ID与所述用户ID具有对应关系;
解析确定所述HTTP会话令牌对应的SQL语句,并利用所述会话ID与所述用户ID具有对应关系,获得所述对应组合。
5.根据权利要求1所述的数据库安全访问方法,其特征在于,获取非法活动对应的非法ID集,包括:
接收防火墙发送的所述非法ID集。
6.根据权利要求5所述的数据库安全访问方法,其特征在于,当所述防火墙为NGAF时,所述接收防火墙发送的所述非法ID集,包括:
接收所述NGAF在识别单个用户进行的恶意攻击行为而获得的所述非法ID集。
7.一种数据库安全访问装置,其特征在于,包括:
参考数据获取模块,用于获取标注了用户ID的用户行为数据,以及非法活动对应的非法ID集;
对应组合获取模块,用于将各条所述用户行为数据转换为用户ID与SQL语句的对应组合;
标签确定模块,用于利用所述非法ID集为各个所述对应组合添加标签;所述标签为合法标签或非法标签;
访问控制模块,用于创建与具有所述标签的对应组合匹配的安全策略,并利用所述安全策略对数据库访问请求进行处理。
8.一种数据库安全访问设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述数据库安全访问方法的步骤。
9.一种数据库安全访问***,其特征在于,包括:
数据库、如权利要求8所述的数据库安全访问设备、业务***、上网行为管理设备、NGAF和客户端;
在所述业务***和所述数据库之间部署所述数据库安全访问设备;
所述业务***包括Web应用服务器。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述数据库安全访问方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911403382.1A CN111092910B (zh) | 2019-12-30 | 2019-12-30 | 数据库安全访问方法、装置、设备、***及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911403382.1A CN111092910B (zh) | 2019-12-30 | 2019-12-30 | 数据库安全访问方法、装置、设备、***及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111092910A true CN111092910A (zh) | 2020-05-01 |
CN111092910B CN111092910B (zh) | 2022-11-22 |
Family
ID=70397818
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911403382.1A Active CN111092910B (zh) | 2019-12-30 | 2019-12-30 | 数据库安全访问方法、装置、设备、***及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111092910B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111800408A (zh) * | 2020-06-30 | 2020-10-20 | 深信服科技股份有限公司 | 策略配置装置、终端的安全策略配置方法和可读存储介质 |
CN111931234A (zh) * | 2020-08-13 | 2020-11-13 | 中国民航信息网络股份有限公司 | 一种数据访问控制方法及*** |
CN112767107A (zh) * | 2021-01-14 | 2021-05-07 | 中国工商银行股份有限公司 | 检测黑名单的方法、装置、设备、介质和程序产品 |
CN113434552A (zh) * | 2021-06-28 | 2021-09-24 | 青岛海尔科技有限公司 | 数据请求的处理方法和装置、存储介质及电子装置 |
CN115695050A (zh) * | 2022-12-31 | 2023-02-03 | 北京仁科互动网络技术有限公司 | 点击劫持攻击的防范方法、装置、电子设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1858738A (zh) * | 2006-02-15 | 2006-11-08 | 华为技术有限公司 | 访问数据库的方法及装置 |
CN101610271A (zh) * | 2009-07-21 | 2009-12-23 | 国网电力科学研究院 | 一种基于数据流还原技术的数据库安全防护方法 |
CN102722667A (zh) * | 2012-03-07 | 2012-10-10 | 甘肃省电力公司信息通信公司 | 基于虚拟数据库和虚拟补丁的数据库安全防护***和方法 |
CN104143064A (zh) * | 2013-05-08 | 2014-11-12 | 朱烨 | 基于数据库活动与Web访问关联性分析的网站数据安全*** |
CN104331457A (zh) * | 2014-10-31 | 2015-02-04 | 北京思特奇信息技术股份有限公司 | 一种基于数据库节点的数据访问方法及*** |
CN105138675A (zh) * | 2015-09-08 | 2015-12-09 | 上海上讯信息技术股份有限公司 | 数据库审计方法及设备 |
CN105718599A (zh) * | 2016-03-07 | 2016-06-29 | 深圳前海微众银行股份有限公司 | 数据库访问数据包解析的方法及装置 |
CN109086426A (zh) * | 2018-08-09 | 2018-12-25 | 北京大米科技有限公司 | 数据查询方法、装置、计算机设备及可读存储介质 |
CN109408499A (zh) * | 2018-10-22 | 2019-03-01 | 福建星瑞格软件有限公司 | 一种匹配数据库访问用户的审计方法及*** |
US20190102421A1 (en) * | 2017-09-29 | 2019-04-04 | Oracle International Corporation | Method and system for supporting data consistency on an active standby database after dml redirection to a primary database |
-
2019
- 2019-12-30 CN CN201911403382.1A patent/CN111092910B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1858738A (zh) * | 2006-02-15 | 2006-11-08 | 华为技术有限公司 | 访问数据库的方法及装置 |
CN101610271A (zh) * | 2009-07-21 | 2009-12-23 | 国网电力科学研究院 | 一种基于数据流还原技术的数据库安全防护方法 |
CN102722667A (zh) * | 2012-03-07 | 2012-10-10 | 甘肃省电力公司信息通信公司 | 基于虚拟数据库和虚拟补丁的数据库安全防护***和方法 |
CN104143064A (zh) * | 2013-05-08 | 2014-11-12 | 朱烨 | 基于数据库活动与Web访问关联性分析的网站数据安全*** |
CN104331457A (zh) * | 2014-10-31 | 2015-02-04 | 北京思特奇信息技术股份有限公司 | 一种基于数据库节点的数据访问方法及*** |
CN105138675A (zh) * | 2015-09-08 | 2015-12-09 | 上海上讯信息技术股份有限公司 | 数据库审计方法及设备 |
CN105718599A (zh) * | 2016-03-07 | 2016-06-29 | 深圳前海微众银行股份有限公司 | 数据库访问数据包解析的方法及装置 |
US20190102421A1 (en) * | 2017-09-29 | 2019-04-04 | Oracle International Corporation | Method and system for supporting data consistency on an active standby database after dml redirection to a primary database |
CN109086426A (zh) * | 2018-08-09 | 2018-12-25 | 北京大米科技有限公司 | 数据查询方法、装置、计算机设备及可读存储介质 |
CN109408499A (zh) * | 2018-10-22 | 2019-03-01 | 福建星瑞格软件有限公司 | 一种匹配数据库访问用户的审计方法及*** |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111800408A (zh) * | 2020-06-30 | 2020-10-20 | 深信服科技股份有限公司 | 策略配置装置、终端的安全策略配置方法和可读存储介质 |
CN111800408B (zh) * | 2020-06-30 | 2022-09-30 | 深信服科技股份有限公司 | 策略配置装置、终端的安全策略配置方法和可读存储介质 |
CN111931234A (zh) * | 2020-08-13 | 2020-11-13 | 中国民航信息网络股份有限公司 | 一种数据访问控制方法及*** |
CN111931234B (zh) * | 2020-08-13 | 2024-06-04 | 中国民航信息网络股份有限公司 | 一种数据访问控制方法及*** |
CN112767107A (zh) * | 2021-01-14 | 2021-05-07 | 中国工商银行股份有限公司 | 检测黑名单的方法、装置、设备、介质和程序产品 |
CN113434552A (zh) * | 2021-06-28 | 2021-09-24 | 青岛海尔科技有限公司 | 数据请求的处理方法和装置、存储介质及电子装置 |
CN113434552B (zh) * | 2021-06-28 | 2023-07-21 | 青岛海尔科技有限公司 | 数据请求的处理方法和装置、存储介质及电子装置 |
CN115695050A (zh) * | 2022-12-31 | 2023-02-03 | 北京仁科互动网络技术有限公司 | 点击劫持攻击的防范方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111092910B (zh) | 2022-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111092910B (zh) | 数据库安全访问方法、装置、设备、***及可读存储介质 | |
US8516586B1 (en) | Classification of unknown computer network traffic | |
CN107070880A (zh) | 一种单点登录的方法及***、一种认证中心服务器 | |
CN104426906A (zh) | 识别计算机网络内的恶意设备 | |
CN104333556B (zh) | 基于资源服务管理***安全认证网关分布式配置管理方法 | |
CN111490981B (zh) | 访问管理方法、装置、堡垒机及可读存储介质 | |
RU2634174C1 (ru) | Система и способ выполнения банковской транзакции | |
JP2010512585A (ja) | 資格取得によって引き起こされる脆弱性の調査及び緩和を行う方式 | |
CN107770192A (zh) | 在多***中身份认证的方法和计算机可读存储介质 | |
CN110912855A (zh) | 一种基于渗透性测试用例集的区块链架构安全评估方法及*** | |
CN116938590B (zh) | 一种基于虚拟化技术的云安全管理方法与*** | |
CN111314381A (zh) | 安全隔离网关 | |
CN114189383B (zh) | 封禁方法、装置、电子设备、介质和计算机程序产品 | |
CN102045309A (zh) | 一种用于防止计算机病毒攻击的方法和装置 | |
CN116708033B (zh) | 终端安全检测方法、装置、电子设备及存储介质 | |
CN112347436A (zh) | 一种安全资源池内安全组件的权限管理方法及相关组件 | |
CN104009846B (zh) | 一种单点登录装置和方法 | |
CN113194088B (zh) | 访问拦截方法、装置、日志服务器和计算机可读存储介质 | |
CN107294994B (zh) | 一种基于云平台的csrf防护方法和*** | |
CN116996238A (zh) | 一种网络异常访问的处理方法以及相关装置 | |
CN109218315A (zh) | 一种安全管理方法和安全管理装置 | |
CN108881484A (zh) | 一种检测终端是否能访问互联网的方法 | |
CN111385253B (zh) | 一种面向配电自动化***网络安全的脆弱性检测*** | |
CN113901428A (zh) | 多租户***的登录方法及装置 | |
CN113672888A (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 |