让“数据库审计”服务保卫你的数据库

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 据Verizon 2012年的数据泄露调查分析报告和对发生的信息安全事件技术分析,总结出信息泄露呈现两个趋势:(1)黑客通过B/S应用,以Web服务器为跳板,窃取数据库中数据;传统解决方案对应用访问和数据库访问协议没有任何控制能力,比如:SQL注入就是一个典型的数据库黑客攻击手段。

据Verizon 2012年的数据泄露调查分析报告和对发生的信息安全事件技术分析,总结出信息泄露呈现两个趋势:
(1)黑客通过B/S应用,以Web服务器为跳板,窃取数据库中数据;传统解决方案对应用访问和数据库访问协议没有任何控制能力,比如:SQL注入就是一个典型的数据库黑客攻击手段。
(2)数据泄露常常发生在内部,大量的运维人员直接接触敏感数据,传统以防外为主的网络安全解决方案失去了用武之地。

数据库在这些泄露事件成为了主角,这与我们在传统的安全建设中忽略了数据库安全问题有关,在传统的信息安全防护体系中数据库处于被保护的核心位置,不易被外部黑客攻击,同时数据库自身已经具备强大安全措施,表面上看足够安全,但这种传统安全防御的思路,存在致命的缺陷。

常见的数据库攻击方法

下面是六大数据库攻击:

  1.强力(或非强力)破解弱口令或默认的用户名及口令
  2.特权提升
  3.利用未用的和不需要的数据库服务和和功能中的漏洞
  4.针对未打补丁的数据库漏洞
  5.SQL注入
  6.窃取备份(未加密)的磁带

下面分别分析一下:

对弱口令或默认用户名/口令的破解

  以前的Oracle数据库有一个默认的用户名:Scott及默认的口令:tiger;而微软的SQL Server的系统管理员账户的默认口令是也是众所周知。
  但即使是唯一的、非默认的数据库口令也是不安全的。Sentrigo的 Markovich 说,“你总可以在客户那里找到弱口令和易于猜测的口令。通过强力破解或只试着用不同的组合就可以轻易地找到这种口令。”
  口令破解工具有很多,并且通过Google搜索或sectools.org等站点就可以轻易地获得,这样就会连接到Cain 、 Abel或John theRipper等流行的工具。

特权提升

  有几种内部人员攻击的方法可以导致恶意的用户占有超过其应该具有的系统特权。而且外部的攻击者有时通过破坏操作系统而获得更高级别的特权。应用安全公司的销售副总裁Ted Julian说,“这是一种常见的威胁因素。”
  特权提升通常更多地与错误的配置有关:一个用户被错误地授与了超过其实际需要用来完成工作的、对数据库及其相关应用程序的访问和特权。
  Sentrigo的Markovich近来能够通过一个拥有少量特权的用户账户攻入一个客户的数据库。Markovich说,“他们要求我攻入其数据库。我找到了一个少量特权的用户口令,然后就进入了系统。然后我检查了他的特权,他拥有对数据库的只读性访问,因此一个少量特权的用户可以访问读取数据库内的任何表,包括信用卡信息、个人信息。因此,我说:‘我不需要攻入数据库。’”

利用未用的和不需要的数据库服务和功能中的漏洞

  当然,一个外部的攻击者会寻找较弱的数据库口令,看其潜在的受害人是否在运行其Oracle数据库上运行监听程序(Listener)功能。监听程序可以搜索出到达Oracle数据库的网络连接,并可以转发此连接,这样一来就会将用户和数据库的链接暴露出来。
  只需采用一些Google hacking攻击,一位攻击者就可以搜索并找到数据库服务上暴露的监听程序。Markovich 说,“许多客户并没有在监听程序上设置口令,因此,黑客就可以搜索字符串并找出Web上活动的监听程序。我刚才搜索了一下,发现有一些可引起人们注意的东西,如政府站点。这确实是一个大问题。”
  其它的特性,如操作系统和数据库之间的钩子可以将数据库暴露给攻击者。这种钩子可以成为达到数据库的一个通信链接。Yuhanna说,“在你链接库和编写程序时…那将成为与数据库的界面,”你就是在将数据库暴露出去,并可能在无认证和无授权的情况下让黑客进入内部。

