硬核干货——《中小企业 AI 实战指南》免费下载! 了解详情
写点什么

浅淡关系数据库的安全、保护与检测

  • 2019-10-30
  • 本文字数:2029 字

    阅读完需:约 7 分钟

浅淡关系数据库的安全、保护与检测

导读: 关系数据库是采用关系模型作为数据组织方式的数据库。关系数据库的特点在于它将每个具有相同属性的数据独立地存储在一个表中。对任一表而言,用户可以新增、删除和修改表中的数据,而不会影响表中的其他数据。关系数据库产品一问世,就以其简单清晰的概念,易懂易学的数据库语言,深受广大用户喜爱。目前,计算机大批量数据存储的安全问题、敏感数据的防窃取和防篡改问题越来越引起人们的重视。数据库系统作为计算机信息系统的核心部件,数据库文件作为信息的聚集体,其安全性是非常重要的。因此对数据库数据和文件进行安全保护是非常必要的。Imperva 作为业界认可的网络安全领导者,为我们阐述了如何保护关系数据库的安全。


关系数据库安全最常见的危害方式是用户权限滥用、弱身份验证、弱审计和弱备份策略。处理这些潜在妥协的一些关键考虑因素如下。

用户权限滥用

用户权限控制用户可以访问哪些资源(例如,资产、应用程序、数据、设备、文件、网络、系统等),以及用户可以对这些资源执行哪些操作。


为了简化用户管理流程,确保用户可以在不触发安全警报或被禁止使用必要资产的情况下完成工作,往往将不受限制或将过多的用户权限广泛分配给组、角色和个人。


结果,如果用户拥有不受限制或过多的权限,数据库的安全性可能会受到危害:


  • 对数据库进行未经授权的更改,包括添加、修改或删除数据。

  • 查看机密或敏感数据,包括知识产权、代码。法律数据,以及员工和客户的个人信息,即使这些数据并非他们工作所必需的。

  • 通过查看、修改或删除审计日志来伪造警报调查。


解决用户权限滥用的潜在问题涉及到预防和检测策略。建议的策略包括以下内容。

预防

  • 实施强有力的用户权限管理。

  • 强制职责分离

  • 考虑将数据库放在位于专用网络的服务器上,并在操作系统、网络、服务器、数据库、表和 / 或行级别实施多级访问控制。


注: 实施多级访问控制需要发现数据库位于何处,数据库中存储了哪些数据,然后按类型、敏感性和价值 / 风险级别对这些数据进行分类。它还需要创建细粒度的用户特权配置文件,而不是宽泛的用户权限配置文件。

检测

  • 进行频繁的特权用户监视,包括审核数据库管理员或其他特权用户输入的所有命令。

  • 频繁进行敏感数据访问审计。

弱认证

薄弱或无效的密码策略、共享用户账户、糟糕的用户登录凭据的加密和 / 或被盗,以及允许直接访问 DBMS/RDMS 来规避访问控制,都可能会危及数据库的安全。


解决弱认证问题涉及到预防和检测策略。建议的策略包括以下内容。

预防

  • 重新配置应用程序系统(例如 PeopleSoft 和 SAP),使它们不能直接连接到数据库,因为身份验证是基于应用程序的凭据,而不是用户的凭据。结果就是,操作系统和数据库都不知道用户的身份,并且无法对特定用户执行访问控制或跟踪操作。

  • 禁用应用程序系统的通用用户账户和默认空密码。取而代之的是,使用不同的名称创建新的用户配置文件 / 账户。

  • 禁用过期密码和回收的密码。

  • 在 DBMS/RDMS 中实施密码复杂性和时效性。

  • 对密码进行掩码操作。

  • 对用于访问数据库的用户和设备进行身份验证(尤其是自带设备)。

  • 基于功能单元和角色,创建访问数据库的典型模式的行为基线配置文件或“白名单”,然后重点关注风险最高的用户、客户端主机和服务器,这样安全团队就能够优先调查任何异常情况。

检测

  • 创建警报,然后调查失败的登陆尝试和账户锁定。

  • 每当对象被访问时,对数据对象进行审核。

  • 审核由直接访问数据的用户编写的所有命令。

弱审计

很多时候,审计被人们认为既复杂,又耗时。因此,组织可能无法实施强有力的审计计划。但是,特定行业和监管要求都需要进行审计来确定合规性。审计有助于确保及时调查和应对异常情况。


改进审计的建议策略包括以下内容。

