如今,企业严重依赖数据,其中很大一部分数据由敏感信息组成。随着组织成为越来越敏感信息的保管人,数据泄露的频率也相应增加。在某些情况下,数据泄露的起源是在组织之外,黑客通过破坏帐户成功逃避组织; 而在其他情况下,数据泄露涉及内部参与者,打算损害组织并可能拥有合法凭据的恶意员工或承包商。
根据2018年的Verizon数据泄露调查报告中,涉及数据泄露的最重要资产是数据库服务器(见图1)。这并不奇怪,因为大量的敏感数据存储在数据库中,这就是数据库安全性如此重要的原因。
问题是,更现实的目标不是试图阻止数据泄露,而是在早期发现漏洞。早期违规检测比违规预防更实用的原因通常是,恶意用户已经在组织内部,滥用其访问敏感数据的合法权限。为了快速检测潜在的数据泄露,我们需要能够识别违规的“早期迹象”。另一种方法是尝试检测数据泄露数月甚至数年。
早在2011年,洛克希德·马丁就将“网络杀伤链”定义为识别和预防网络入侵攻击的模型。它定义了攻击者在典型的网络攻击中采取的步骤(图2)。
网络杀伤链的七个步骤如下:
- 侦察 - 获取尽可能多的有关目标的信息,选择目标。
- 武器化 - 选择最适合该任务的工具。
- 交付 - 在目标上使用武器化捆绑发起攻击。
- 利用漏洞 - 利用漏洞在受害者系统中执行代码。
- 安装 - 安装工具接入点。
- 命令和控制(C&C) - 启用发送远程命令以持久访问目标网络。
- 目标行动 - 采取行动。例如:数据销毁,渗透或加密。
我们已经调整了网络杀戮链以专门针对数据泄露事件,提供了攻击者已经在组织内部拥有访问权限的实例(图3)。
被招募或意外感染,被外部黑客攻陷 ,攻击者继续进行侦察阶段; 这个阶段类似于原始网络杀戮链中的侦察阶段,其目标是尽可能多地获取有关数据或资产的信息。在选择目标并获取足够的信息后,在开发阶段。攻击者将尝试获取对数据的访问权限。这可以通过升级其特权来实现。授予访问权限后,攻击者将尝试获取敏感数据。此阶段可以是大型文件下载或对敏感数据的特定访问。最后一步是从组织中提取数据。
保护数据库中的数据:纵深防御
深度防御原则是分层安全性可以改善您的整体安全状况。如果攻击导致一个安全机制失败,则其他机制仍可提供保护系统所需的安全性。
为了更好地保护数据库中的数据,您需要在潜在攻击链的每一步识别可疑活动。这样,如果我们未能在特定步骤检测到攻击,我们仍有机会在以下步骤中捕获它。最好尽早发现攻击,最好是在恶意或受到攻击的个人获取数据访问权之前。
侦察阶段:可疑系统表扫描
系统表存储数据库的元数据。这些表包含有关所有对象,数据类型,约束,配置选项,可用资源,有效用户及其权限的信息等信息。我们希望攻击者在攻击的侦察阶段访问系统表,以便探索组织中的数据库,甚至更改数据库权限。使用系统表访问检测侦察攻击的挑战是最少量的误报警,其依赖于合法用户定期访问系统表以执行其临时任务。
为了成功执行此任务,我们将机器学习逻辑与领域知识相结合,并将大量源和提示相关联,以形成整体画面。区分对敏感系统表的访问和对非敏感系统表的访问。
利用大量的性能分析周期来研究不同类系统表的日常访问模式(如图4所示)。这些周期包括:
- 用户正常活动 - 了解用户通常如何操作和访问系统表;
- 数据库正常活动 - 了解组织内的用户如何访问特定数据库中的系统表;
- 组织正常活动 - 了解在整个域中访问敏感系统表的方式;
- 社区正常活动 - 使用来自不同客户的系统表访问模式的数据,以了解全局正常系统表活动。
我们还利用其他提示来识别对敏感表的合法访问,将合法用户(如DBA)与攻击者分开。通过分析他们尝试访问系统表的数据库数量,在同一时间范围内组织中数据库失败的登录次数等来识别恶意用户。
我们可以看到攻击者在攻击当天访问了几个数据库中的新系统表。将这些信息与他们在攻击当天也无法登录某些数据库的事实相结合,表明存在可疑活动。
攻击者将继续尝试从组织中窃取敏感数据,这是一个给定的。我们的目标是在任何实际的伤害或任何敏感数据暴露之前尽早发现潜在的漏洞。发现可疑的系统表访问是在侦察阶段捕获攻击者的关键步骤,他们仍然试图找到他们的方式。如果在侦察阶段未检测到攻击,仍然可以识别数据泄露攻击链中的异常,使用深度防御方法。借助领域知识专业知识和机器学习算法,此方法允许您在数据泄露的所有阶段检测威胁。