基于数据挖掘的数据库安全技术研究

2018-01-24 21:32王贤志
软件 2017年7期
关键词:入侵检测数据挖掘数据库

王贤志

摘要:随着数据库技术的快速发展,数据挖掘成为从海量数据中发现有价值信息的一种有效方法。数据挖掘为人们使用数据库带来了方便的同时,也带来了许多安全问题,其会导致数据库系统产生推理和聚集攻击。本文详细的介绍了数据挖掘对数据库系统安全带来的影响,同时针对系统受到的推力和聚集攻击提出了一种基于归纳和演绎的混合推理策略,防止数据库发生信息泄露等安全问题。

关键词:数据挖掘;数据库;入侵检测;推理攻击

0引言

随着计算机技术、网络技术和信息管理技术的快速发展,海量数据充斥着人们的生活,严重的影响了人们的工作和学习,因此,人们迫切的希望能够找到一种能够从海量数据中发掘信息的工具,经过诸多计算机学者的不懈努力,人们终于找到了一种能够发现数据中潜在模式的方法——数据挖掘,该方法一经发现,便得到了迅速的普及和使用。数据库作为一种数据信息存贮、实现数据操作和共享的管理工具,其能够有效地维护数据完整性、一致性和安全性,降低数据的冗余性,在信息处理过程中具有重要的作用。数据库安全研究的主要内容是设法保证数据库中存贮的数据安全,禁止非法用户的数据访问请求,同时为合法用户提供高效的数据服务。但是,随着数据挖掘的普及使用,数据库安全问题已经成为人们研究的热点,如何能够满足用户需求的情况下,从海量数据中提取有用信息,同时又能保证数据提供者的隐私需要,已经成为一个关键问题。

1数据挖掘提升数据库安全

1.1数据挖掘技术应用于入侵检查和审计

入侵检测指系统正常运行过程中,一些进程试图破坏系统功能,或者是非法的访问数据库,危害系统安全的行为,入侵检测方法包括两类,分别是基于已知攻击方法和基于统计规律的方法。

为了确保系统行为和监控用户的正常运行,数据库系统在计算和使用的过程中能够产生数量非常巨大的审计数据。数据库系统的管理者和拥有者最为关注的问题就是怎样充分利用产生的极多的审计数据以及依靠这些数据衍生出的系统安全管理信息。为了有效的解决上述问题,数据挖掘应运而生。众所周知,数据挖掘在审计安全威胁问题和检测数据库的入侵两个方面发挥着无可替代的作用。利用数据挖掘,能够准确无误的探测出安全威胁,敏锐的发现入侵模式,这也是信息安全保障所要求的。为了有效的限制入侵,不仅能够阻止破坏的进一步恶化,而且可以从恶意攻击中恢复,就需要有一个精确、高效的入侵检测技术作为保障,确保恶意攻击能够被及时阻止,这也是信息安全保障的前提。同时,具有高质量数据和强大的恢复功能,以及对数据恶意攻击的反击能力是信息安全保障研究的重中之重。

1.2发现数据库中异常数据模式

数据挖掘工具在数据库管理系统中发挥着重要作用,它可以发现储存在系统的某个数据出现的异常情况。为了更加简单明了的说明,现举例说明:单位某个员工多次去同一个地方出差。当数据挖掘工具发现这一异常数据,数据挖掘工具会自动生成一个查询,即这个地方有与该员工联系非常密切的人,当查询结果显示出这个地方确实存在与该员工联系密切的人时,说明该员工的这一行为被发现。同时,数据挖掘工具也可以发现数据库中与正常数据有偏差的数值,自动生成查询模式,经确认无误后,系统能够有效阻止错误的进一步发展。任何事物都具有两面性,数据挖掘系统也是具有正反面的,在以上的叙述中,我们只认识到它有利的一面。数据挖掘工具既然能够充当数据库系统的保护者,它也可以被攻击者当做攻击数据库系统安全的强大破坏者。

2数据挖掘对数据库安全的潜在威胁和解决措施