针对未打补丁的数据库漏洞

  好消息是Oracle和其它的数据库厂商确实在为其漏洞打补丁。坏消息是单位不能跟得上这些补丁,因此它们总是处于企图利用某种机会的老谋深算的攻击者控制之下。
  数据库厂商总是小心翼翼地避免披露其补丁程序所修正的漏洞细节,但单位仍以极大的人力和时间来苦苦挣扎,它会花费人力物力来测试和应用一个数据库补丁。例如,给程序打补丁要求对受补丁影响的所有应用程序都进行测试,这是项艰巨的任务。
  而且一些黑客站点将一些已知的数据库漏洞的利用脚本发布了出来,他说。即使跟得上补丁周期有极大困难,单位也应当打补丁。他说,例如,Oracle4月15日的补丁包含了数据库内部的17个问题。这些和其它的补丁都不应当掉以轻心。每一个问题都能够破坏你的数据库。

SQL注入

SQL注入式攻击并不是什么新事物了,不过近来在网站上仍十分猖狂。近来这种攻击又侵入了成千上万的有着鲜明立场的网站。

虽然受影响的网页和访问它的用户在这些攻击中典型情况下都受到了重视,但这确实是黑客们进入数据库的一个聪明方法。数据库安全专家们说,执行一个面向前端数据库Web应用程序的SQL注入攻击要比对数据库自身的攻击容易得多。直接针对数据库的SQL注入攻击很少见。

在字段可用于用户输入,通过SQL语句可以实现数据库的直接查询时,就会发生SQL攻击。也就是说攻击者需要提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据。

除客户端之外,Web应用程序是最脆弱的环节。有些情况下,如果攻击者得到一个要求输入用户名和口令的应用程序的屏幕,而且应用程序并不检查登录的内容的话,他所需要做的就是提供一个SQL语句或者数据库命令,并直接转向数据库。

窃取(未加密的)备份磁带

  如果备份磁带在运输或仓储过程中丢失,而这些磁带上的数据库数据又没有加密的话,一旦它落于罪恶之手,这时黑客根本不需要接触网络就可以实施破坏。
  但这类攻击更可能发生在将介质销售给攻击者的一个内部人员身上。只要被窃取的或没有加密的磁带不是某种Informix或HP-UX 上的DB2等较老的版本,黑客们需要做的只是安装好磁带,然后他们就会获得数据库。

数据库审计

什么是数据库审计

数据库审计服务是一款专业、主动、实时监控数据库安全的审计产品。

数据库审计服务将数据库监控、审计技术与公共云环境相结合,支持对阿里云平台中的RDS云数据库、ECS自建数据库进行审计,针对数据库SQL注入、风险操作等数据库风险行为进行记录与告警,形成对核心数据的安全防护,为您的云端数据库提供完善的安全诊断、维护、管理功能。

数据库审计服务,可针对数据库SQL注入、风险操作等数据库风险操作行为进行记录与告警。支持RDS云数据库、ECS自建数据库,为云上数据库提供安全诊断、维护、管理能力。

RDS数据库审计
通过在访问数据库的应用系统服务器上部署数据库审计Agent,获取访问日志数据用于日志审计,实现对RDS云数据库的审计。
image

ECS自建数据库审计
通过在ECS中安装数据库审计Agent,获取数据库操作日志,实现对ECS自建数据库的审计。支持目前流行的各类数据库,保证数据审计兼容、有效。
image

数据库审计功能

1.用户行为发现审计

  • 关联应用层和数据库层的访问操作
  • 可溯源到应用者的身份和行为

2.多维度线索分析

  • 风险和危害线索:高中低的风险等级、SQL注入、黑名单语句、违反授权策略的SQL行为
  • 会话线索:根据时间、用户、IP、应用程序、和客户端多角度分析
  • 详细语句线索:提供用户、IP、客户端工具、访问时间、操作对象、- SQL操作类型、成功与否、访问时长、影响行数等多种检索条件

