数据库安全监控最佳实践:使用DAM工具

来源:互联网 发布:水彩画在淘宝上卖 编辑:程序博客网 时间:2024/05/22 23:37

很少有比保护数据库及其存储的数据更加严峻的IT安全挑战了,尤其是针对最常用的数据库和Web应用程序的攻击:SQL注入。尽管关系型数据库管理系统(RDBMS)供应商、IT安全专家和应用程序开发人员都意识到了此类攻击,但问题依然存在,因为在不影响商业运作的前提下,这类攻击难以检测和阻止。

更严重的是,SQL注入是攻击者能够完全控制关系型数据库的攻击手段之一。关系型数据库结构复杂,允许多种应用程序同时读取或写入数据——每一种应用程序都支持多种业务功能——这使得我们难以比较关系型数据库的优劣。当攻击看起来就像是正常的数据库命令时,你需要做的就不仅仅是随意检查一下数据库操作事件了。

对于可能不熟悉这项技术的人来说,数据库活动检测(DAM)系统就是检测关系型数据库滥用的高级安全平台。DAM系统技术独特,能以近乎实时的速度分析数据库查询,区分正常的操作和攻击。DAM系统收集不同来源的信息,提供多种形式的高级分析和警告,甚至能直接中断恶意活动。没有其它的安全产品能以这种方式监测数据库的活动,或者提供DAM式的细化检查水平。

确定数据、事务的保护优先级

部署DAM的第一步是决定你想保护的内容。监测数据库有很多种方式,对每个事件都进行检测是不现实的,因为这样一来监测系统将比保护对象更加庞大。你需要了解什么样的数据或事务是重要的。有三种方法可以助你了解:

1、访问建立数据库的数据库管理员和应用程序开发者,因为他们通常都知道敏感数据的保存位置,也知道哪一类数据库支持关键业务功能。

2、使用数据发现和数据库检索器调查数据库内容。监测器最起码能够监测数据的写入和读取。作为附带功能,一些供应商还提供能够搜寻数据库内容的检索器。这些检测工具能够通过元数据和内容分析技术定位敏感数据,确定需要保护的数据。

3、观察SQL语句和数据库事务。大多数DAM系统在最开始的几周都是以“独立监测”(monitor-only)的模式运行的,因此公司能够逐渐了解数据库的运行状况。从本质上讲,你要给出应用程序使用数据库和常见查询样式的大概轮廓。然后你可以定义策略和实现方式,检测数据库滥用。

基于你的发现,你可以定义相关规则,允许哪些活动,并对可疑活动产生警告。

如何捕获数据库事件

现在你知道了何种事务是重要的,接下来你需要决定如何收集数据库事件。每一种数据库检测器都提供了多种收集数据的方法,每一种方法都各有优劣。

在数据库平台上安装代理很常见,因为代理能捕获所有SQL活动,在不影响数据库性能的前提下,有助于理解某次查询是否是恶意的。

本地审计功能可收集事件,但却不一定能收集到原始的SQL查询,开销也要大很多,影响数据库性能。

网络收集器则提供了一种更快更容易的收集SQL活动的方法,但会丢失管理员通过控制台进行的事务和活动。

代理是关键数据库事实上的安全工具。本地审计和网络监控则在非关键数据库上比较常见,但在特殊情况下使用得更多。

数据库安全的基本定义

现在,你已经在从关键数据库系统中收集事件,下一步是实现你的安全策略。DAM的工作方式是分析数据库查询,你可以通过很多选项设置对哪些语句进行检查,以及如何检查。数据库活动检测工具提供的基本功能有:

监测和查找

警告和报告

工作次序验证

捕获数据库滥用

SQL捕获(用于审计)

大多数政策执行的是数据库查询属性检查:用户是谁、用户正在浏览哪一列、用户使用何种应用程序、用户接触到的数据、操作时间等,这些通常都被用于定义安全策略。你为每一个属性分配特定值,当用户超过这些预定义的阈值时,监测系统就会产生警告。例如,你可能会想对这些情况产生警告:所有午夜之后的查询、三次失败的登录尝试、任何对信用卡资料的访问。

高级监控

数据库活动监测系统的能力在过去的几年里得到了极大的提高。过去只是纯粹的监测和警示,现在已经提供了一套可靠的阻止攻击、主动抵制滥用的方法。大多数DAM产品具有的高级功能有:

SQL注入监测

攻击阻止和虚拟补丁

特定应用程序用户认证

会话终止

行为监控和内部威胁检测



原文:http://www.hh010.com/database/html/33-3/3983.htm

0 0
原创粉丝点击