2.1数据挖掘在推理和聚集攻击中对数据库安全造成的危害

数据库安全面临着众多的威胁和攻击,通过总结和分析发现推理和聚集攻击是面临的首要威胁,所谓的推理和聚集攻击是指当用户在数据库中实施查询,进而得到具体的返回信息,之后又从返回信息中推算出用户无权访问的信息。

为了研究出解决这个威胁的有效办法,经历了数十年的研究,虽然得到了一些成效,但是随着数据挖掘工具的出现,这个问题对数据库安全的威胁又更加严重了。因为在数据挖掘工具还没有出现之前,任何一个有推理攻击企图的人必须通过自己的能力对获得的数据进行分析,进而发现有价值的东西。随着数据挖掘工具的诞生,虽然它可以对数据库的查询结果进行简单、快速、高效的智能化数据分析和处理,帮助用户获取有价值的信息。但是,也方便了有推理攻击企图的人获得信息,为数据库安全产生更大的威胁。通常情况下聚集攻击和推理攻击都是由系统的合法用户发起的。攻击发生的详细过程如下:首先,由攻击者确定具体的推出信息,经过判断确定推理需要的信息,由此构造几个相关查询,然后利用合法用户身份登录进入数据库系统,发出查询指示获得系统返回结果,最后分析获得的系统响应,由此就可以顺利推断出攻击所需的信息。单一的叙述过程可能会觉得复杂,我们通过一个形象的例子来解释:假设某个企业的数据库中储存着员工的姓名、工作证号以及月工资,从表1、2可知,员工姓名和收入分开存放都是公开的,但是当两项信息放在一起时则需要保密的敏感信息,我们就假设保密的信息是员工的月收入,由于数据库系统不允许用户使用员工姓名获得员工工资,因此在存放时,信息被分成两张表来存放,其中一种是员工的工作证号和月收入,另外一张则是员工姓名和工作证号。当用户想获得某个指定的员工月收入信息时,可以通过两次访问获得所需信息,然后在获得的信息做有效结合就能够获得指定员工的月收入信息。

2.2基于推理控制器的数据库安全技术

推理攻击和聚集攻击的本质是计算机用户的应用需求的特点造成的,其查询语义可能导致信息泄露。通常情况下,用户只需要了解使用计算机进行处理的用户需求的应用背景,就可以根据数据库系统的查询结果获得用户期望隐藏的数据。

为了解决上述问题,许多学者对其进行了研究,本文基于前人的基础,提出了一种基于归纳和演绎逻辑相结合的防止推理和聚集攻击的方法,如图2所示。该方法基于安全约束的概念,在数据库管理系统中插入了一个推理引擎模块,推理引擎采用归纳逻辑,其主要的作用既是进行使用归纳规则,对用户查询的结果進行推理,以便判用户查询的数据是否违反数据库系统设定的安全约束,如果违反了系统安全策略,数据库系统将会阻止用户查询的数据流出系统,泄露信息。

推理引擎主要由一个推理控制器组成,该控制器可以查询数据库,数据库系统响应该控制器,该控制器可以根据数据库系统返回的查询结果进行归纳,将会得到一些启发规则,这些规则可能违反数据库安全约束,导致系统泄露一些敏感数据。通过对比,推理控制器能够发现是否存在违反安全约束的启发规则,如果存在,其就会通知数据库管理系统,系统管理员就会获得公开相关数据导致系统安全信息泄露,阻止系统输出用户查询数据。

3结论

随着数据挖掘技术的改进,数据挖掘工具对数据库安全带来了更多的威胁,具有更高的挑战性,本文提出的方法并不能完全防止数据库安全信息的泄露,但是,在未来时间内,通过诸多学者的共同努力,数据库安全必将得到长足发展,具有更高的安全防护能力。endprint

猜你喜欢
入侵检测数据挖掘数据库
基于并行计算的大数据挖掘在电网中的应用
一种基于Hadoop的大数据挖掘云服务及应用
基于GPGPU的离散数据挖掘研究