3.异常操作、SQL注入、黑白名单实时告警

  • 异常操作风险:通过IP、用户、数据库客户端工具、时间、敏感对象、返回行数、系统对象、高危操作等多种元素细粒度定义要求监控的风险访问行为
  • SQL注入:系统提供了系统性的SQL注入库,以及基于正则表达式或语法抽象的SQL注入描述,发现异常立即告警
  • 黑白名单:提供准确而抽象的方式,对系统中的特定访问SQL语句进行描述,使这些SQL语句出现时能够迅速报警

4.针对各种异常行为的精细化报表

  • 会话行为:登录失败报表、会话分析报表
  • SQL行为:新型SQL报表、SQL语句执行历史报表、失败SQL报表
  • 风险行为:告警报表、通知报表、SQL注入报表、批量数据访问行为报表
  • 政策性报表: 塞班斯报表
目录
相关文章
|
1天前
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
20 3
|
1天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
11 2
|
12天前
|
存储 NoSQL MongoDB
基于阿里云数据库MongoDB版,微财数科“又快又稳”服务超7000万客户
选择MongoDB主要基于其灵活的数据模型、高性能、高可用性、可扩展性、安全性和强大的分析能力。
|
3天前
|
SQL 关系型数据库 数据库连接
"Nacos 2.1.0版本数据库配置写入难题破解攻略:一步步教你排查连接、权限和配置问题,重启服务轻松解决!"
【10月更文挑战第23天】在使用Nacos 2.1.0版本时,可能会遇到无法将配置信息写入数据库的问题。本文将引导你逐步解决这一问题,包括检查数据库连接、用户权限、Nacos配置文件,并提供示例代码和详细步骤。通过这些方法,你可以有效解决配置写入失败的问题。
10 0
|
2月前
|
SQL JavaScript 关系型数据库
Node服务连接Mysql数据库
本文介绍了如何在Node服务中连接MySQL数据库,并实现心跳包连接机制。
36 0
Node服务连接Mysql数据库
|
3月前
|
SQL 数据管理 关系型数据库
SQL与云计算:利用云数据库服务实现高效数据管理——探索云端SQL应用、性能优化、安全性与成本效益,为企业数字化转型提供全方位支持
【8月更文挑战第31天】在数字化转型中,企业对高效数据管理的需求日益增长。传统本地数据库存在局限,而云数据库服务凭借自动扩展、高可用性和按需付费等优势,成为现代数据管理的新选择。本文探讨如何利用SQL和云数据库服务(如Amazon RDS、Google Cloud SQL和Azure SQL Database)实现高效的数据管理。通过示例和最佳实践,展示SQL在云端的应用、性能优化、安全性及成本效益,助力企业提升竞争力。
59 0
|
4月前
|
存储 关系型数据库 分布式数据库
PolarDB产品使用问题之出现大量服务连不上数据库,是什么导致的
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
18天前
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
77 6
|
16天前
|
存储 关系型数据库 MySQL
Mysql(4)—数据库索引
数据库索引是用于提高数据检索效率的数据结构,类似于书籍中的索引。它允许用户快速找到数据,而无需扫描整个表。MySQL中的索引可以显著提升查询速度,使数据库操作更加高效。索引的发展经历了从无索引、简单索引到B-树、哈希索引、位图索引、全文索引等多个阶段。
50 3
Mysql(4)—数据库索引
|
4天前
|
存储 关系型数据库 MySQL
MySQL vs. PostgreSQL:选择适合你的开源数据库
在众多开源数据库中,MySQL和PostgreSQL无疑是最受欢迎的两个。它们都有着强大的功能、广泛的社区支持和丰富的生态系统。然而,它们在设计理念、性能特点、功能特性等方面存在着显著的差异。本文将从这三个方面对MySQL和PostgreSQL进行比较,以帮助您选择更适合您需求的开源数据库。
19 4