预防

  • 定义需要审计哪些事务,例如登录失败、共享账户和使用不存在的用户名、在非正常时间或使用不同的用户名但使用相同设备的登陆尝试。

  • 进行频繁的特权用户监控,包括审核数据库管理员或其他特权用户输入的所有命令。

  • 进行频繁的敏感数据访问审核。

  • 强制职责分离,使具有不受限制用户权限的用户不能修改或删除审计日志。

  • 确保数据库管理员没有超级用户或不受限制的权限。

检测

  • 为审计日志中的异常创建警报,但要注意警报疲劳

弱备份策略

不完整或失败的备份、失窃或未加密备份介质的不当存储都可能会危及数据库的安全。


此外,数据库事务记录在写入数据库的事务日志和单独的文件中。如果数据库损坏,那么事务日志也会损坏。这会造成数据完整性和恢复的问题。


加强备份的一些策略包括以下内容。

预防

  • 定义适合组织的备份和恢复策略。

  • 在最小恢复间隔内更新事务日志。

  • 在事务日志被截断之前对其进行备份。

  • 加密备份的日志文件。

  • 以接近实时的方式将备份复制到单独的服务器。

  • 确保哦对存储备份介质的位置进行强访问控制(包括物理和虚拟的方式)。

检测

  • 执行运行状况检查,如备份验证和还原验证,以检查是否存在可能的损坏。


作者介绍:


Imperva,是一家从事保护客户的数据和应用程序的公司,该公司的使命是保护客户的重要资产免受网络犯罪粉丝不断变化的攻击。


原文链接:


Relational Database Security


2019-10-30 08:081831

评论

发布
暂无评论
发现更多内容

变量,常量以及与其他语言的差异

乌龟哥哥

三周年连更

Python的常见数据结构

timerring

Python

速通字节!阿里p8耗时6个月打造的java面试手册,看到直呼“面试有手就行”

Java你猿哥

Java spring 微服务 JVM 多线程

MATLAB与Simulink

袁袁袁袁满

三周年连更

MySQL深分页问题原理与三种解决方案

Java MySQL 数据库

自动化与DevOps

阿泽🧸

自动化 三周年连更

Java8 lambda 表达式 forEach 如何提前终止?

Java你猿哥

Java ssm java8 foreach

我懵了,如果要存 IP 地址,用什么数据类型比较好?

Java你猿哥

Java MySQL 数据库 ssm IP

SpringBoot核心配置全面总结

小小怪下士

Java 程序员 后端 springboot

https和http有什么区别?

海拥(haiyong.site)

三周年连更

围绕应用的云原生转型建设

穿过生命散发芬芳

云原生 三周年连更

MySQL面试八股文:索引篇

Java你猿哥

Java MySQL ssm 索引 八股文

字节速通!这份软件测试八股文还怕不能拿offer?你值得拥有

Java你猿哥

MySQL 面试 软件测试 计算机 八股文

太强了!牛客网开源1240页字节算法实录,无意中掀起GitHub刷题热潮

Java 数据结构 算法 LeetCode

Java 数组在内存中的结构是怎样的?数组访问、遍历、复制、扩容、缩容如何编写代码?

Java架构历程

Java 数组 三周年连更

一文看懂:性能监控神器JavaMelody

后台技术汇

三周年连更

Golden Gate(GGX)开发者见解与创新DeFi应用

股市老人

Bash脚本中的Sleep命令到底有何妙用?

wljslmz

三周年连更

为什么《魂斗罗》只有128KB却可以实现那么长的剧情?

Java你猿哥

Java 编程 程序员 汇编语言 优化技术

基于Alpine制作Tomcat的Docker镜像

清康

什么是 Intelligence Enterprise 的 Business network?

汪子熙

人工智能 机器学习 数字化转型 三周年连更

分布式事务的21种武器 - 4

俞凡

架构 云原生

Redis数据类型及底层大剖析

Java 数据库 redis 缓存

分布式事务的21种武器 - 5

俞凡

架构 云原生

程序性能提高了5倍!开源阿里500页的Java程序优化笔记

Java你猿哥

Java 面试 性能优化 Java虚拟机 Java性能优化

程序员如何应对失业? | 社区征文

石云升

职业规划 三周年征文 三周年连更

面试不再慌!苦学这份2023最全的Java性能优化实战笔记,已涨17k

Java你猿哥

Java 面试 JVM 多线程 Java性能优化

运行第一个程序Hello world

鸿蒙之旅

OpenHarmony 三周年连更

面试官:一千万的数据,你是怎么查询的?

浅淡关系数据库的安全、保护与检测_数据库_The Hacker News_InfoQ精选文章